Witam.
Jestem ciekawy jak działa softwarowy firewall.
Czy program podszywa się pod biblioteki systemowe, czy cały czas sprawdza(lub może jakieś zdarzenie) nowe połączenia i jakoś komunikatami blokuje....
Jak to działa?
Witam.
Jestem ciekawy jak działa softwarowy firewall.
Czy program podszywa się pod biblioteki systemowe, czy cały czas sprawdza(lub może jakieś zdarzenie) nowe połączenia i jakoś komunikatami blokuje....
Jak to działa?
Najczęściej wpina się w środek stosu TCP/IP (w Windows robi to podmieniając zazwyczaj sterownik NDIS).
Przykład bibliotek: WinpkFilter.
A jak to wygląda w wypadku UDP?
W przypadku wpięcia się pod sterownik NDIS za pomocą WinpkFilter, otrzymujesz dostęp do interfejsu między 2 a 3 warstwą modelu ISO/OSI, co oznacza, że możesz wpływać na całe datagramy z adresami IP. Zatem możesz modyfikować i TCP, i UDP. Oczywiście wszystko zależy od tego, jakiego rozwiązania użyjesz i jakie ono udostępnia możliwości.
Developing Firewalls for Windows 2000/XP
Znajdziesz tu przykład bardzo prostej implementacji firewala. Całość opiera się na zasadzie callbac'ku (funkcja cbFilterFunction) gdzie analizująć nagłówek IP możesz zadecydować czy przepuścić pakiet dalej, czy kazać go zniszczyć.