Jak korzystać z najlepszych narzędzi hakerskich systemu Linux?

Systemy operacyjne oparte na Linuksie i Unixie są podstawą dziedzin bezpieczeństwa informacji, bezpieczeństwa sieci, kryptografii itp. Są one wyposażone w szeroką gamę narzędzi przeznaczonych do celów bezpieczeństwa cybernetycznego.

Przyjrzyjmy się trzem takim narzędziom: Aircrack-ng, Kuba Rozpruwacz i Radare2.

Apartament typu Aircrack-ng

Pakiet Aircrack-ng jest prawdopodobnie najczęściej używanym zestawem narzędzi do wykrywania sieci Wi-Fi i przechwytywania haseł. Służy do łamania haseł do sieci bezprzewodowych protokołu IEEE 802.11, które są w większości chronione przez standardy Wifi Protected Access (WPA) lub Wifi Protected Access 2 (WPA2) i uwierzytelniane metodą uwierzytelniania Pre-Shared Key (PSK).

Oferuje oddzielne programy do monitorowania stanu urządzeń sieciowych, przechwytywania pakietów i zrzucania plików, łamania haseł itp.

Zauważ, że złamanie WPA/WPA2 przy użyciu kryptoalgorytmów zostało uznane przez badaczy za prawie niemożliwe. Dlatego sposobem na złamanie WPA/WPA2 przez programy takie jak aircrack-ng jest Brute Force i wymaga słownika haseł, aby go złamać. Oznacza to, że może złamać hasło tylko wtedy, gdy hasło jest słowem słownikowym.

Możesz łatwo zainstalować Aircrack-ng w swoim systemie za pomocą skryptu instalacyjnego dostarczonego przez packagecloud.io. Otwórz terminal i uruchom następujące polecenia w zależności od typu systemu operacyjnego Linux.

W dystrybucjach opartych na Debianie, uruchom następujące polecenie:

curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.deb.sh | sudo bash

Dla Red-hat Package Manager (RPM), uruchom następujące polecenie:

curl -s //packagecloud.io/install/repositories/aircrack-ng/release/script.rpm.sh | sudo bash

Teraz spróbujmy złamać hasło lokalnej sieci Wi-Fi za pomocą Aircrack-ng.

Przede wszystkim uruchom polecenie iwconfig aby znaleźć nazwę interfejsu sieci bezprzewodowej.

iwconfig

Tutaj, wlp2s0 to nazwa mojego interfejsu bezprzewodowego. ESSID, czyli nazwa sieci to „tmp”, czyli nazwa sieci Wifi, z którą jestem połączony.

Użyjemy airmon-ng polecenie do włączenia interfejsu monitora sieciowego wlp2s0.

sudo airmon-ng start wlp2s0

Poszukaj linii na końcu, aby znaleźć interfejs trybu monitora. W powyższym przykładzie jest to pon0. Teraz zaczniemy przechwytywać pakiety sieciowe, uruchamiając airodump-ng na pon0.

sudo airodump-ng mon0 -w log

Wyświetla monitor pakietów sieciowych przechwyconych z różnych sieci. ten -w log część dotyczy zapisywania pakietów sieciowych w plikach dziennika. Prefiksem plików dziennika będzie część określona po -w, w tym przypadku „log”.

Aby program przechwycił klucz skrótu hasła, w sieci musi nastąpić uzgadnianie WPA, tj. użytkownik powinien spróbować się z nią połączyć. Użytkownik może sam odłączyć swoje Wifi i ponownie się z nim połączyć. W prawym górnym rogu teraz informuje, że uścisk dłoni WPA został przechwycony.

Teraz naciśnij Ctrl + C zakończyć zrzut. Możesz zobaczyć wygenerowane pliki dziennika w bieżącym folderze.

Następnym i ostatnim krokiem jest uruchomienie aircrack-ng ze słownikiem, aby zobaczyć, które słowo pasuje do przechwyconego klucza mieszającego z uścisku dłoni.

aircrack-ng log-01.cap -w tmpdict.txt 

Tutaj log-01.cap czy plik dziennika jest generowany przez airodump-ng polecenie i tmpdict.txt to plik słownika. Kilka dużych słowników jest dostępnych online, które można pobrać i używać tutaj.

Aby wybrać sieć docelową, wprowadź numer indeksu sieci z listy sieci pokazanej na ekranie.

Jeśli klucz zostanie dopasowany ze słownika, zatrzyma się i wyświetli następujący komunikat.

Oczywistym jest, że w przypadku większych plików słownikowych uruchomienie programu zajmie więcej czasu, ponieważ sprawdza każdy wpis w słowniku.

Jak wspomniano wcześniej, hasło można złamać tylko wtedy, gdy znajduje się w pliku słownika. Zabezpieczenie WPA jest na tyle silne, że użycie dowolnego algorytmu kryptograficznego nie umożliwi złamania hasła. Dlatego dobrą praktyką jest posiadanie silnego, długiego hasła z wieloma znakami specjalnymi na urządzeniu Wi-Fi, tak aby wszelkie działania związane z łamaniem haseł nigdy się nie powiodły.

Jan Rozpruwacz

John the Ripper to narzędzie używane do łamania słabych haseł Unix. Jest to bardzo łatwe w użyciu narzędzie wywoływane w plikach haseł. Działa w trzech trybach.

Tryb pojedyńczy

Sprawdza wszystkie pola GECOS pod kątem hasła, tj. Sprawdź hasło w informacjach o koncie użytkownika; nazwa użytkownika, imię, nazwisko itp.

sudo john -- pojedynczy /etc/shadow

Tryb listy słów

Sprawdza hasło przy każdym wpisie z pliku listy słów (słownika).

sudo john --wordlist=passlist.txt /etc/shadow

Tutaj hasło użytkownika „user3” to „admin”. John był w stanie go złamać, ponieważ fraza „admin” była obecna w pliku passlist.txt.

Tryb przyrostowy

Sprawdź wszystkie możliwe kombinacje dla skonfigurowanego zakresu. Domyślnie uwzględnia wszystkie znaki w zestawie znaków ASCII i wszystkie długości od 0 do 13. Nie trzeba dodawać, że w zależności od skonfigurowanego zakresu, ten tryb może zająć dużo czasu.

Konfigurację do tego można zmienić w /etc/john/john.conf plik.

sudo john -- przyrostowe /etc/shadow

Radar2

Radare2 (alias r2) to narzędzie do inżynierii wstecznej dla Linuksa. Może deasemblować, debugować wykonywalny plik binarny, z ogromną listą opcji do manipulowania danymi w czasie wykonywania.

Zobaczmy, jak zdeasemblować bardzo mały program w C za pomocą r2. Zauważ, że do używania narzędzia wymagane jest podstawowe zrozumienie języka asemblera.

Najpierw utwórz mały program w C w vimie lub dowolnym edytorze.

/*test.c*/ #include int main() { int i = 0; printf("%d\n", i); zwróć 0; }

Jak widać, wszystko, co robi ten program, to przechowywanie cyfry 0 w zmiennej i dostęp do zmiennej, aby ją wydrukować.

Teraz skompilujemy program.

gcc test.c -o test

W bieżącym katalogu tworzony jest plik wykonywalny o nazwie „test”. Uruchom go, aby zobaczyć wyjście „0”.

./test

Zainstalujmy teraz r2. Nazwa pakietu w Ubuntu i podobnych dystrybucjach to radare2.

sudo apt zainstaluj radare2

Notatka: W przypadku starszych wersji Ubuntu (wersja 14.04 i starsza) musisz użyć apt-get powinno być używane zamiast trafny.

Uruchomimy teraz wiersz polecenia r2 z naszym plikiem wykonywalnym „test”.

test r2

Aby uzyskać listę podkomend, wpisz ?. Np. aby uzyskać listę podkomend dla polecenia a, Wchodzić a?

a?

Uruchomimy podkomendę aaa, który przeanalizuje cały plik binarny. Nic nie wypisze. Ale po przeanalizowaniu pliku binarnego możemy użyć P? podkomendy do demontażu kodu.

Następnie przechodzimy do Główny funkcja programu. Każdy wykonywalny program C ma Główny funkcjonować jako jego punkt wyjścia.

s główny

Widać, że prefiks zachęty zmienił aktualny adres pamięci, tzn. program jest teraz wyszukiwany pod adresem funkcji Główny.

Następnie używamy podkomendy pdf, który wypisze deasemblację funkcji. Nazywamy to z sym.main, która jest nazwą głównej funkcji w asemblerze.

pdf sym.main

Jak widać na powyższym zrzucie ekranu, mamy kompletny demontaż naszego programu w C. Możemy teraz przeanalizować, co robi program, czytając asembler.

Na przykład, mov dword [rbp-0x4], 0x0 to przypisanie wartości (0) do komórki pamięci rbp – wskaźnik bazowy, 0x4 — Rozmiar pamięci wymagany dla liczby całkowitej.

Mamy zadzwoń do sym.imp.printf, który wypisze zawartość rejestru tak, czyli wartość 0.

Istnieje wiele innych opcji manipulowania i debugowania przepływu programu w r2. Możesz wypróbować inne opcje, które są pokazane za pomocą ? Komenda. Aby zapisać dane wyjściowe dziennika lub dezasemblacji do pliku, możesz przesłać dane wyjściowe w następujący sposób:

pdf główna > główna.s

To był przegląd niektórych z najczęściej używanych narzędzi hakerskich w Linuksie. Jeśli uznałeś tę stronę za pomocną, udostępnij ją w swoich ulubionych społecznościach internetowych.