Podstawowa konfiguracja i instalacja programu IDS – SNORT
From WikiDoc
Podstawowa konfiguracja i instalacja programu IDS – SNORT®
SNORT® jest bardzo potężnym narzędziem służącym do wykrywania ataków na komputery czyli tzw. IDS (Intrusion prevention and Detection System )który daje szeroki zakres mechanizmów detekcji, mogących w czasie rzeczywistym dokonywać analizy ruchu i rejestrowania pakietów w sieciach opartych na protokołach IP/TCP/UDP/ICMP. Potrafi przeprowadzać analizę strumieni pakietów, wyszukiwać i dopasowywać podejrzane treści, a także wykrywać wiele ataków i anomalii, takich jak przepełnienia bufora, ataki na usługi WWW oraz SMB, skanowanie portów typu stealth, próby wykrywania systemu operacyjnego (fingerprinting)itd. Może on również działać jako niezależny sniffer lub rejestrator pakietów (po podaniu odpowiednich parametrów) czyli przechwytywać wszystkie pakiety jakie krążą w sieci niezależnie od tego do kogo jest dany pakiet adresowany. Jest to program darmowy o otwartym kodzie źródłowym czyli tzw. Open Source . Snort® jest dostępny w repozytoriach systemu KateOS . Nie jest on jednak oficjalnie wspierany, pakiet ten jest stworzony przez użytkowników tego systemu i jest dostępny w repozytoriach community. SNORT może zapisywać dane do bazy danych MySQL oraz używać systemu ACID jako całkiem wygodnego interfejsu do przeglądania alarmów.
Contents |
INSTALACJA
By zainstalować SNORT®należy wpisać w terminalu/konsoli :
updateos -i snort
Można również użyć KatePKG do tego celu.
Oczywiście można go także zainstalować ze źródeł które są dostępne na oficjalnej stronie projektu.
KONFIGURACJA
Po zainstalowaniu SNORTa® trzeba go odpowiednio skonfigurować. Snort korzysta z tak zwanych reguł. Reguły można ściągnąć ze strony projektu SNORT.
Po ściągnięciu i zapisaniu pliku snortrules-xx-xx.tar.gz plik ten rozpakowujemy , najlepiej do katalogu domowego użytkownika który będzie używał SNORTa®. Wyszukujemy pliku snort.conf (/home/$Nazwaużytkownika/snortrules-xx-xx/rules ) który należy odpowiednio edytować i podać w odpowiednim miejscu m.in. swój adres ip . Np jeśli twój adres ip to 10.0.0.6 to należy w linii 45 wpisać
var HOME_NET 10.0.0.6
Można również zamiast konkretnego adresu ip wpisać nazwę interfejsu sieciowego który ma być obserwowany.
var HOME_NET $eth0_ADDRESS
Co może być dobrym rozwiązaniem jeśli mamy dynamicznie przyznawany adres sieciowy.
Dobrze jest także ustawić zmienną EXTERNAL_NET która oznacza sieć zewnętrzną/obcą z której może zostać przeprowadzony atak. Zazwyczaj zmienna ta przyjmuje wartość "any" dzięki czemu obejmuje ona wszystkie możliwe adresy:
var EXTERNAL_NET any
W linii 57 należy wpisać adresy DNS oddzielając je przecinkami(w miarę potrzeb) np:
var DNS_SERVERS 208.67.222.222,208.67.220.220
itd.
Następnie go zapisujemy.
Możemy dodatkowo odznaczyć i co za tym idzie dodać inne reguły. Można to zrobić np. Na samym dole pliku snort.conf .
# include $RULE_PATH/porn.rules
Wystarczy tylko usunąć znak # z początku danej lini. Standardowo nie wszystkie reguły są uruchomione.
Więcej informacji w dokumentacji programu i na stronach man.
URUCHAMIANIE SNORTA
Snorta® można uruchomić na wiele sposobów. Jednym z nich jest uruchomienie go jako demona. Komenda taka jest dosyć prosta.
snort -D
Oczywiście nie można zapomnieć o podaniu lokalizacji naszego pliku snort.conf . Aby uruchomić go jako demona który będzie korzystał z reguł należy wpisać w konsoli
snort -c /home/$Nazwaużytkownika/snortrules-xx-xx/rules/snort.conf -D
Gdzie /home/$Nazwaużytkownika/snortrules-xx-xx/rules to lokalizacja naszego pliku snort.conf
Można również spowodować aby Snort® uruchamiał się podczas startu systemu jako demon. Należy np. dopisać wtedy do pliku /etc/rc.d/rc.local następującą linijkę:
snort -c /home/nazwa_użytkownika/snort/snort.conf -D
Aby sprawić byśmy byli poinformowani o uruchomieniu Snorta® i skończeniu konfiguracji można wpisać :
echo ”Uruchamianie systemu IDS snort” snort -c /home/$Nazwaużytkownika/snortrules-xx-xx/rules/snort.conf -D echo ”System IDS uruchomiony”
Gdzie xx-xx to numer i wersja reguł snorta które ściągnęliśmy i rozpakowaliśmy.
GDZIE SĄ PRZECHOWYWANE LOGI (ALARMY) SNORTA
Snort wszystkie alarmy standardowo zapisuje w pliku /var/log/snort/alert.txt . Wpis taki może wyglądać następująco:
[**] [122:1:0] (portscan) TCP Portscan [**] 04/04-20:22:15.110204 10.0.0.6 -> 10.0.0.2 PROTO255 TTL:0 TOS:0x0 ID:5410 IpLen:20 DgmLen:154
Jest on w miarą czytelny dla średnio zaawansowanego użytkownika.
- Pierwsza liczba jest ID Generatora , która mówi użytkownikowi jaki komponent snorta wygenerował ten alarm.
- Druga liczba jest ID SNORTa® (czasem jako ID sygnatury)oznaczającym dany preprocesor. Aby zobaczyć liste preprocesorów SIDs, prosze sobaczyć plik etc/gen-msg.map .
- Trzecia liczba przedstawia revision ID. Jest używana gdy zapisywana jest dana sygnatura.
Opisy sygnatur można znaleźć w katalogu /home/$Nazwaużytkownika/snortrules-xx-xx/doc/signatures/ W tym wypadku jest to sygnatura oznaczona nr 122-1 która mówi o przeskanowaniu lub próbie skanowania portów w naszej sieci tzw portscan .
W drugiej linijce znajduje się data ,godzina wpisu oraz adresy ip.
Można dodatkowo zmusić SNORT® aby zapisywał alarmy w innym miejscu niż standardowe (var/log/snort/) podając miejsce i plik gdzie ma to zrobić używając komendy -l np.
snort -l /var/log/snortalarm -c /home/$Nazwaużytkownika//snort/snort.conf -D
GDY COŚ NIE DZIAŁA
- 1
Gdy Snort® podczas próby uruchomienia pokazuje komunikat że ma problem z jakąś regułą to (jeśli jesteś początkującym użytkownikiem) najlepiej w pliku snort.conf zahaszować odpowiednią linie odpowiedzialną za uruchomienie tej reguły.
- 2
ERROR: Unable to open rules file: ../rules/local.rules or /home/$Nazwaużytkownika//snortrules-pr-2.4../rules/local.rules Fatal Error, Quitting..
Oznacza to iż najprawdopodobniej nie masz lub masz w niewłaściwym miejscu katalog z regułami. Utwórz ponownie katalog rules ( /home/$Nazwaużytkownika/snortrules-pr-2.4/rules ) i skopiuj tam wszystkie reguły.
- 3
ERROR: Unable to open rules file: classification.config or /home/$Nazwaużytkownika/snortrules-pr-2.4/rules/classification.config Fatal Error, Quitting..
Oznacza to iż w katalogu /home/$Nazwaużytkownika/snortrules-pr-2.4/rules brakuje pliku classification.config . Skopiuj ten plik do tego katalogu.
NAJNOWSZA DOSTĘPNA WERSJA PROGRAMU
Najnowszą binarną wersje SNORT® na dzień 20.05.2007 którą można pobrać dla systemu KateOS jest wersja 2.6.15 i jest dostępna w repozytorium community tego systemu.
LINKI
Strona oficjalna programu - http://www.snort.org
Inne strony:
Strona systemu ACID - http://acidlab.sourceforge.net/
Opis SNORT w PLD - http://pl.docs.pld-linux.org/uslugi_snort.html

