Otvoren
Zatvoriti

Snort instalacija i konfiguracija na Linuxu. Vježbajte korištenje IDS SNORT-a. Struktura i funkcioniranje hrkača

Danas se često puno govori o sigurnosti bežičnih mreža, ali se hakiranje mreže doživljava kao nešto vrlo daleko. Mi već objavljeni materijal o tome kako probiti WEP sigurnost. Štoviše, nakon nekog vremena izašlo je nastavak o tome kako zaštititi svoju mrežu. Danas ćemo pozornost posvetiti alatima za provjeru sigurnosti bežične mreže. I također sustavi za otkrivanje napada - neka vrsta "požarnog alarma" za vaš WLAN.

Inače, ako govorimo o WLAN hakiranju, onda nam se posebno ranjivima čine korisnici kućnih i malih uredskih mreža. To je prvenstveno zbog činjenice da oni imaju druge zadatke osim zaštite svoje bežične mreže. I, za razliku od velikih tvrtki, nemaju priliku zaposliti stručnjake.

Ipak, nije sve tako tužno kako se čini. U prirodi postoje načini za procjenu sigurnosti bežične mreže, unatoč naizgled apsurdnosti kombinacije riječi "sigurnost" i "bežična mreža". Sustavi za otkrivanje upada (IDS) mogu otkriti potencijalne upade prije nego što se dogode dok neprijatelj traži otvor. Naravno, takvi sustavi ne mogu jamčiti potpunu sigurnost (a što, usput rečeno, mogu?), ali u kombinaciji s vatrozidima i drugim sigurnosnim mjerama mogu biti vrlo korisni. Opće je prihvaćeno mišljenje da je IDS neka vrsta sigurnosnog alarma, odnosno samo obavještava o napadu, prepuštajući rad s napadačem drugim sustavima i sredstvima (čak i fizičkim).

Riža. 1. Šmrkati IDS.


Riža. 3. Linksys WRT54G.

U nastavku ćemo dati primjere temeljene na WRT54G s firmwareom OpenWRT RC 2(kodnog naziva "White Russian"). Zapravo postoji mnogo Linux distribucija za bežične usmjerivače, ali mi smo odabrali OpenWRT firmware jer je jednostavan, lagan i pakiran kao Debian Linux.


Riža. 4. OpenWRT na djelu.

Upozorenje. Učitavanje OpenWRT, Snort Wireless ili drugih alternativnih verzija firmvera u WRT54G poništit će jamstvo. Prije nego počnete bljeskati alternativnu verziju firmvera, preporučujemo preuzimanje datoteka kopiju trenutne verzije firmvera

Nećemo ulaziti u detalje o instaliranju OpenWRT-a, jer ga možete pronaći na web stranici OpenWRT-a odličan vodič za instalaciju. Nakon dovršetka instalacije, možete se spojiti na usmjerivač pomoću Telneta () i uživati ​​u rezultatu.

Nakon što instalirate OpenWRT na ruter, možete preuzeti i instalirati program Snort Wireless. Sve to moguće je napraviti preko spomenutog sustava OpenWRT paketa – pokrenite naredbu ipkg sa sljedećim parametrima.

ipkg instalacija http://nthill.free.fr/openwrt/ipkg/testing/20041204/snort-wireless_2.1.1-1_mipsel.ipk

Nekima se možda neće svidjeti što je ovaj paket star više od godinu dana. Ali nema ništa loše u tome, jer su sve potrebne IDS funkcije prisutne ovdje, a sva kasnija Snort pravila također se mogu preuzeti putem ipkg (više detalja: OpenWRT stranica za praćenje). Ako odlučite organizirati pristupnu točku na osobnom računalu, možete preuzeti izvorni kod Snort Wireless i kompajlirati ga izravno na svom računalu. Imajte na umu da biste trebali dodati zastavu --enable-wireless, inače Wi-Fi predprocesori neće raditi.

Snort Wireless radi kao obični Snort, ali je posebno dizajniran za bežične pristupne točke, omogućujući vam da ih učinkovito zaštitite od napada. Točnije, sadrži novi protokol pravila tzv wifi i dopušta IDS-u da pravilno izolira bežični promet tipičan za uobičajene WLAN napade. Na primjer, isti napadi pomoću Netstumblera ili pokušaji probijanja WEP-a. Korištenje wifi protokola u Snort Wirelessu vrlo je slično postavljanju uobičajenih pravila za Snort, uz jednu iznimku: umjesto unosa IP adresa i portova prvog i drugog čvora, trebali biste koristiti njihove MAC adrese.

U ovom trenutku imamo radni Snort Wireless. Prijeđimo na postavljanje za korištenje na odabranoj mreži. Kada pokrenete ipkg, Snort se instalira u direktorij /etc/šmrkati na ruteru. Kao i drugi Unix programi, Snort koristi konfiguracijsku datoteku koja se može uređivati ​​u kojoj možete navesti informacije o vašem mrežnom okruženju i raznim obrascima napada koje želite nadzirati. Datoteka se zove frknuti.konf (Riža. 5) i nalazi se u imeniku /etc/šmrkati. Potrebno ga je otvoriti u bilo kojem uređivaču teksta (ako ga vaš router nema, preuzmite ga pomoću ipkg-a).


Riža. 5. Konfiguracijska datoteka Snort.conf.

Sada možete konfigurirati sve potrebne mrežne parametre, uključujući naziv pristupne točke na kojoj je pokrenut IDS i MAC adrese klijenata koje želite nadzirati. Postoji mnogo postavki koje možete konfigurirati ovdje, pa ih sve pažljivo pregledajte kako biste bili sigurni da ništa ne propustite.

Osobito pogledajte predprocesore specifične za Wi-Fi u Snort Wirelessu. Uključuju predprocesore za otkrivanje pasivnog mrežnog skeniranja od strane programa kao što je NetStumbler i pokušaja lažiranja MAC adrese. Odlučili smo zasebno razmotriti važne pretprocesore.


Riža. 6. AntiStumbler predprocesor vam omogućuje da obavijestite o izvidničkom napadu.

  • AntiStumbler. Programi kao što su NetStumbler i MacStumbler ( Riža. 6), koristite null SSID za otkrivanje pristupnih točaka. Ovi SSID-ovi djeluju kao emitiranje i prisiljavaju druge pristupne točke da pošalju svoje SSID-ove čvoru koji zahtijeva. Ova je značajka korisna pri traženju dostupnih bežičnih mreža. Predprocesor AntiStumbler prepoznaje da se s jedne MAC adrese šalje previše nultih SSID-ova i može pokrenuti alarm.
    Bilješka. Ovaj predprocesor ne dopušta definiranje programa kao što su Kismet, budući da samo pasivno slušaju 802.11 okvire i ne šalju zahtjeve.
  • DeauthFlood. Ovaj napad je detaljno opisan u našem materijal o WEP hakiranju. Koristi se za odspajanje hostova od pristupnih točaka i prisiljavanje na pokušaj ponovnog povezivanja, što daje dodatne pakete za analizu tijekom WEP krekiranja. Osim toga, napad se može koristiti za "uskraćivanje usluge" (DoS) pristupne točke. Preprocesor DeauthFlood prepoznaje ovu vrstu napada brojeći broj deautentifikacijskih okvira po jedinici vremena i, ako je potrebno, aktivira alarm.
  • AuthFlood. Napad je sličan prethodnom, ali pretprocesor AuthFlood detektira previše pokušaja autentifikacije, odnosno pokušaja spajanja klijenata na bežičnu mrežu, što se može iskoristiti kao DoS napad na pristupnu točku.
  • MacSpoof. Jedan od najučinkovitijih načina za ograničavanje pristupa pristupnoj točki je stvaranje popisa MAC adresa dopuštenih klijenata. Nažalost, napadač može lažirati MAC adresu svog računala i spojiti se na pristupnu točku. MacSpoof predprocesor provjerava brojeve paketa i, ako se otkriju bilo kakve nedosljednosti, koje ukazuju na moguće lažiranje MAC adrese, pokreće alarm.
  • RogueAP. Tuđe (“neprijateljske”) pristupne točke maskiraju se u obične tako da se korisnik greškom povezuje na njih i prenosi sve osobne podatke. Ovaj predprocesor još nije implementirano, međutim, u budućim izdanjima moći će prijaviti blizinu tuđih pristupnih točaka.

Osim toga, Snort Wireless uključuje mnogo unaprijed definiranih pravila za veliki broj situacija. Ovisno o konfiguraciji mreže, neka od pravila mogu biti vrlo prikladna. Na primjer, sva web pravila, ako web poslužitelj radi na vašoj mreži. Da biste aktivirali pravilo, jednostavno skinite komentar s odgovarajućeg retka u konfiguracijskoj datoteci Snort. Pojedinačni skupovi pravila spremaju se u direktorij prema zadanim postavkama /etc/nort/rules, a svaki od njih moguće je pregledati pomoću uređivača teksta. Pravila u setovima postavljena su potpuno isto kao i u samom Snortu. Usput, slijedeći primjere, lako možete sami napisati pravilo.


Riža. 7. Pravilo Snort otkrilo je stroj za skeniranje portova.

U nastajanju

Kada je datoteka frknuti.konf spremni, možete pokrenuti Snort. Prilikom pokretanja možete odrediti mnoge parametre koji određuju sve, od izlaza do načina rada. Prvo, pokrenimo Snort sa sljedećim parametrima (u Telnet opcijama).

frknuti -D -A pun

Ova naredba pokreće Snort kao pozadinski proces, tako da možete mirno nastaviti raditi s ljuskom. Kada se aktivira alarm, potpuni podaci bit će zabilježeni u dnevniku.

Sada kada Snort radi, možete smisliti dodatne načine za zaštitu svoje bežične mreže. Recimo da se možete obratiti Kismet- uslužni program sličan Snortu koji se može koristiti kao dodatni sustav za otkrivanje upada. Snort radi samo na trećem sloju OSI modela - mrežnom sloju, koji je odgovoran za IP i drugi promet. A Kismet radi na drugoj razini - razini kanala, odgovornoj za Ethernet okvire. Stoga će uvođenje obaju sustava u paru značajno povećati ukupnu sigurnost.


Riža. 8. Kismet na poslu.

Možete konfigurirati Snort za pisanje zapisa u bazu podataka, što olakšava daljnju analizu. Daniel Walther je napisao upravljanje o tome kako postaviti snimanje u bazama podataka MySQL i PostgreSQL. Ako koristite Gentoo Linux na računalu koje djeluje kao pristupna točka, onda možete ići dalje: instalirajte Apache i konfigurirajte prikaz zapisa putem weba. Na stranici Gentoo Wiki Možete pronaći detaljan opis takve postavke.


Riža. 9. Pregledajte Snort zapisnike putem MySQL-a, ACID-a i Apachea.

Zaključak

Dotakli smo se samo osnovnih principa rada Snorta. U principu, na temelju materijala u članku, možete konfigurirati sustav na pristupnoj točki. Međutim, Snort ima puno više značajki nego što je opisano u članku. Konkretno, možete stvoriti vlada samostalno, koji će pomoći da se Snort dublje integrira u mrežu.

Na kraju, ne zaboravite da za učinkovitu zaštitu vaše bežične mreže i Snort i pravila moraju biti ažurni. Ne zaboravite redovito posjećivati Snort Wireless, i ipkg praćenje paketa(za OpenWRT instalacije) ili Stranica s pravilima Snorta(za druge).

Kao i drugi sigurnosni alati, Snort nije lijek za zaštitu vaše mreže. Ovo je samo jedan od bastiona vaše tvrđave. Ali u obrambenom kompleksu to funkcionira jako dobro.


Datum objave: 21. rujna 2009
Prijevod: S.Vladimirsky
Prijelazni datum: 02.10.2009

Ovaj vodič opisuje kako instalirati i konfigurirati sustav za otkrivanje upada (IDS) sa paketima Snort, ACIDBASE (jezgrena analiza i sigurnost), MySQL i Apache2 na Ubuntu 9.04 pomoću upravitelja paketa Synaptic Ubuntu. Snort će vam pomoći nadzirati vašu mrežu i upozoriti vas na moguće prijetnje. U ovom slučaju, Snort će generirati log datoteke za MySQL bazu podataka, a ACIDBASE će vam omogućiti da ih prikažete u grafičkom sučelju u web pregledniku.

1. Priprema sustava i instaliranje softvera.

1.1 Instalacija.

Preuzmite Desktop Ubuntu 9.04 32-bitni ili 64-bitni odavde: http://www.ubuntu.com/getubuntu/download

1.2 Postavke sustava i mreže

Spojite računalo na mrežu. Iako sustav može raditi s različitim postavkama, poželjna je sljedeća konfiguracija:

  • Nalazi se u demilitariziranoj zoni (DMZ).
  • Statička IP adresa skrivena iza vatrozida koji koristi NAT.
  • Spojite se na priključak za nadzor na mrežnom prekidaču (SWITCH).

Stvorite novog administratora pod nazivom <ваше_имя> i lozinku <ваш_пароль> .

1.3 Instalacija softvera.

Prva stvar koju trebate učiniti nakon završetka instalacije je instalirati sva ažuriranja koja preporučuje Ubuntu. Za pristup ažuriranjima idite na izbornik: Sustav > Administracija > Upravitelj ažuriranja. Unesite svoju lozinku i odaberite Provjeri. Odaberite Instaliraj ažuriranja.

S radne površine idite na Sustav > Administracija > Synaptic Package Manager. Unesite svoju lozinku i odaberite Traži.

Pronađite i instalirajte sljedeće pakete:

  • Acidbase sa svim zavisnim paketima
  • Snort-MySQL sa svim ovisnim paketima
  • MySql-server-5.0 sa svim ovisnim paketima
  • Libpcap0.8-dev
  • libmysqlclient15-dev
  • MySql-klijent-5.0
  • Bizon
  • Apache2
  • Libapache2-mod-php5
  • Php5-gd
  • Php5-mysql
  • libphp-adodb
  • Php-kruška

2. Dobijte prava superkorisnika

S radne površine idite na izbornik: Aplikacije\u003e Pribor\u003e Terminal (Aplikacije\u003e Dodaci\u003e Terminal) i unesite naredbu:

$ sudo -i
$ unesite lozinku

3. Postavljanje Snorta

Kako biste postavili prilagođene postavke, morate urediti datoteku postavki snort.conf.

Koristeći uređivač teksta (nano, vi, vim ili neki drugi), otvorite datoteku /etc/snort/snort.conf.

# vim /etc/snort/snort.conf

Promijenite var HOME_NET bilo koju varijablu u var HOME_NET 192.168.1.0/24 (adresa vaše kućne mreže može se razlikovati od 192.168.1.0). Ako nadzirete više mreža, morate navesti sve te mreže na sljedeći način: var HOME_NET. Promijenite var EXTERNAL_NET any u var EXTERNAL_NET !$HOME_NET (postavlja sve varijable osim vanjske varijable HOME_NET).

Promijenite var RULE_PATH ../rules u var RULE_PATH /etc/snort/rules. Pomaknite se do točke gdje je navedena linija # output database: log, mysql, user=, uklonite znak # s početka retka.

Primjer: izlazna baza podataka: log, mysql, user= lozinka= dbname=nort host=localhost

(vidi gore kada je kreiran novi korisnik).

Zabilježite korisničko ime, lozinku i naziv baze podataka (dbname). Ove informacije će vam trebati prilikom instalacije MySQL baze podataka. Spremite promjene i izađite.

4. Instaliranje baza podataka Snort i Archive u MySQL

4.1 Instaliranje MySQL-a

Prijavite se na MySQL poslužitelj.

# mysql -u root -p

Ponekad se dogodi da lozinka nije postavljena, pa samo pritisnite "Enter".

Ako se ne možete prijaviti, pokušajte ponovo s gornjom naredbom i unesite YOUR_PASSWORD.

Ako nema lozinke, trebate postaviti lozinku za račun superkorisnika.

Napomena: Kada ste na MySQL poslužitelju, upit prikazuje grupu znakova "mysql>" umjesto simbola "#".

mysql> stvoriti korisnika @localhost;
mysql> POSTAVITE LOZINKU ZA r@localhost=LOZINKA( );
mysql> POSTAVITE LOZINKU ZA root@localhost=LOZINKU( );

4.2 Stvaranje baze podataka Snort

mysql> stvoriti bazu podataka snort; mysql> odobri INSERT,SELECT na root.* za snort@localhost; mysql> odobri CREATE,INSERT,SELECT,DELETE,UPDATE na snort.* za @localhost; mysql> odobri CREATE,INSERT,SELECT,DELETE,UPDATE na snort.* za snort;

4.3 Stvaranje arhivske baze podataka

mysql> stvoriti arhivu baze podataka; mysql> odobri CREATE,INSERT,SELECT,DELETE,UPDATE na arhivi.* za @localhost; mysql> odobri CREATE,INSERT,SELECT,DELETE,UPDATE na arhivi.* za arhiviranje; mysql> izlaz

4.4 Izrada tablica u bazama podataka Snort i Archive

Koristit ćemo shemu Snort za raspored baza podataka Snort i Archive.

# cd /usr/share/doc/snort-mysql # zcat create_mysql.gz | mysql -u -h lokalni host -p snort # zcat create_mysql.gz | mysql -u -h lokalni host -p arhiva

4.5 Potvrda o izradi baza podataka i novoizrađenih tablica.

Prijavite se na MySQL poslužitelj i provjerite baze podataka koje smo upravo stvorili i tablice koje se nalaze u tim bazama podataka. Ako je sve uspješno kreirano, vidjet ćete četiri (4) baze podataka (mysql, test, snort i arhiva) u mysql bazama podataka i približno 16 tablica u svakoj bazi podataka.

# mysql -u root -p mysql> prikaži baze podataka; mysql> koristiti snort; mysql> prikaži tablice; mysql> koristi arhivu; mysql> prikaži tablice; mysql> izlaz

4.6 Testiranje Snort-a

U terminalskom načinu rada upišite naredbu: # snort -c /etc/snort/snort.conf

Ako je sve prošlo dobro, trebali biste vidjeti odgovor u ascii kodovima.

Za završetak testa pritisnite ctrl + c

5. Konfiguriranje Apache2

Paket Apache2 već mora biti instaliran na vašem računalu.

Koristeći svoj omiljeni uređivač teksta, kreirajte datoteku pod nazivom test.php u mapi /var/www/.

# vim /var/www/test.php

Napišite u njemu:

Spremite promjene i zatvorite ovu datoteku.

Uredite datoteku /etc/php5/apache2/php.ini

# vim /etc/php5/apache2/php.ini

Ispod retka "Dinamička proširenja" dodajte sljedeće:

Ekstenzija=mysql.so ekstenzija=gd.so

Ponovno pokrenite Apache2.

# /etc/init.d/apache2 ponovno pokretanje

Dobijte IP adresu svog radnog računala.

# ifconfig -a

Otvorite svoj web preglednik i idite na http://VAŠA_IP_ADRESA/test.php.

Ako je sve prošlo dobro, prikazat će se PHP podaci.

6. Konfiguriranje mapa

Premjestite ADOdb u mapu /var/www.

# mv /usr/share/php/adodb /var/www/

Napravite mapu pod nazivom web u www i premjestite ACIDBASE u nju.

# mkdir /var/www/web # mv /usr/share/acidbase /var/www/web/

Privremeno dopustite pisanje u mapu acidbase baze podataka da biste je instalirali.

# chmod 777 /var/www/web/acidbase

# cd /var/www/web/acidbase # mv base_conf.php base_conf.old

Za rad u ACIDBASE pokrenite naredbu:

#pear instalirajte Image_Color

7. Instaliranje ACIDBASE za baze podataka Snort i Archive

7.1 Instaliranje baze podataka Snort putem web preglednika

Korak 1 od 5:

Unesite put do ADODB-a. Ovo je /var/www/adodb.

Korak 2 od 5:

Vrsta glavne baze podataka = MySQL
Naziv baze podataka = snort
Host baze podataka = localhost (lokalna lokacija baze podataka Snort),
Korisničko ime baze podataka =<ваше_имя_пользователя>(korisničko ime baze podataka Snort)
Lozinka baze podataka =<ваш_пароль>(Lozinka za Snort bazu podataka)

Vrsta arhivske baze podataka = MySQL (vrsta arhivske baze podataka),


Korisničko ime baze podataka =<ваше_имя_пользователя>
Lozinka baze podataka =<ваш_пароль>

Korak 3 od 5:

Ako želite koristiti autentifikaciju, unesite svoje korisničko ime i lozinku (korisnik:<ваше_имя>, lozinka:<ваш_пароль>).

Korak 4 od 5:

Pritisnite Create BASE AG.

Korak 5 od 5:

Kada je korak 4 dovršen, na dnu kliknite: Sada nastavite na korak 5.

Označite ovu stranicu.

7.2 Stvorite mapu za arhivsku ACIDBASE bazu podataka

Da bi arhivska baza podataka radila ispravno, arhivska mapa mora biti kreirana u mapi ACIDBASE.

# mkdir /var/www/web/acidbase/archive # cd /var/www/web/acidbase/archive # cp -R * /var/www/web/acidbase/archive # chmod 777 /var/www/web/acidbase/archive

Preimenujte postojeću datoteku base_conf.php u base_conf.old.

# cd /var/www/web/acidbase/archive # mv base_conf.php base_conf.old

7.3 Instaliranje arhivske baze podataka putem web preglednika.

Otvorite web preglednik i idite na http://VAŠA_IP_ADRESA/web/acidbase/archive/setup.

Na prvoj stranici kliknite Nastavi.

Korak 1 od 5:

Unesite put do ADODB-a. Ovo je /var/www/adodb. >

Korak 2 od 5:

Vrsta arhivske baze podataka = MySQL
Naziv baze podataka = arhiva (Arhiva baze podataka),
Host baze podataka = localhost (lokalna lokacija arhivske baze podataka),
Korisničko ime baze podataka =<ваше_имя_пользователя>(korisničko ime baze podataka arhive),
Lozinka baze podataka =<ваш_пароль>(Lozinka za arhivsku bazu podataka)

Korak 3 od 5:

Ako želite koristiti autentifikaciju, unesite svoje korisničko ime i lozinku (korisnik:<ваше_имя_пользователя>, lozinka:<ваш_пароль>).

Korak 4 od 5:

Kliknite Create BASE AG.

Korak 5 od 5:

Kada je korak 4 dovršen, kliknite na dnu: Sada nastavite na korak 5 (Sada idite na korak 5).

8. Pokrenite Snort i provjerite status usluga.

Da biste pokrenuli Snort, upišite u terminalskom načinu rada:

# snort -c /etc/nort/snort.conf -i eth0 -D

Ova naredba pokreće snort koristeći sučelje eth0 u demo modu.

Možete provjeriti radi li usluga pomoću sljedeće naredbe:

# ps aux | grep frknuti

Ako je usluga pokrenuta, vidjet ćete nešto slično sljedećem snort -c /etc/snort/snort.conf -i eth0 -D .

Provjerite rade li sve potrebne usluge pokretanjem sljedećih naredbi:

# /etc/init.d/mysql status # /etc/init.d/apache2 status # /etc/init.d/snort status

Ako su usluge pokrenute, vidjet ćete poruku odgovora .

Ako je potrebno, pokrenite naredbu
# /etc/init.d/ ponovno pokretanje
za svaku od usluga koju je potrebno ponovno pokrenuti.

Uvod

Glavni cilj ovog rada je opisati i proučiti popularnu IDS aplikaciju Snort. Snort je veliki projekt otvorenog koda koji koriste mnogi mrežni administratori za hvatanje zlonamjernih potpisa i upozoravanje kada je njihova mreža napadnuta. Snort presreće sav promet s mrežnih sučelja, provjerava pakete za sumnjive zahtjeve i pokušaje upada.

Njegova glavna prednost je njegova pristupačnost i mogućnost uređivanja njegovog rada kako bi odgovarao vašoj specifičnoj radnoj mreži. Program je osmišljen za rad u malim i velikim organizacijama. Također je važna mogućnost uređivanja vlastitih jedinstvenih pravila na temelju sigurnosnih zahtjeva određene organizacije (na primjer, zabrana pristupa osoblja društvenim mrežama).

Nedostaci uključuju neugodnost postavljanja i instalacije na nekim operativnim sustavima (na primjer, Windows), nedostatak jedinstvenog, dovoljno cjelovitog i detaljnog opisa postavljanja i razvoja vlastitog skupa pravila.

Također, vrlo je teško odsjeći lažne alarme, budući da različita poduzeća često imaju različita ograničenja, a potrebno je prilično fino podešavanje pravila. Mnoge načine za pokretanje aplikacije pomoću tipki koje razlikuju velika i mala slova vrlo je teško zapamtiti i mogu dovesti do pogrešnog ispisa.

Glavni zadatak ovog rada je razumijevanje funkcionalnih značajki IDS Snort-a i provjera rada aplikacije izvođenjem raznih vrsta mrežnih napada na nju. Saznajte postoje li slični IDS-ovi u prikladnijem formatu. Kako Snort komunicira s bazama podataka. Razvijte nekoliko jedinstvenih pravila i testirajte njihovu funkcionalnost.

Instalacija i konfiguracija IDS Snort

Snort: Instalacija na Windows XP

Kada instalirate Snort na Windows operativni sustav, možete naići na neke poteškoće. Stoga se ovaj rad usredotočuje na prilično detaljan dio opcija instalacije i konfiguracije. Prvo trebate preuzeti potrebne programe na svoje radno računalo.

Pravila za Snort.

Sve navedeno preuzeto je sa službenih stranica ovih aplikacija.

Winpcap je aplikacija koja hvata i filtrira pakete na razini kernela. Ovo je analogno ugrađenom Unix libpcap upravljačkom programu. Instalacija neće uzrokovati posebne neugodnosti; pokreće se putem običnog instalacijskog programa. Nakon toga trebate preuzeti sam IDS sa službene stranice, nakon čega odatle preuzimamo najnoviju arhivu s pravilima. Sljedeći korak bit će potpuno kopiranje svih mapa koje su bile u arhivi s pravilima u korijenski direktorij aplikacije, potpuno zamjenjujući sadržaj tamo gdje je to potrebno. Zatim, da bi program ispravno radio, morat ćete napraviti važne promjene u konfiguracijskoj datoteci.

var RULE_PATH c:snort ules

var SO_RULE_PATH c:snortso_rules

var PREPROC_RULE_PATH c:snortpreproc_rules

imenik dinamičkog predprocesora c:snortlibsnort_dinamičkipreprocesor

dynamicengine c:snortlibsnort_dynamicenginesf_engine.dll

#dynamicdetection direktorij /usr/local/lib/snort_dynamicrules

Nalazimo slične retke u konfiguracijskoj datoteci i zamjenjujemo ih onima navedenima iznad. Nakon toga pokušavamo testirati aplikaciju. Pokrenite naredbeni redak i idite u direktorij aplikacije u odjeljku "bin". Unesite naredbu "šmrkati -W"

Riža. 1.1.

Ovom naredbom provjeravamo funkcionalnost aplikacije za pregled naših sučelja. Nakon što se uvjerimo da ih ima više, izaberemo onu koja je spojena na radnu mrežu kako bismo započeli presretanje paketa i praćenje rada IDS-a.

C:Snortinsnort -i 3 -c C:snortetcsnort.conf -l C:snortlog -A konzola

Pogledajmo sada naredbu koju smo unijeli. "- i 3" znači da ćemo pogledati sučelje koje ima ID= 3 na popisu naših sučelja. Zatim smo odredili put do konfiguracijske datoteke i put do direktorija gdje treba biti upisan “log” presretnutih paketa. "-A konzola" znači da će paketi alarma biti otkriveni u našoj konzoli. Ako se tijekom obrade pojave problemi, otklanjamo ih čim se identificiraju. Snort označava niz i vrstu pogreške u izradi. Ako je sve radilo, nećemo vidjeti ništa dok se ne pokrene jedno od pravila pokretanja. Da bismo upotrijebili jedan od njih, pokušajmo simulirati mrežni napad i lansirati sumnjivi paket preko naše lokalne mreže. Da biste to učinili, na primjer, otvorite naredbeni redak i unesite sljedeće: “Ping 192.168.1.16”. Snort će presresti pokušaj slušanja hosta na 192.168.1.1624 i prikazati poruku i informacije o sumnjivoj aktivnosti na mreži. Nažalost, takvi IDS sustavi imaju ozbiljan nedostatak - lažne pozitive. S tim u vezi, kako bi Snort bio koristan i ne bi dovodio u zabludu, potrebno je dostatno i jasno definirati pravila i razlikovati mreže koje se gledaju kako bi se izbjegle ove lažne pozitive.


Riža. 1.2.

Sada će se u konzoli na kojoj radi naš IDS pojaviti poruka o sumnjivom paketu koji podsjeća na "slušanje". Ovo uključeno pravilo pokazalo je da je Snort potpuno funkcionalan. Razmotrimo njegove načine rada i sintaksu pravila za daljnji rad.

Milijarde paketa podataka prenose se preko korporativnih mreža svaki dan. Neki od njih su opasni; Autori takvih paketa poduzeli su posebne mjere za zaobilaženje vatrozida i probijanje obrambenih linija duž perimetra mreža, ometajući rad svih sustava koji se nađu na putu. Destruktivni učinci upakiranih napada kao što su Code Red, Nimda, SQL Slammer i MSBlaster dobro su poznati. Svi ovi malware iskorištavaju pouzdane protokole (kao što je HTTP) ili mrežni promet iz Microsoftovih sustava. Takvi se protokoli ne mogu jednostavno uzeti i blokirati, pa administratori obično pokušavaju uhvatiti opasan promet što je brže moguće korištenjem sustava za detekciju neovlaštenog pristupa, Network Intrusion Detection System (NIDS), kako bi na vrijeme odgovorili na prijetnju.

Postoji nekoliko komercijalno dostupnih NIDS-ova koji se razlikuju po mogućnostima i cijeni. Općenito, svi oni uspješno rade. Svi komercijalni paketi na koje sam naišao bili su izvrsni. Ali što bi organizacije sa skromnim proračunima trebale učiniti ako otkrivanje upada nije prioritet? Za takve slučajeve tu je Snort - moćni besplatni NIDS paket. Za razliku od mnogih paketa otvorenog koda, kompatibilan je sa sustavom Windows.

Upoznavanje Snorta

Izvorni programer Snorta, Martin Resch, učinio je program dostupnim otvorenoj zajednici pod uvjetima GNU Opće javne licence (GPL). Povijest ovog paketa započela je 1998. godine i od tada je više puta dokazao svoju pouzdanost. Zahvaljujući doprinosima otvorenih članova zajednice i mrežnih administratora diljem svijeta, Snort je postao vrlo moćan proizvod. Trenutna verzija pruža analizu mrežnog prometa u stvarnom vremenu i bilježenje IP prometa pri brzinama Fast Ethernet i Gigabit Ethernet.

Michael Davis prenio je Snort 1.7 na Win32 platformu, čineći ga dostupnim Windows zajednici. Chris Reid je tada preuzeo zadatak sastavljanja novih verzija Snort-a u gotove izvršne datoteke koje se mogu lako implementirati u Windows okruženju.

Administratori koji nisu upoznati s NIDS-om mogu ovaj alat smatrati posebnom vrstom mrežnog analizatora. NIDS ispituje svaki paket koji prolazi kroz sučelje, tražeći poznate uzorke u sadržaju gdje je zlonamjerni kod obično skriven. Sa Snortom možete izvoditi operacije pretraživanja i podudaranja na svakom paketu koji prolazi kroz mrežu organizacije i otkrivati ​​mnoge vrste napada i nelegitimnog prometa u stvarnom vremenu.

Zahtjevi za Snort

Da biste pokrenuli Snort, potrebno vam je Windows računalo opremljeno barem jednim mrežnim adapterom. Bolje je imati dva mrežna adaptera, jedan spojen na kontroliranu mrežu, a drugi na proizvodnu mrežu; potonji prosljeđuje izvješća. Snort je kompatibilan ne samo sa sustavom Windows 2000 Server i novijim verzijama, već i sa sustavom Windows XP Professional Edition, XP Home Edition i Windows 2000 Professional. Nije potrebna poslužiteljska licenca. Spajam svoje XP Pro prijenosno računalo s mnogim klijentskim mrežama svaki dan i obično pokrećem Snort kao uslugu. Na ovaj način program radi u pozadini, otkrivajući bilo kakve napade na moj sustav koji dolaze s te klijentske mreže. Koristim Snort kao prijenosni senzor - program se ponaša kao NIDS za bilo koji priključak na koji je prijenosno računalo spojeno.

U malim mrežama, Snort se može postaviti na početni poslužitelj. Nije potreban namjenski stroj velike snage za otkrivanje pokušaja neovlaštenog pristupa. Na primjer, čuo sam za Snort čvorove temeljene na FreeBSD-u s procesorima od 1 GHz i 1 GB RAM-a koji uspješno opslužuju mreže s 15 000 korisnika i više T-3 WAN veza. Zahvaljujući učinkovitosti Snortovog izvornog koda, za pokretanje programa nije potreban vrlo moćan stroj.

Gdje je najbolje mjesto na mreži za lociranje NIDS-a? Prva pomisao je postaviti uređaj ispred vatrozida. Ovdje će NIDS detektirati najviše napada, ali će i broj lažno pozitivnih biti najveći, a administrator će dobiti puno beskorisnih upozorenja o opasnosti. Ne biste trebali brinuti o prijetnjama koje zaustavlja vatrozid; važnije je otkriti opasne programe koji stoje iza njega. Stoga je ipak bolje smjestiti Snort iza vatrozida.

Međutim, ako se korisnici spajaju na mrežu putem VPN veze (preko interneta ili bežične veze), ima smisla postaviti NIDS dalje iza vatrozida, kao što je iza VPN poslužitelja ili koncentratora, gdje se paketi dešifriraju dok izlaze iz VPN tunel. U suprotnom, NIDS se neće moći suprotstaviti zlonamjernom softveru ugrađenom u VPN promet, jer će analizirani paketi biti šifrirani. Isto se odnosi na šifrirani SMTP promet, šifrirane .zip datoteke priložene porukama e-pošte i druge vrste šifriranih podataka.

U idealnom slučaju, NIDS bi trebao biti postavljen dovoljno daleko iza bilo koje komponente koja šifrira promet i dovoljno blizu mrežnog perimetra za analizu prometa na što je moguće više segmenata i podmreža. U komutiranom mrežnom okruženju, switch obično zahtijeva dijagnostički port za prikupljanje svih paketa koji prolaze kroz mrežu. Kao rezultat toga, NIDS ima praktičan pristup cjelokupnom mrežnom prometu.

Sada kada ste upoznati sa Snortom i znate njegove zahtjeve za hosting, možete instalirati i testirati NIDS. Za više informacija o Snortu, pogledajte dokumente povezane na bočnoj traci "Web resursi". Ovaj proces se sastoji od sedam faza:

  1. Instaliranje WinPcapa
  2. Instaliranje Snorta
  3. Testiranje Snorta
  4. Postavljanje Snorta
  5. Postavljanje pravila
  6. Postavljanje upozorenja i zapisa
  7. Pokreni kao uslugu

Faza 1. Instaliranje WinPcapa

Snort je u biti mrežni analizator promiskuitetnog načina rada, pa zahtijeva podršku upravljačkog programa. Ovu podršku pruža WinPcap. Loris Digioanni stvorio je WinPcap prijenosom libpcap drajvera za snimanje paketa, široko korištenog među Unix korisnicima, u Windows okruženje. WinPcap uključuje filtar paketa na razini jezgre, DLL niske razine (packet.dll) i biblioteku visoke razine neovisnu o sustavu (wpcap.dll, temeljena na libpcap 0.6.2).

WinPcap se može preuzeti s http://winpcap.polito.it. Upravljački program je kompatibilan sa sustavima Windows Server 2003, XP, Windows 2000, Windows NT, Windows Me i Windows 9x. WinPcap također podržava open-source Ethereal packet sniffer, koji se može nabaviti na . Koristeći Ethereal, možete provjeriti je li Snort ispravno instaliran.

Nakon preuzimanja WinPcap instalacijske datoteke s mreže, samo trebate proći kroz nekoliko ekrana postupka instalacije. Najveći napor od strane korisnika iziskuje ekran na kojem se morate složiti s uvjetima licence.

Korak 2: Instalirajte Snort

Sljedeći korak je instaliranje Snorta. Najnovija verzija može se pronaći na web stranicama CodeCraft Consultants ( http://www.codecraftconsultants.com/snort.aspx) ili Snort.org ( http://www.snort.org). Preporučam preuzimanje Snort-a od CodeCraft Consultants jer možete dobiti samoraspakirajuću izvršnu datoteku s te stranice. Program čak vodi korisnika kroz osnovne korake instaliranja Snorta na računalo. U pripremi ovog članka korištena je najnovija verzija Snort 2.1.1, verzija 18. U međuvremenu su objavljene ažurirane verzije.

Kada pokrenete instalacijski program, u prvom dijaloškom okviru morate odabrati način konfiguracije baze podataka za pohranjivanje rezultata. Ako koristite MySQL ili bazu podataka kompatibilnu s ODBC-om, možete prihvatiti zadani način rada (Slika 1). Ali ako ćete pohraniti protokole u Microsoft SQL Server ili Oracle bazu podataka, tada trebate odabrati odgovarajući način rada i provjeriti je li potreban klijentski program dostupan na stroju. U pripremi ovog članka korišten je zadani način rada.

Sljedeći korak je identificirati Snort komponente koje želite instalirati. Standardni skup (Ekran 2) je u redu, stoga preporučujem da ga prihvatite i kliknete Dalje. U dijaloškom okviru Choose Install Location morate navesti direktorij u koji će Snort biti postavljen. Nakon unosa naziva direktorija kliknite Dalje kako biste dovršili postupak instalacije.

Zaslon 2: Odabir instalacijskih komponenti

Korak 3: Testirajte svoju instalaciju Snorta

Nakon završetka procesa instalacije, Snort je potrebno testirati. Prema zadanim postavkama, izvršnoj datoteki Snort treba reći dvije lokacije: gdje da piše zapisnike i gdje da pronađe konfiguracijsku datoteku (snort.conf). Ove informacije daje korisnik kada pokreće Snort iz naredbenog retka pomoću prekidača -l odnosno -c. Na primjer, naredba

Snort -l F:snortlog -c F:snortetcsnort.conf -A konzola

govori programu da se zapisi trebaju pisati u direktorij F:snortlog i da se snort.conf nalazi u direktoriju F:snortetc. Prekidač -A određuje metodu za prijenos upozorenja koje generira program. U ovom primjeru, upozorenja se prikazuju na zaslonu konzole kako bi administrator mogao provjeriti radi li Snort ispravno. Napominjemo da je u članku naredba ispisana u više redaka, ali u prozoru s naredbama mora se unijeti u jednom redu. Isto se odnosi i na ostale višelinijske naredbe u ovom članku. Mnogi prekidači naredbenog retka Snort razlikuju velika i mala slova, pa naredbe morate unijeti točno onako kako su upisane.

Ako sustav ima više mrežnih sučelja, tada prema zadanim postavkama Snort sluša prvo sučelje koje otkrije. Ako je redoslijed mrežnih sučelja na stroju nepoznat, možete pokrenuti naredbu Snort s jednim prekidačem -W. Snort navodi nazive i brojeve mrežnih sučelja redoslijedom kojim ih program otkriva. Da biste prisilili Snort da koristi određeno mrežno sučelje, morate unijeti -i prekidač s brojem sučelja kada pokrećete Snort. Nakon pokretanja Snort-a, zaslon će prikazati informacije slične onima prikazanima u ekran 3 .

Nakon što pokrenete Snort, možete testirati njegovu osjetljivost slanjem posebno pripremljenog prometa NIDS-u. Jedan od najlakših načina za pokretanje upozorenja je pozivanje tumača naredbi (cmd.exe) na udaljenom računalu kao dio HTTP URL zahtjeva (uobičajena tehnika za crve Code Red i Nimda). Za simulaciju ove faze napada pristupite bilo kojem URL-u i dodajte znakove /cmd.exe na kraj zahtjeva. Na primjer, kao odgovor na poziv http://www.a-website-that-I-can-trust.com/cmd.exe, Snort bi trebao prikazati upozorenje u naredbenom prozoru sličnog izgleda kao prva tri upozorenja na ekran 4. Ove se poruke zapisuju u dnevnik F:snortlog.

Ciljane web stranice za testiranje treba pažljivo odabrati. S tehničke točke gledišta, većina administratora web stranica takve bi radnje smatrala pokušajem hakiranja. Ovaj pokušaj neće uspjeti (osim ako postoje ozbiljne pogreške u konfiguraciji poslužitelja), ali preporučujem testiranje samo s vašim vlastitim poslužiteljem ili poslužiteljem od povjerenja čiji su administratori upoznati s testiranjem.

Ako testiranje nije moguće, drugi način testiranja Snorta je slanje neuobičajeno dugog echo zahtjeva preko mreže na poslužitelj ili računalo na kojem je Snort pokrenut. Na primjer, možete koristiti naredbu Ping

Ping -l 32767 ip_adresa

gdje je ip_address IP adresa ciljnog poslužitelja ili Snort računala. Ova naredba mora poslati vrlo dugačak paket (točna duljina - 32 KB), što je očito neobično za naredbu Ping. Snort bi trebao otkriti ovaj paket, kao što se vidi u donjih osam upozorenja na ekran 4 .

Ako primite upozorenja, možete početi konfigurirati Snort za svoje specifične uvjete. U protivnom se trebate vratiti na postupak instalacije i provjeriti je li neki korak preskočen.

Korak 4: Postavljanje Snorta

Podaci o osnovnoj konfiguraciji Snort-a pohranjeni su u datoteci snort.conf, koja se prema zadanim postavkama nalazi u direktoriju %systemdrive%snortetc. Datoteka se može ostaviti u ovoj mapi ili premjestiti u drugu ako navedete put do programa u naredbenom retku.

Detaljan opis svih parametara prisutnih u snort.conf mogao bi ispuniti cijeli broj časopisa, budući da je Snort nevjerojatno moćan program. Za sada ćemo razmotriti samo njegove glavne parametre.

Kako biste razlikovali dolazni promet od odlaznog, trebate reći Snortu hostove i IP adrese vaše poslovne mreže. Za unos ove informacije, varijabla HOME_NET mora biti postavljena u datoteci snort.conf. Trebao bi pronaći liniju

Varijanta HOME_NET bilo koja

i zamijenite ga nizom IP adresa. Na primjer, možete odrediti jedan raspon

Varijanta HOME_NET 192.168.0.1/24

ili nekoliko raspona. Kada navodite više raspona, skup raspona morate staviti u uglate zagrade i svaki raspon odvojiti zarezom. Ne možete unositi razmake između raspona IP adresa. Na primjer, linija

Varijanta HOME_NET

govori Snortu da podmreže 10.0.1.0/24, 10.0.2.0/24 i 10.0.3.0/24 pripadaju mreži poduzeća. Prema zadanim postavkama, Snort tretira sve druge adrese kao vanjske. Možete eksplicitno odrediti koje mreže treba smatrati vanjskim postavljanjem varijable EXTERNAL_NET. U datoteci snort.config trebate pronaći redak

Varijanta EXTERNAL_NET bilo koja

i zamijenite je IP adresom mreže koju treba smatrati vanjskom. Međutim, općenito je najbolje ostaviti EXTERNAL_NET varijablu postavljenu na bilo koju za početak.

Nakon što provedete neko vrijeme, možete identificirati vrste poslužitelja koje vaša tvrtka ima i njihove lokacije. Ove informacije sadržane su u varijablama DNS_SERVERS, SMTP_SERVERS, HTTP_SERVERS, SQL_SERVERS i TELNET_SERVERS u sljedećim redcima datoteke snort.conf:

Var DNS_SERVERS $HOME_NET var SMTP_SERVERS $HOME_NET var HTTP_SERVERS $HOME_NET var SQL_SERVERS $HOME_NET var TELNET_SERVERS $HOME_NET var SNMP_SERVERS $HOME_NET

Prema zadanim postavkama, svih šest varijabli poslužitelja postavljeno je na $HOME_NET; to znači da će Snort pratiti sve vrste napada na sve sustave u HOME_NET dometu. Ova konfiguracija je sasvim prihvatljiva za malu mrežu čiji administratori toleriraju određeni broj lažnih upozorenja. Ali za praćenje gustog prometa, preporučljivo je fino podesiti Snort da provjerava samo dio potpisa za određene čvorove. Nema smisla štititi web poslužitelj koji pokreće samo Microsoft IIS od napada prekoračenja SQL međuspremnika. Da biste definirali određenu klasu hosta, morate zamijeniti $HOME_NET nizom IP adresa ciljnog poslužitelja prema formatu korištenom za varijablu HOME_NET. Na primjer, za varijablu DNS_SERVERS, umjesto $HOME_NET, trebali biste zamijeniti raspon IP adresa DNS poslužitelja.

Točnost podešavanja može se poboljšati identificiranjem portova koje koriste poslužitelji za određene aplikacije. Na primjer, ako web poslužitelji koriste poseban priključak 8080 za HTTP promet umjesto priključka 80 (ovaj se priključak obično koristi za web poslužitelje i preglednike), možete konfigurirati Snort da nadzire priključak 8080 promjenom varijable HTTP_PORTS. U snort.conf trebali biste pronaći redak

Varijanta HTTP_PORTS 80

i zamijenite je linijom

Varijanta HTTP_PORTS 8080

Slično, možete promijeniti portove za Oracle (definiran varijablom ORACLE_PORTS) i druge aplikacije. Poput varijable HTTP_PORTS, ORACLE_PORTS ima zadanu vrijednost 80. Ako poslužitelj umjesto toga koristi port 1521, niz bi izgledao ovako

Varijanta ORACLE_PORTS 1521

Dakle, postoje mnoge postavke koje se mogu konfigurirati u datoteci snort.conf. Trebali biste pregledati snort.conf kako biste pronašli postavke koje su najvažnije za vaše specifično okruženje i konfigurirali ih u skladu s tim.

Faza 5. Postavljanje pravila

Jedan od redaka u snort.conf sadrži varijablu RULE_PATH. Primjer ove linije:

Var. RULE_PATH ../rules

Opcija ../rules navodi da se pravila (tj. potpisi) mogu pronaći u direktoriju pravila, koji je na istoj razini kao i binarne datoteke Snort u strukturi direktorija. Tako, na primjer, ako instalirate Snort u generičku mapu F:snort, binarne datoteke Snort su u F:snortin, a pravila su u F:snort ules. Možete promijeniti varijablu RULE_PATH ako želite, ali zadana opcija je u redu.

Pravila su osnova Snorta. To su nizovi bajtova, napadačkih potpisa i drugih vrsta podataka koji, kada se otkriju, generiraju upozorenje. Snort ima više od 1500 gotovih potpisa.

Kako izgleda pravilo? Pravilo za cmd.exe koje je prekršeno tijekom Snort testa izgleda ovako: upozorenje tcp $EXTERNAL_NET bilo koji -> $HTTP_SERVERS $HTTP_PORTS (msg:"WEB-IIS cmd.exe pristup"; flow:to_server, created; content: " cmd.exe"; classtype:web-application-attack; sid:1002;). Pogledajmo glavne komponente pravila. Veza $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS navodi da treba analizirati samo promet koji dolazi u mrežu izvana (kao što je definirano varijablom EXTERNAL_NET). Parametar content: specificira traženje niza cmd.exe znakova u toku podataka. Kada Snort otkrije takav niz, generira upozorenje određeno parametrom msg:.

Kao što možete vidjeti iz primjera cmd.exe, pravila su uglavnom jednostavna. Možete stvoriti vlastita pravila za bilo koju vrstu prometa. Na primjer, ako želite otkriti neovlaštene pokušaje daljinskog pristupa direktoriju na računalu putem tumača naredbi, možete tražiti volumen u pogonu ili serijski broj volumena na priključcima gdje se rijetko nalaze, kao što su odlazni priključci. Zahvaljujući fleksibilnom pristupu dodjeljivanju pravila, administratori imaju opsežne mogućnosti konfiguracije za Snort.

Snortovih 1500 pravila pohranjeno je u različitim datotekama prema vrsti podataka koji se analiziraju. Na primjer, pravilo za cmd.exe nalazi se u datoteci web-iis.rules. Ako poduzeće ne koristi IIS, tada program ne treba otkrivati ​​IIS napade. Datoteka web-iis.rules može se jednostavno potpuno ukloniti iz konfiguracije pronalaženjem i komentiranjem retka

Uključi $RULE_PATH/web-iis.rules

u datoteci snort.conf. Da bi redak bio komentar, ispred njega stavite simbol (#):

# uključi $RULE_PATH/web-iis.rules

Prema zadanim postavkama, neke vrste datoteka s pravilima (na primjer, icmp-info.rules, chat.rules) predstavljene su komentarima u snort.conf. Zadana konfiguracija pravila u snort.conf je prilično dobra. Nakon aktiviranja blokiranih pravila, program obično generira mnogo nepotrebnih upozorenja.

Neke datoteke sadrže niz korisnih pravila, ali nekoliko pravila stvaraju previše nepotrebnih upozorenja. Da biste onemogućili određeno pravilo, morate označiti odgovarajući redak u datoteci pravila kao komentar. Ubuduće će Snort ignorirati ovo pravilo kada radi s datotekom.

Kada se pojave novi izvori prijetnji, datoteka s pravilima mora se ažurirati. Najbolji izvor za nova pravila je Snort.org. Ovo web mjesto nema uslugu automatskog ažuriranja, tako da će administrator morati redovito provjeravati ažuriranja kada se pojavi nova prijetnja.

Korak 6: Konfigurirajte upozorenja i zapisnike

Kao što je navedeno, Snort omogućuje snimanje informacija u bazama podataka MySQL, SQL Server, Oracle i ODBC. Jednostavno odaberite odgovarajuću vrstu baze podataka tijekom procesa instalacije Snorta. Kako ne bismo pretjerano produžili članak, razmotrit ćemo standardne načine zapisivanja pomoću tekstualne datoteke i funkciju pisanja poruka u Windows dnevnik događaja.

Prilikom pokretanja NIDS-a pomoću naredbe Snort, prekidač -A konzole uzrokuje prikazivanje upozorenja na ekranu. Za prosljeđivanje poruka u tekstualnu datoteku, trebali biste zamijeniti ovaj prekidač s -A brzo ili -A puno, ovisno o željenom načinu zapisivanja. Puni parametar prikazuje detaljan opis prijetnje u nekoliko redaka tekstualne datoteke pod nazivom alerts.ids u direktoriju, čiji je put naveden prekidačem -l. Ova vrsta zapisivanja pruža sveobuhvatne detalje, ali može biti teško razumljiva ako se na mreži bilježi mnogo događaja. U takvim "bučnim" mrežama preporuča se koristiti brzi način za dodavanje unosa u jednom retku u alerts.id koji sadrže glavne karakteristike sumnjivog prometa. Po mom mišljenju, rad s tekstualnom datotekom u brzom načinu rada lakši je nego u punom načinu rada.

Trenutna verzija Snort-a omogućuje bilježenje u Windows dnevnik događaja. Mnoge su organizacije već kupile alate za centralizirano praćenje događaja, bilježenje i prikupljanje podataka, a ova bi značajka bila izvrstan dodatak Windows okruženju.

Za pisanje upozorenja u zapisnik događaja aplikacije sustava na kojem je pokrenut Snort, koristite prekidač -E umjesto prekidača -A (parametri su izborni). Slika 5 prikazuje kako izgleda događaj Snort (u ovom slučaju pokušaj pristupa cmd.exe) objavljen u dnevniku aplikacije. Windows događaj pruža iste detaljne informacije kao i zaslon konzole.

NIDS je beskoristan ako administrator pregledava zapisnike događaja (ili tekstualne zapisnike) jednom tjedno. Ako se nešto dogodi na mreži, administrator to mora odmah znati. Centralizirani sustav praćenja i obrade događaja može slati poruke putem e-pošte, dojavljivača i drugih komunikacijskih uređaja. Ali ako takav sustav ne postoji, to nije razlog za brigu. NETIKUS.NET nudi besplatni paket EventSentry Light koji se može koristiti za slanje upozorenja.

EventSentry Light je probna verzija EventSentryja i može se preuzeti s http://www.netikus.net/products_downloads.html. Pomoću EventSentry Lighta možete konfigurirati svoj sustav da nadzire zapisnike događaja i automatski šalje detaljne poruke e-pošte o svim Snort događajima zabilježenim u zapisniku. Na ekran 6 prikazuje poruku e-pošte o pokušajima napada na cmd.exe. Dobio sam ovu poruku od EventSentry Light nekoliko sekundi nakon što se napad dogodio.

Kao što je gore spomenuto, Snort obično generira gomilu nepotrebnih poruka koje brzo popune zapisnike događaja. Ovo je nešto što treba imati na umu kada birate veličine datoteka za zapisnike događaja i kako ih rotirati. Kako biste spriječili da EventSentry Light preplavi vašu pristiglu poštu porukama o manjim događajima, možete stvoriti filtar za traženje ključnih nizova. Na primjer, organizirao sam filtar pretraživanja za niz u tekstu poruka.

Korak 7: Pokrenite kao uslugu

Nakon što završite, možete pokrenuti Snort kao uslugu umjesto da se morate prijavljivati ​​na svoje stolno računalo svaki put kada želite pokrenuti program. Ako pokrenete Snort s opcijama /SERVICE i /INSTALL (zajedno s drugim opcijama naredbenog retka), Snort je konfiguriran za pokretanje kao Windows usluga i automatski se pokreće sa sustavom Windows bez intervencije korisnika.

Sljedeća razina: moduli proširenja

Snort je potpuno opremljena aplikacija. Međutim, u nekim slučajevima program je potrebno proširiti. Na primjer, ako je nekoliko NIDS-ova raspoređeno u različitim dijelovima mreže, tada je prikladno upravljati Snortom iz grafičkog sučelja. Takve su mogućnosti implementirane u module proširenja IDScenter tvrtke Engage Security i IDS Policy Manager tvrtke Activeworx. Ponekad je potrebno analizirati informacije sadržane u porukama. Možete pregledavati i analizirati pohranjene podatke pomoću modula Analysis Console for Intrusion Databases (ACID) koji je razvijen na Sveučilištu Carnegie Mellon.

Pouzdana zaštita

Snort je potpuno opremljen program koji neće naštetiti proračunu tvrtke. Kombiniranjem Snort-a sa snažnom aplikacijom za praćenje događaja kao što je EventSentry Light, možete proaktivno spriječiti napade na svoju mrežu.

MINISTARSTVO OBRAZOVANJA I ZNANOSTI RUSKE FEDERACIJE

Državna obrazovna ustanova visokog stručnog obrazovanja

"DRŽAVNO SVEUČILIŠTE SANKT PETERBURG
INŽENJERSTVO ZRAKOPLOVNIH INSTRUMENTA"

NASTAVNI RAD (PROJEKT)
ZAŠTIĆEN OCJENOM IZVRSAN

NADGLEDNIK

izvanredni profesor, dr. sc., izv. prof

položaj, akademik stupanj, čin

potpis, datum

inicijali, prezime

OBJAŠNJENJE NASTAVNOG RADA (PROJEKTA)

Vježbajte korištenje IDS SNORT-a

disciplina: inženjerstvo i tehnička informacijska sigurnost

POSAO ZAVRŠEN)

STUDENT(KA) GR.

potpis, datum

inicijali, prezime

Sankt Peterburg 2011

1.. Što je Snort?. 2

2. Način njuškanja: 2

3. Način bilježenja paketa. 6

4. Način detekcije upada u mrežu. 6

1. Što je Snort?

Snort je lagani sustav za otkrivanje upada. Snort se obično naziva “laganim” NIDS-om /dešifriraj, prevedi/ - jer je prvenstveno dizajniran za male mreže. Program može izvršiti analizu protokola i može se koristiti za otkrivanje raznih napada.

Snort koristi "pravila" (određena u datotekama "pravila") kako bi znao koji promet dopustiti, a koji blokirati. Alat je fleksibilan i omogućuje vam da zapišete nova pravila i slijedite ih.

Snort može raditi u 3 glavna načina:

· Sniffer mod: omogućuje jednostavno hvatanje paketa s mreže i njihovo prikazivanje na zaslonu (obično konzoli)

· Način bilježenja paketa: omogućuje vam spremanje paketa na vaš tvrdi disk


· Način rada sustava za otkrivanje upada (NIDS) najsofisticiranija je i najprilagodljivija konfiguracija koja vam omogućuje analizu mrežnog prometa na temelju korisnički definiranog skupa pravila.

2. Način njuškanja:

U načinu rada za njuškanje paketa, Snort jednostavno čita pakete koji dolaze s mreže i prikazuje ih na zaslonu. Za prikaz zaglavlja TCP/IP paketa, morate pokrenuti:

frknuti –v

Ova naredba prikazuje zaglavlja IP i TCP/UDP/ICMP paketa. Možete vidjeti odakle su paketi poslani, gdje, na koliko /adresa?/. Slike/crteži moraju biti numerirani radi reference. Nema poveznice - znači slika nije potrebna / jasno je da postoje dvije odlazne adrese / odakle se može vidjeti? Dešifrirajte formate unosa na slici ili barem pogledajte broj retka /

Da biste razumjeli koje su to adrese, samo pokrenite naredbu

informacije o sustavu


Iz snimke /već – snimke. a ne crteži? Uniformnost se mora održavati unutar dokumenta! Ili je nešto drugo?/ Postaje jasno koje su to odlazne adrese. /pa, navedite ih - ili ih barem naznačite. da su njihovi brojevi navedeni u uglastim zagradama/

Kako biste vidjeli podatke sadržane u paketima, morate unijeti:

frknuti-vd

https://pandia.ru/text/78/320/images/image004_112.jpg" alt=" detaljan_izlaz.jpg" width="589" height="338">!}

Prekidači se mogu dati u bilo kojem obliku, na primjer: "šmrkati - vde", "šmrkati - d - ev" i "šmrkati - e - v -d".

Snort će nastaviti prikupljati informacije dok se ne prekine. Da biste dovršili snimanje paketa, morate pritisnuti Ctrl-C. Nakon što pritisnete Ctrl-C, prikazat će se izvješće o snimljenim paketima. Ispod je izvješće nakon pokretanja Snort-a oko jedne minute.

Iz snimke možete vidjeti da su većina analiziranih paketa TCP/IP paketi. Također su snimljeni UDP paketi.

3. Način bilježenja paketa

Način bilježenja paketa omogućuje vam pisanje toka informacija na disk. Ovo je korisno kada se provodi analiza tijekom određenog vremenskog razdoblja ili provjeravaju promjene u postavkama i sigurnosnim pravilima.
Morate stvoriti i navesti direktorij za zapisnike, a Snort će se automatski prebaciti na način bilježenja paketa.

Primjer: kreiranje imenika cjepanice i trči:

snort - dev - l../log

Kao rezultat operacije /gdje, gdje je tražiti, kako naznačiti željeno mjesto?/ datoteka hrkne. log.. Brojevi na kraju naziva novih datoteka su vremenske oznake, što pomaže u izbjegavanju sukoba prilikom stvaranja datoteka. /poželjan primjer log datoteke/

4. Način detekcije upada u mrežu

Treći način rada Snort-a je način otkrivanja upada u mrežu (NIDS).

U svom osnovnom obliku, Snort pravilo /gdje su pohranjena?/ ima dva dijela: zaglavlje i parametre. Ispod je primjer pravila.

upozorenje tcp bilo koji bilo koji -> bilo koji bilo koji (sadržaj: "www."; poruka: "Netko sada posjećuje youtube"; sid:1000002; rev:1)

Može li se model strukture pravila predstaviti? Je li tvrdo kodiran ili se može promijeniti? nadamo se da su elementi u uglatim zagradama izborni. znan. Ali postoje li posebni separatori između njih / prema sljedećoj shemi:

<действие_правила> <протокол> <порт> <оператор_направления>


<порт>([meta_podaci] [podaci_sadržaja_paketa]

[podaci_u_zaglavlju] [akcija_nakon_otkrivanja])

Radnje pravila podijeljene su u sljedeće kategorije:

1. uzbuna - Kreirajte upozorenje pomoću odabrane metode i prijavite informacije sustavu za bilježenje.

2. log - Koristite sustav za bilježenje podataka o paketu.

3. proći - Ignorirajte paket.

4. aktivirati - Koristite drugo dinamičko pravilo.

5. dinamičan - Nakon izvršenja aktivnog pravila, aktivira se pravilo s procedurom bilježenja.

6. pad - Ispustite paket pomoću softverskog vatrozida i prijavite informacije sustavu za bilježenje

7. sdrop - Ispustite paket pomoću softverskog vatrozida i nemojte koristiti sustav za bilježenje.

8. odbiti - Pomoću vatrozida odbacite paket ako je protokol TCP ili napišite poruku u datoteku dnevnika: ICMP port nije dostupan ako paket stigne putem UDP protokola

Drugi dio Snort pravila su opcije koje određuju dodatne pojedinosti o otkrivenom prometu. Možete pretraživati ​​prema skupu polja u TCP/ zaglavlju ili prema sadržaju paketa. Nakon svake opcije moraju stajati navodnici i vrijednost koja se traži. Možete dodati više opcija tako da ih odvojite točkom i zarezom. Sljedeće su važeće opcije.

sid – jedinstvena oznaka koja identificira pravilo. Ova se opcija mora koristiti s opcijom rev .

<100 зарезервировано для дальнейшего использования

100-999,999 već rezerviranih pravila

>=1.000.000 korisnički definiranih pravila

rev- vrijednost verzije pravila. Korištenje tumača rev pravila

Snort određuje verziju napisanog pravila.

Možete pokrenuti Snort u IDS modu pomoću naredbe:

snort - c "D:\Program Files\Snort\etc\snort. conf" - l " D:\Program Files\Snort\log" - A konzola - i 1

ključ -S znači da je IDS mod omogućen

ključ l omogućuje način snimanja na tvrdi disk navodeći put do datoteke

ključ A pokazuje da će se sva upozorenja (upozorenja) duplicirati izlazom konzole

ključ ja označava indeksni broj sučelja koje nas zanima

da biste saznali podržana sučelja, morate pokrenuti naredbu:

frknuti nosom W

Sadržaj datoteke frknuti nosom. konf

Sadržaj datoteke *****les:

U kartoteci frknuti. conf možete povezati pravila pomoću ključne riječi uključiti .

Rezultat naredbe:

Vidi se da je Snort detektirao pokušaj dolaska na “opasnu” stranicu.

Nema podataka o izvoru odakle je distribucija preuzeta, niti o OS-u na kojem je istraživanje provedeno

Općenito, rad je vrlo zanimljiv. /