IDS (Intrusion Detection System - ang. system wykrywania włamań) to jeden ze sposobów zabezpieczania sieci, w celu ewentualnego wykrycia sprawcy (często w trakcie dokonywania włamania).
Poniższy tekst opisuje instalacje i konfiguracje systemu IDS pod kontrolą FreeBSD 6.0, snort + sguil.
Wymagane:
- trochę czasu
- trochę samozaparcia
- podstawowe informacje o systemie, na którym wszystko ma pracować
- dostęp do netu :)
- piwo... (sporo piwa)
Serwer:
Wymagana jest silna maszyna, sporo RAM'u, masę wolnego miejsca na dysku. nie podam konkretów, wyjdzie w praniu. wszystko zależne jest od sieci, umiejscowienia itd..
w opisie zajmę się instalacja serwera Sguil i Snorta na jednej maszynie, oczywiście, można to zrobić na oddzielnych maszynach (zainteresowanych odsyłam na stronę projektu ? link na końcu tekstu).
jeśli są dostępne nadmiarowe środki finansowe sugeruje zakup tap'a.
do podłączenie do niego naszego serwera wykorzystamy dwie 'zbondowane' karty sieciowe. wymagany będzie również dodatkowy interfejs, wymagany do komunikacji serwera ze światem.
1)
Zaczynamy od instalacji systemu. Instalacja 'minimalna'. Istotną sprawą jest podział dysku.
Najważniejsze:
/var - najlepiej na oddzielnym dysku
/nsm - dedykowana partycja do przechowywania danych z Sguila; im większa tym lepsza (nsm > 1GB)
2)
konfiguracja interfejsów bond (http://www.taosecurity.com/bond.txt) :
tak jest chyba najszybciej.
3)
Dodajemy konto:
sguil, grupa sguil
Uruchamiamy: sguild, barnyard i sensor_agent
najłatwiejsza metoda na instalacje całości jest skorzystanie ze skryptu autorstwa Richarda Baitlicha :
http://www.bejtlich.net/sguil_install_v0.1.sh.
Pobieramy skrypt i nadajemy jeszcze odpowiednie uprawnienia:
# chmod +x sguil_install_v0.1.sh
4)
musimy dokonać w nim małych zmian:
- odznaczyć ntpdate clock.isc.org # proponuje ustawić czas ręcznie
- odznaczyć HTTP_PROXY= # lub ustawić własne
- ustawić nazwę sensora
- zmienić hasła konta root i sguil !!!
Skrypt daje możliwość instalacji na systemie 5.4. instalacja przebiega pomyślnie niestety podczas uruchamiania procesów występują błędy.
Po zakończonej instalacji konieczne będą modyfikacje skryptów startowych:
sancap_start.sh # SENSOR i INTERFACE
snort_start.sh # SENSOR i INTERFACE
rc.conf # INTERCACE
/usr/local/bin/log_packets.sh # HOSTNAME, INTERFACE
Należy dostosować do własnych potrzeb plik konfiguracyjny Snorta
/urs/local/etc/nsm/snort.conf
Sguil od wersji 6.0 poprawnie działa z preprocessorem sfportscan.
Przykładowe pliki konfiguracyjne można znaleźć na stronach www.bleedingsnort.org, znajdziecie tam również dodatkowe regułki rozszerzające możliwości naszego IDS'a. Regułki są pisane przez zapaleńców i często modyfikowane, proponuje przetestować przed zastosowaniem w środowiskach produkcyjnych, ale zdecydowanie polecam. Przykładowo na dzień 31.12.2005 Sourcefire VRT Certified Rules - The Official Snort Ruleset (subscription release) oferują nam 21 regułek do p2p, ludzie z bleedingsnory 31:)
Dodatkowo polecam zainstalować Oinkmaster'a, program do aktualizacji regułek:
dokładny opis instalacji i konfiguracji znajdziecie w tekście Patricka Harpera:
http://www.snort.org/docs/setup_guides/Installing_and_configuring_OinkMaster.pdf
Pozostają jeszcze zmiany w plikach konfiguracyjnych:
/usr/local/etc/nsm/barnyard.conf # config interface, output sguil: sensor_name
/usr/local/etc/nsm/sensor_agent.conf # set HOSTNAME
/usr/local/etc/nsm/sguild.conf # set DBPASS
/usr/local/etc/nsm/snort.conf # var RULE_PATH
Jeśli wszystko juz ustawione proponuje sprawdzić czy przez przypadek nie wystąpił problem z katalogiem (nazwa sensora)
jeśli wszystko gra, odpalamy całość.
Uruchamiamy:jako sguil:
#
sguild_start.sh
#
sensor_agent_start.sh
#
barnyard_start.sh
jako root:
#
sancp_start.sh
#
snort_start.sh
#
/usr/local/bin/log_packets.sh restart
Klient:
Sprawdzamy teraz rezultaty naszej pracy. Klienta instalujemy na oddzielnej maszynie.
Znalazłem ostatnio skrypt instalujący klienta na OpenBSD 3.8, skrypt autorstwa geek00l'a możemy pobrać z:
http://www.dissectible.org/anonymous/Sguil_OBSD/sguilclient_OBSD.sh
nie ma również kłopotów z instalacja klienta pod Windows. Tu wymagana jest instalacja ActiveTcl :
http://www.activestate.com/Products/Download/Download.plex?id=ActiveTcl
pobieramy klienta ze strony
http://sourceforge.net/project/showfiles.php?group_id=71220&package_id=70722&release_id=377064
Pozostaje jeszcze modyfikacja pliku konfiguracyjnego sguil.conf
Powodzenia
Materialy:
Wykorzystane w tekście skrypty: bond'owanie interfejsów i instalacja Sguila są autorstwa Richarda Bejtlicha
(www.taosecurity.com)
skrypt instalacyjny klienta Sguil na OpenBSD 3.8 jest autorstwa geek00l'a
http://geek00l.blogspot.com
www.snort.org
www.bleedingsnort.org
Autor:
Tomasz Pietraś
Powyższy artykuł został udostępniony na zasadach Licencji BSD Tylko zarejestrowani użytkownicy mogą pisać komentarze. Prosze zaloguj się i dodaj komentarz. Powered by AkoComment! |