Opis produktu: Hakowanie internetu rzeczy w praktyce. Przewodnik po skutecznych metodach atakowania IoT - F. Chantzis, I. Stais
Praktyczny przewodnik po technikach atakowania Internetu Rzeczy. Dzięki tej książce dowiesz się, w jaki sposób testować systemy, urządzenia i protokoły oraz ograniczać ryzyko. Zawarty został tutaj przegląd typowych zagrożeń i opis sposobów ich modelowania. Omówione zostały metodyki testowania bezpieczeństwa i pasywnego rekonesansu oraz zasady oceny zabezpieczeń wszystkich warstw systemów IoT. Książka prezentuje także techniki ataków polegających na przeskakiwaniu między sieciami VLAN, łamaniu uwierzytelnień w protokole MQTT, zakłócaniu usługi mDNS czy zniekształcaniu komunikatów WS-Discovery.
W książce znajduje się:
- Skanowanie usługi DICOM
- Hakowanie mikrokontrolerów
- Inżynieria wsteczna oprogramowania układowego
- Analiza aplikacji mobilnych
- Zakłócanie pracy czytnika NFC
- Hakowanie urządzeń inteligentnego domu
Informacje o autorach
Fotios Chantzis - zajmuje się zabezpieczeniami sieci i systemów sztucznej inteligencji. Od 2009 roku jest członkiem rdzenia zespołu programistów narzędzia Nmap. Występował na renomowanych konferencjach poświęconych bezpieczeństwu informatycznemu.
Ioannis Stais - starszy analityk bezpieczeństwa IT. Zajmuje się prowadzeniem kontrolowanych ataków hakerskich. Interesuje się rozwojem algorytmów uczenia maszynowego, a także zagrożeniami aplikacji mobilnych i internetowych.
Informacje o książce
- Tytuł oryginalny: Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things
- Autorzy: Fotios Chantzis, Ioannis Stais, Paulino Calderon, Evangelos Deirmentzoglou, Beau Woods
- Tłumaczenie: Andrzej Watrak
- ISBN: 978-83-283-8339-5
- Rok wydania: 2022
- Oprawa: miękka
- Ilość stron: 440
- Format: 170 x 230 mm
- Wydawnictwo: Helion S.A.
Spis treści
- O autorach
- O współautorach
- O korektorze merytorycznym
- Przedmowa
- Podziękowania
- Wprowadzenie
- Koncepcja książki
- Dla kogo jest ta książka?
- Kali Linux
- Struktura książki
Część I. Krajobraz zagrożeń IoT
1. Bezpieczeństwo w świecie IoT
- Dlaczego bezpieczeństwo IoT jest ważne?
- Czym różni się bezpieczeństwo IoT od tradycyjnego bezpieczeństwa IT?
- Co jest specjalnego w hakowaniu IoT?
- Normy, regulacje i wytyczne
- Studium przypadku: identyfikowanie, zgłaszanie i ujawnianie problemów z bezpieczeństwem IoT
- Zdaniem eksperta: poruszanie się po świecie IoT
- Regulacje dotyczące hakowania IoT
- Rola rządu w bezpieczeństwie IoT
- Bezpieczeństwo urządzeń medycznych z perspektywy pacjentów
- Podsumowanie
2. Modelowanie zagrożeń
- Modelowanie zagrożeń IoT
- Regulacje dotyczące modelowania zagrożeń
- Identyfikacja architektury urządzenia
- Podział architektury na komponenty
- Określenie zagrożeń
- Wykrywanie zagrożeń za pomocą drzewa ataku
- Ocena zagrożenia przy użyciu klasyfikacji DREAD
- Inne modele zagrożeń, podejścia i narzędzia
- Typowe zagrożenia IoT
- Zakłócanie sygnału
- Odtwarzanie danych
- Zniekształcanie ustawień
- Naruszenie integralności sprzętu
- Klonowanie węzłów
- Naruszenie bezpieczeństwa i prywatności danych
- Niska świadomość zagrożeń
- Podsumowanie
3. Metodyka testów bezpieczeństwa
- Pasywny rekonesans
- Instrukcje i dokumenty
- Patenty
- Wiedza użytkowników
- Warstwa fizyczna lub sprzętowa
- Interfejsy peryferyjne
- Środowisko rozruchowe
- Blokady
- Zabezpieczenia przed modyfikacjami i wykrywanie modyfikacji
- Oprogramowanie układowe
- Interfejsy diagnostyczne
- Fizyczna odporność
- Warstwa sieciowa
- Rekonesans
- Ataki na protokoły i usługi sieciowe
- Testy protokołów bezprzewodowych
- Testy aplikacji WWW
- Tworzenie mapy aplikacji
- Kontrolki klienckie
- Uwierzytelnianie użytkowników
- Zarządzanie sesjami
- Kontrola dostępu i autoryzacja
- Weryfikacja danych wejściowych
- Błędy w algorytmie
- Serwer aplikacyjny
- Przegląd konfiguracji hosta
- Konta użytkowników
- Siła haseł
- Uprawnienia kont
- Poziom poprawek
- Zdalne utrzymanie
- Kontrola dostępu do systemu plików
- Szyfrowanie danych
- Błędy w konfiguracji serwera
- Testy aplikacji przenośnych i chmurowych
- Podsumowanie
Część II. Hakowanie sieci
4. Ocenianie sieci
- Skok w sieć IoT
- Sieci VLAN i przełączniki sieciowe
- Imitowanie przełącznika
- Podwójne tagowanie
- Imitowanie urządzeń VoIP
- Identyfikowanie urządzeń IoT w sieci
- Uzyskiwanie haseł poprzez badanie odpowiedzi usług
- Tworzenie własnych sygnatur usług
- Hakowanie protokołu MQTT
- Przygotowanie środowiska testowego
- Tworzenie modułu dla programu Ncrack do hakowania poświadczeń w protokole MQTT
- Test modułu MQTT
- Podsumowanie
5. Analiza protokołów sieciowych
- Badanie protokołów sieciowych
- Gromadzenie informacji
- Analiza
- Prototypowanie i tworzenie narzędzi
- Ocena bezpieczeństwa protokołu
- Tworzenie dekodera protokołu DICOM w języku Lua dla programu Wireshark
- Język Lua
- Protokół DICOM
- Generowanie ruchu DICOM
- Włączenie języka Lua w programie Wireshark
- Zdefiniowanie dekodera
- Zdefiniowanie głównej funkcji dekodera
- Skompletowanie dekodera
- Tworzenie dekodera żądań C-ECHO
- Wyodrębnienie ciągów znaków z tytułu jednostki aplikacji
- Uzupełnienie funkcji dekodującej
- Analiza pól o zmiennych długościach
- Test dekodera
- Tworzenie skanera usługi DICOM dla silnika skryptowego Nmap
- Utworzenie biblioteki Nmap dla protokołu DICOM
- Identyfikatory DICOM i stałe wartości
- Zdefiniowanie funkcji tworzącej i usuwającej gniazdo sieciowe
- Zdefiniowanie funkcji wysyłającej i odbierającej pakiet DICOM
- Utworzenie nagłówka pakietu DICOM
- Utworzenie funkcji wysyłającej żądanie A-ASSOCIATE
- Odczytanie parametrów skryptu w silniku Nmap
- Zdefiniowanie struktury żądania A-ASSOCIATE
- Analiza odpowiedzi A-ASSOCIATE
- Utworzenie finalnego skryptu
- Podsumowanie
6. Eksploracja sieci samokonfiguracyjnych
- Eksploracja protokołu UPnP
- Stos protokołu UPnP
- Typowe wady protokołu UPnP
- Otwieranie przejść w zaporze sieciowej
- Atakowanie protokołu UPnP poprzez interfejs WAN
- Inne ataki na protokół UPnP
- Eksploracja protokołów mDNS i DNS-SD
- Jak działa protokół mDNS?
- Jak działa protokół DNS-SD?
- Rekonesans przy użyciu protokołów mDNS i DNS-SD
- Atak na operację sondowania w protokole mDNS
- Ataki typu człowiek pośrodku na protokoły mDNS i DNS-SD
- Eksploracja protokołu WS-Discovery
- Eksploracja protokołu WS-Discovery
- Podsumowanie
Część III. Hakowanie sprzętu
7. Eksploracja UART, JTAG i SWD
- Interfejs UART
- Narzędzia sprzętowe wykorzystujące interfejs UART
- Identyfikacja pinów interfejsu UART
- Określenie prędkości transmisji interfejsu UART
- Interfejsy JTAG i SWD
- Interfejs JTAG
- Jak działa interfejs SWD?
- Narzędzia sprzętowe wykorzystujące interfejsy JTAG i SWD
- Identyfikacja pinów interfejsu JTAG
- Hakowanie urządzenia za pomocą interfejsów UART i SWD
- Hakowanie mikrokontrolera STM32F103C8T6 (black pill)
- Przygotowanie środowiska diagnostycznego
- Utworzenie programu w środowisku Arduino IDE
- Załadowanie i uruchomienie programu
- Diagnozowanie urządzenia
- Podsumowanie
8. Interfejsy SPI i I2C
- Narzędzia do komunikacji z interfejsami SPI i I2C
- Interfejs SPI
- Jak działa interfejs SPI?
- Odczyt zawartości pamięci EEPRM/flash za pomocą interfejsu SPI
- Interfejs I2C
- Jak działa interfejs I2C?
- Utworzenie szyny I2C typu kontroler urządzenie peryferyjne
- Hakowanie interfejsu I2C za pomocą urządzenia Bus Pirate
- Podsumowanie
9. Hakowanie oprogramowania układowego
- Oprogramowanie układowe i system operacyjny
- Uzyskanie oprogramowania układowego
- Hakowanie routera Wi-Fi
- Wyodrębnienie systemu plików
- Statyczna analiza zawartości systemu plików
- Emulacja oprogramowania układowego
- Analiza dynamiczna
- Otwieranie ukrytych wejść do oprogramowania układowego
- Hakowanie mechanizmu aktualizacji oprogramowania układowego
- Kompilacja i konfiguracja
- Kod klienta
- Uruchomienie usługi aktualizacji
- Luki w bezpieczeństwie usługi aktualizacji oprogramowania
- Podsumowanie
Część IV. Hakowanie radia
10. Radio krótkiego zasięgu: nadużywanie RFID
- Jak działa RFID?
- Zakresy częstotliwości radiowych
- Pasywne i aktywne technologie RFID
- Architektura tagu RFID
- Tagi RFID niskiej częstotliwości
- Tagi RFID wysokiej częstotliwości
- Atakowanie systemów RFID za pomocą urządzenia Proxmark3
- Przygotowanie narzędzia Proxmark3
- Aktualizacja urządzenia Proxmark3
- Identyfikacja tagów niskiej i wysokiej częstotliwości
- Klonowanie tagu niskiej częstotliwości
- Klonowanie tagu wysokiej częstotliwości
- Symulowanie tagu RFID
- Modyfikacja tagu RFID
- Atakowanie karty MIFARE za pomocą aplikacji Android
- Ogólne polecenia dla nieoznaczonych i niekomercyjnych tagów RFID
- Podsłuchiwanie komunikacji między tagiem a czytnikiem
- Wyodrębnianie klucza sektora z zarejestrowanych danych
- Atakowanie czytnika RFID
- Automatyzacja ataków przy użyciu skryptów Proxmark3
- Zakłócanie czytnika RFID za pomocą własnego skryptu
- Podsumowanie
11. Technologia BLE
- Jak działa technologia BLE?
- Profile GAP i GATT
- Korzystanie z technologii BLE
- Urządzenia BLE
- BlueZ
- Konfiguracja interfejsów BLE
- Wykrywanie urządzeń i wyświetlanie charakterystyk
- Narzędzie GATTTool
- Narzędzie Bettercap
- Uzyskiwanie listy charakterystyk, usług i deskryptorów
- Odczytywanie i zapisywanie charakterystyk
- Hakowanie technologii BLE
- Przygotowanie projektu BLE CTF Infinity
- Pierwsze kroki
- Flaga 1 zbadanie charakterystyk i deskryptorów
- Flaga 2 uwierzytelnienie
- Flaga 3 podszycie się pod adres MAC
- Podsumowanie
12. Radio średniego zasięgu: hakowanie Wi-Fi
- Jak działa Wi-Fi?
- Sprzęt do oceniania bezpieczeństwa Wi-Fi
- Ataki na klientów sieci Wi-Fi
- Ataki dysocjacyjne i blokujące usługę
- Ataki asocjacyjne
- Wi-Fi Direct
- Ataki na punkty dostępu
- Łamanie szyfrowania WPA/WPA2
- Łamanie szyfrowania WPA/WPA2 Enterprise i przechwytywanie poświadczeń
- Metodyka testów bezpieczeństwa
- Podsumowanie
13. Radio dalekiego zasięgu: LPWAN
- LPWAN, LoRa i LoRaWAN
- Przechwytywanie danych w sieci LoRaWAN
- Przygotowanie płytki Heltec LoRa 32
- Przygotowanie klucza LoStik
- Klucz USB CatWAN jako rejestrator pakietów
- Dekodowanie protokołu LoRaWAN
- Format pakietu LoRaWAN
- Dołączanie do sieci LoRaWAN
- Hakowanie sieci LoRaWAN
- Atak bit-flipping
- Generowanie kluczy i zarządzanie nimi
- Ataki odtworzeniowe
- Podsłuchiwanie komunikacji
- Fałszowanie potwierdzeń
- Ataki aplikacyjne
- Podsumowanie
Część V. Celowanie w ekosystem IoT
14. Ataki na aplikacje mobilne
- Zagrożenia aplikacji mobilnych IoT
- Komponenty środowiska aplikacji mobilnych
- Identyfikacja zagrożeń
- Zabezpieczenia w systemach Android i iOS
- Ochrona danych i szyfrowany system plików
- Odizolowane otoczenie aplikacji, bezpieczna komunikacja międzyprocesowa, usługi
- Podpisy aplikacji
- Uwierzytelnienie użytkownika
- Odizolowane komponenty sprzętowe i zarządzanie kluczami
- Zweryfikowany i bezpieczny rozruch
- Analiza aplikacji dla systemu iOS
- Przygotowanie środowiska testowego
- Wyodrębnienie i ponowne podpisanie pakietu IPA
- Analiza statyczna
- Analiza dynamiczna
- Wstrzykiwanie danych
- Magazyn łańcucha kluczy
- Dekompilacja pliku binarnego
- Przechwytywanie i badanie danych sieciowych
- Omijanie wykrywania włamań poprzez wprowadzanie dynamicznych zmian w kodzie
- Omijanie wykrywania włamań poprzez wprowadzanie statycznych zmian w kodzie
- Analiza aplikacji dla systemu Android
- Przygotowanie środowiska testowego
- Wyodrębnienie pliku APK
- Analiza statyczna
- Dekompilacja pliku binarnego
- Analiza dynamiczna
- Przechwytywanie i badanie danych sieciowych
- Boczne kanały wycieku danych
- Omijanie wykrywania włamań poprzez wprowadzanie statycznych zmian w kodzie
- Omijanie wykrywania włamań poprzez wprowadzanie dynamicznych zmian w kodzie
- Podsumowanie
15. Hakowanie inteligentnego domu
- Uzyskanie fizycznego dostępu do budynku
- Sklonowanie karty RFID do inteligentnego zamka
- Zakłócanie bezprzewodowego systemu alarmowego
- Odtwarzanie strumienia wideo z kamery IP
- Protokoły strumieniowe
- Analiza danych przesyłanych przez kamerę IP
- Wyodrębnienie strumienia wideo
- Hakowanie inteligentnej bieżni treningowej
- Inteligentna bieżnia i system Android
- Przejęcie kontroli nad inteligentną bieżnią
- Podsumowanie