Prezentacja przedstawiona przeze mnie i Macieja Grelę w 2016 roku na XIX Międzynarodowej Konferencji Naukowej Techniczne Aspekty Przestępczości Teleinformatycznej (TAPT) organizowanej przez Wyższą Szkołę Policji w Szczytnie.
2. O nas
■ Adam Ziaja, OSCP, OSWP, eWPT
biegły sądowy
Starszy Konsultant Cyberbezpieczeństwa, Deloitte
http://adamziaja.com - prywatna strona
■ Maciej Grela, OSCP, OSWP
Główny Inżynier Usług Bezpieczeństwa IT, Exatel
http://github.com/mgrela
3. WiFi stalking
Co to są pakiety Probe Request i dlaczego mam się nimi interesować?
■ wysyłane automatycznie przez urządzenie WiFi - nawet gdy nie jesteśmy
połączeni z żadną siecią
■ ujawniają informacje o sieciach, z których korzystaliśmy wcześniej i są
zapamiętane w laptopie, telefonie, tablecie itd.
■ nie można ich łatwo zablokować - biorą udział w procesie łączenia się z
siecią WiFi
4. WiFi probe - jak to działa?
Directed Probe NULL Probe
5. Przykład z życia wzięty… biały wywiad (OSINT)
■ uruchamiamy program do podglądu ruchu sieciowego (np. Wireshark,
tcpdump itp) na jednej z konferencji poświęconych bezpieczeństwu IT
■ znajdujemy wśród pakietów probe request ciekawą nazwę sieci (SSID),
która związana jest ze znanym portalem z branży
■ pakiety probe request zwierającę interesujący nas SSID wysyła tylko jedno
urządzenie
■ chcemy pozyskać jak najwięcej informacji odnośnie tego urządzenia
9. Narzędzia - WiGLE.net
■ publicznie dostępna (darmowa) baza danych access pointów WiFi
○ ponad 250 milionów wykrytych sieci na całym świecie
■ jest darmowa
○ automatyczne odpytywanie jest ograniczane
○ możliwe wykupienie abonamentu komercyjnego
■ możliwość przeszukiwania pod kątem pojedynczego BSSID/ESSID
(większość komercyjnych serwisów geolokacji podaje dokładne położenie na
podstawie co najmniej dwóch BSSID np. usługa lokalizacji Google)
■ dane są croudsource’owane
○ częste aktualizacje
○ nie wszystkie AP są widoczne
11. Jak z dokładnością danych?
■ zbadaliśmy 1429 unikalnych SSID
■ 63% z nich może być w praktyce przydatne do lokalizacji (wielu nazw ESSID
nie ma w bazie, wiele ESSID nie jest wystarczająco unikalne - np. AndroidAP,
linksys, Dom itp)
■ lokalizacja w promieniu kilkudziesięciu metrów
12. Automatyzacja WiGLE.net
pozycja GPS z WiGLE to pozycja gdzie wykryto siec, a nie
gdzie znajduje się AP
odległość 50m od
“prawdziwej” lokalizacji
Niebezpiecznik.plNiebezpiecznik.pl GUEST
https://github.com/bezprzewodowe/niebezpieczenstwo/ - wigle.py
25. http://wardriving.adamziaja.com (2010)
...najbliższa sieć bez szyfrowania itd
...najbliższe podatny AP
np. informacja z BSSID + SSID
Livebox (przepełnienie bufora, 2008)
kanał 14 (2.484 GHz) - w Polsce tylko częstotliwości od 2.4 do 2.4835 GHz nie wymagają koncesji
27. aktualnie dużo się nie zmieniło w kontekscie bezpieczeństwa
90 kombinacji dla całego vendora TP-LINK
28. Vectra (...-2016, Warszawa)
■ hasłem do Wi-Fi jest MAC (12 znaków) pisany małymi literami.
■ nazwa sieci Wi-Fi składa się z członu "VNET-" oraz drugiej połowy MAC (6
znaków).
■ pierwsza połowa MAC przypisana jest do vendora (6 znaków).
■ sąsiedzi prawdopodobnie mają ten sam model modemu, co za tym idzie
pierwsze 6 znaków naszego hasła oraz 6 znaków z nazwy sieci Wi-Fi sąsiada
daje nam dostęp do sieci sąsiada… :)
■ jeśli hasło nie pasuje to jest kilkadziesiąt kombinacji (modemy z serii Cisco
EPC np. 3212, 3925, 3208, 3010, 3008, 3928, 2100 = możliwe 32
kombinacje)
■ generator możliwych haseł http://adamziaja.com/misc/vectra.php (2014-...)
34. Czy mieliśmy po prostu szczęście?
Niestety nie jest tak dobrze, polecana lektura: (In)Security of Embedded
Devices' Firmware - Fast and Furious at Large Scale [32c3]
(https://www.youtube.com/watch?v=5gf6mFz1rPM)
■ automatyczna statyczna i dynamiczna analiza obrazów firmware
■ przeanalizowano zaledwie 185 obrazów od 13 producentów
■ znalezione 225 poważnych podatności (Command Injection, CSRF, XSS)
35. Jak żyć?
■ systematycznie aktualizować firmware urządzeń z WiFi
■ jeżeli to możliwe używać OpenWRT lub DDWRT (backdoory producenta!)
■ zmienić domyślne hasło z naklejki nawet jeśli wygląda na mocne i unikalne
■ szyfrować WPA2 (czyli AES)
■ w przypadku większych sieci korzystać z serwera RADIUS i 802.1x
37. Dziękujemy za uwagę!
Adam Ziaja <adam@adamziaja.com>
Maciej Grela <enki@fsck.pl>
Repozytorium ze skryptami z prezentacji:
https://github.com/bezprzewodowe/niebezpieczenstwo