Projekt i implementacja filtra pakietów w dla urządze dzeń Pocket PC Jakub Grabowski opiekun pracy: prof. dr hab. Zbigniew Kotulski 2005-10-25
Zagrożenia Ataki sieciowe Problemy z bezpieczeństwem sieci WLAN Złośliwe oprogramowanie
Motywacja Chęć rozwiązania zania rzeczywistego problemu z bezpieczeństwem niekontrolowanego przepływu pakietów w pomiędzy urządzeniem, a siecią Brak darmowego oprogramowania typu personal firewall dla Pocket PC Tylko dwa komercyjne rozwiązania zania (nie pozbawione wad) Chęć poznania możliwo liwości posiadanego urządzenia PocketPC
Cechy idealnego firewalla na Pocket PC Monitorowanie i filtrowanie ruchu przychodzącego cego i wychodzącego cego dla stosu TCP/IP Obsługa interfejsów w LAN i WAN Szybkość działania ania Przezroczystość działania ania Rozpoczęcie cie działania ania przy starcie systemu Łatwość konfiguracji Ochrona przed atakami DoS Podgląd d stanu połą łączeń i otwartych portów w w systemie Obsługa zaufanych stref
Wybrana architektura Analiza nagłówk wków Ethernet IP TCP/UDP
Cel pracy Stworzenie filtra pakietów, działaj ającego na rzeczywistym urządzeniu PocketPC Opracowanie uniwersalnej architektury, która może e zostać wykorzystana w innych aplikacjach wymagających dostępu do pakietów
Problemy wpływaj ywające na kształt projektu Brak interfejsów w programistycznych do przechwytywania i filtrowania pakietów w w systemie Windows Mobile for Pocket PC konieczność stworzenia własnego w sterownika Uboga dokumentacja interfejsu NDIS (Network Driver Interface Specification) konieczność wykonania wielu eksperymentów Wysoki koszt komercyjnego oprogramowania do tworzenia sterowników konieczność konfiguracji darmowych narzędzi tak, aby możliwe było o tworzenie sterowników w NDIS
Architektura komunikacyjna Windows CE
Struktura systemu pomysł na filtrowanie pakietów
Struktura systemu dekompozycja zadań Moduły y systemu: Sterownik pośredni Filtr pakietów Parser pakietów Moduł decyzyjny z łańcuchem reguł
Zagadnienia implementacyjne rozwiązane zane problemy Konfiguracja darmowego środowiska Embedded Visual C++ tak, aby możliwe było stworzenie w nim sterownika NDIS. Zbudowanie sterownika pośredniego i odpowiednia jego konfiguracja tak, aby przepływa ywał przez niego cały y ruch TCP/IP. Opracowanie parsera pakietów. Opracowanie dynamicznej struktury danych realizującej łańcuch reguł dla firewalla. Implementacja mechanizmu odrzucania zablokowanych pakietów w wewnątrz sterownika pośredniego NDIS.
Porównanie z systemami komercyjnymi JG Packet Filter Airscanner Mobile Firewall Bluefire Firewall Filtrowanie ruchu LAN Filtrowanie ruchu WAN Rozpoczęcie działania przy starcie systemu Graficzny interfejs użytkownika Filtrowanie ze względu na adres IP Filtrowanie ze względu na stan połączeń TCP Ochrona przed najpopularniejszymi atakami DoS Podgląd stanu połączeń i otwartych portów w systemie Logowanie zdarzeń
Ocena rozwiązania zania - funkcjonalność Mocne strony Filtrowanie ze względu na adres IP Filtrowanie ze względu na stan połą łączenia TCP Słabe strony Brak graficznego interfejsu użytkownikau Brak ochrony przed atakami DoS Brak filtrowania ruchu WAN
Ocena rozwiązania zania poprawność działania ania Do testów w wykorzystane zostały y narzędzia: Telnet Netcat Nmap Ethereal Plany testów w przygotowane w oparciu o literaturę i podręczniki ww. narzędzi.
Ocena rozwiązania zania testy wydajnościowe Plan testu: pomiar opóźnienia wprowadzanego przez filtr przy pobieraniu dużego pliku binarnego Wyniki: Bardzo dobra wydajność modułu u decyzyjnego znikomy wpływ długości łańcucha reguł na opóźnienie w przetwarzaniu pakietu Wprowadzane opóźnienie aża 20 razy krótsze niż maksymalne zalecane przez Microsoft Bardzo dobra wydajność w porównaniu z konkurencyjnym Airscanner Mobile Firewall (ok. 4% opóźnienia dla typowych przypadków, w Airscanner ok. 37% dla najprostszego)
Podsumowanie Osiągni gnięcia: Stworzenie wydajnego, w pełni funkcjonalnego i działaj ającego na rzeczywistym urządzeniu filtra pakietów Opracowanie uniwersalnej architektury, umożliwiaj liwiającej dostęp p do pakietów sieciowch i implementacje bardziej zaawansowanych typów firewalli Stworzenie środowiska programowania sterowników w NDIS z darmowych komponentów