Dotychczas w cyklu Arsenał (Ethical) Hackera opisywałem głównie gadżety z kategorii BadUSB. Tym wpisem rozpoczynamy przegląd tzw. implantów sieciowych, czyli narzędzi, które umieszczone w sposób niezauważony w infrastrukturze sieciowej mogą stanowić swego rodzaju backdoora. Umożliwiają one np. zdalny dostęp, skanowanie sieci lub eksfiltrację danych.
Shark Jack
Widoczny na tytułowym zdjęciu Shark Jack to dostępny w formie breloczka do kluczy miniaturowy implant z wtyczką RJ45, złączem USB-C oraz wbudowaną baterią dającą możliwość pracy bez podłączonego zasilania przez 10-15 minut. Urządzenie na boku obudowy posiada mały przełącznik umożliwiający wybór jednego z trzech trybów pracy:
- OFF – ładowanie urządzenia z portu USB-C
- ARMING – tryb zbrojenia, w którym możemy połączyć się do urządzenia za pomocą SSH i umieścić na nim payloady w postaci skryptów linuksowej powłoki bash
- ATTACK – tryb ataku, w którym urządzenie po umieszczeniu w gniazdku sieciowym uruchamia przygotowany wcześniej payload
Konfiguracja
W trybie „arming” Shark Jack uruchamia się z adresem IP 172.16.24.1 oraz serwerem SSH nasłuchującym na domyślnym porcie. Po zalogowaniu przez SSH wita nas terminal BusyBoxa:
Sprawdźmy na jakich komponentach sprzętowych zbudowany został Shark Jack:
root@shark:~/payload# cat /proc/cpuinfo system type : MediaTek MT7628AN ver:1 eco:2 machine : Hak5 Shark Jack processor : 0 cpu model : MIPS 24KEc V5.5 BogoMIPS : 385.84 root@shark:~/payload# free total used free shared buffers cached Mem: 60264 23160 37104 60 2992 7588 root@shark:~# df -h Filesystem Size Used Available Use% Mounted on /dev/root 7.0M 7.0M 0 100% /rom tmpfs 29.4M 60.0K 29.4M 0% /tmp tmpfs 29.4M 92.0K 29.3M 0% /tmp/root tmpfs 512.0K 0 512.0K 0% /dev /dev/mtdblock6 23.4M 740.0K 22.7M 3% /overlay overlayfs:/overlay 23.4M 740.0K 22.7M 3% /
Do dyspozycji mamy 60 MB pamięci RAM i 30 MB przestrzeni dyskowej. Nie jest to może zbyt wiele, ale wystarczy np. do uruchomienia dostępnego na urządzeniu klienta OpenVPN i zestawienia połączenia z zewnętrznym serwerem. Dzięki temu możliwe będzie przesłanie wyników działania przygotowanego skryptu na zewnątrz sieci w przypadku gdybyśmy nie mieli już odzyskać umieszczonego w środowisku ofiary implantu.
Interfejs webowy
Jedną z dostępnych domyślnie na urządzeniu usług jest uhttpd – po jej uruchomieniu i połączeniu się z Shark Jackiem przeglądarką www, oczom naszym ukazuje się interfejs webowy umożliwiający edycję skryptu uruchamianego w trybie Attack oraz pobieranie zawartości katalogu 'loot’, w którym zapisywane są wyniki działania tego skryptu:
Payloady
Domyślnie umieszczony na urządzeniu skrypt payload.sh wykonuje szybkie skanowanie sieci nmap-em (namp -sP – wykrywanie dostępnych hostów, bez skanowania portów) i wyniki zapisuje w pliku tekstowym w katalogu 'loot’. Kilka innych payloadów można też znaleźć na githubie: https://github.com/hak5/sharkjack-payloads. Wybór nie jest może zbyt wielki, ale niektóre z nich umożliwiają np. połączenie i eksfiltrację danych do C2 Cloud od Hak5 (jest to usługa dostarczana przez producenta urządzenia – firmę Hak5, poświęcony jej będzie jeden z artykułów w naszym cyklu). Mając jednak przykładowe skrypty, z których dowiemy się m.in. jak sterować diodami, trybem pracy DHCP (serwer lub klient) i łączyć się z C2 Cloud mamy spore pole do popisu. Na urządzeniu z firmware’m w wersji 1.1.0 dostępne są m.in następujące narzędzia:
- autossh
- nmap
- nc
- wget
- python
- arp-scan
- hping3
- macchanger
- ngrep
- nping
- p0f
- tcpdump
- openvpn
Wystarczy to na pewno do rekonesansu sieci, narobienia w niej sporego bałaganu lub przeprowadzenia ataku MITM.
Koszt urządzenia w oficjalnym sklepie Hak5 to 59,99$.
Jeżeli artykuł Cię zainteresował tradycyjnie zachęcam do dzielenia się nim oraz zapisania się na newsletter aby otrzymać powiadomienie o kolejnych tekstach w cyklu Arsenał (Ethical) Hackera. Już wkrótce poznamy kolejne implanty sieciowe.
Zostaw e-mail aby otrzymać powiadomienia o nowościach oraz dostęp do wszystkich bonusowych materiałów przygotowanych wyłącznie dla subskrybentów.