Dziś pokażę Wam dokładnie jak włamać się do systemu operacyjnego lub aplikacji internetowej, korzystając z metod opisanych w popularnych filmach o hakerach. Sceny te często przedstawiają osobę siedzącą przed komputerem, która szuka słabych punktów i nagle zgaduje hasło, uzyskując pełną kontrolę nad ofiarą.
Czym jest atak brute force?
Jedną z najprostszych metod ataków na systemy operacyjne, aplikacje czy serwery internetowe nazywa się brute force. Polega on na prostym procesie zgadywania haseł poprzez testowanie kolejnych kombinacji znaków dopóki nie znajdziemy tej poprawnej.
Przygotowanie słownika hasł
Aby skutecznie przeprowadzić taki atak, musimy pomyśleć o możliwych hasłach i wypisać je na liście. Możemy używać prostych kombinacji takich jak admin123 czy 1234, ale gdy wyczerpijemy te opcje, potrzebujemy bardziej zaawansowanych narzędzi.
Najlepszym rozwiązaniem jest skorzystanie z gotowego słownika zawierającego najpopularniejsze hasła używane przez użytkowników. Tego typu listy są dostępne na wielu stronach internetowych i pozwalają szybko przejść do testowania haseł bez konieczności ich ręcznego tworzenia.
Czy można włamać się ręcznie?
Może się wydawać, że atak brute force da się przeprowadzić klawiaturą w trybie manualnym. W skrajnych przypadkach jest to możliwe, ale proces ten byłby niezwykle czasochłonny i nieoptymalny dla hakerów poszukujących szybkich rezultatów.
Dlatego wszystkie działania należy zautomatyzować przy użyciu specjalistycznego oprogramowania. Dzięki temu narzędzia mogą testować tysiące kombinacji w krótkim czasie, co czyni proces włamania trywialnym dla doświadczonego atakującego.
Przygotowanie środowiska laboratoryjnego
Zanim przejdziemy do konkretów, musimy zaznaczyć ważne zastrzeżenie. Wszystkie pokazywane techniki służą wyłącznie celom naukowym i edukacyjnym. Naszym celem jest wyedukowanie Was w zakresie cyberbezpieczeństwa oraz pokazanie, jak przeciwstawiać się atakom.
Nie używajcie tych metod do eksploatacji ludzi czy niszczenia cudzych systemów bez zgody właściciela. Pamiętajcie, że wiedza o tym, jak włamać się do systemu, jest równoważna z wiedzą o tym, jak go zabezpieczyć.
Rozpoznawanie infrastruktury
Zaczynamy od sprawdzenia informacji o naszym adresie IP oraz celu ataku. W przypadku testów laboratoryjnych używamy maszyn pobranych ze stron typu WHub i zainstalowanych na infrastrukturze Proxmox.
Pingując cel, sprawdzamy czy odpowiada on na pakiety sieciowe. Jeśli TTL wynosi 63 zamiast standardowych 64, oznacza to, że system jest najprawdopodobniej oparty o jądro Linux lub Unix, co daje nam pierwszą wskazówkę dotyczącą typu systemu.
Użycie NMAP do skanowania portów
Najłatwiejszym sposobem na przeprowadzenie rozpoznania infrastruktury jest użycie narzędzia NMAP. Uruchamiając podstawową komendę z adresem IP, dowiadujemy się jakie porty są otwarte i czy nasłuchują one połączenia.
W tradycyjnym trybie komunikacji widzimy standardowe przełączniki dodawane do polecenia. Dzięki temu wiemy że mamy otwarte porty TCP takie jak 80 dla HTTP oraz 443 dla HTTPS, podczas gdy port 22 może być zamknięty.
Analiza wyników skanowania
Otwieramy przeglądarkę Firefox i wpisujemy adres IP celu. Pojawia się wtedy strona z ładną animacją, co sugeruje że serwer działa poprawnie na porcie 80 lub 443.
To właśnie te dwa porty nas interesują w kontekście ataku brute force na serwery WWW. Musimy faktycznie pomyśleć o tym co chcemy testować i przygotować odpowiednie listę haseł do wykorzystania przez narzędzia automatyzujące.