Bukas
Isara

Pag-install at pagsasaayos ng Snort sa Linux. Magsanay gamit ang IDS SNORT. Snort istraktura at paggana

Ngayon, ang seguridad ng mga wireless network ay madalas na pinag-uusapan, ngunit ang pag-hack ng network ay itinuturing na isang bagay na napakalayo. Kami na nai-publish na materyal sa kung paano i-crack ang seguridad ng WEP. Bukod dito, pagkatapos ng ilang oras ay lumabas ito pagpapatuloy tungkol sa kung paano protektahan ang iyong network. Ngayon ang aming pansin ay ilalaan sa mga tool para sa pagsuri sa seguridad ng wireless network. At gayundin ang mga attack detection system - isang uri ng "fire alarm" para sa iyong WLAN.

Sa pamamagitan ng paraan, kung pinag-uusapan natin ang tungkol sa pag-hack ng WLAN, kung gayon ang mga gumagamit ng mga network sa bahay at maliliit na opisina ay tila mas mahina sa amin. Pangunahing ito ay dahil sa katotohanan na mayroon silang iba pang mga gawain kaysa sa pagprotekta sa kanilang wireless network. At, hindi tulad ng malalaking kumpanya, wala silang pagkakataon na kumuha ng mga propesyonal.

Gayunpaman, hindi lahat ay kasing lungkot ng tila. Sa likas na katangian, may mga paraan upang masuri ang seguridad ng isang wireless network, sa kabila ng tila walang katotohanan ng kumbinasyon ng mga salitang "security" at "wireless network." Ang Intrusion Detection Systems (IDS) ay maaaring makakita ng mga potensyal na panghihimasok bago ito mangyari habang ang kalaban ay naghahanap ng pagbubukas. Siyempre, ang mga naturang sistema ay hindi magagarantiya ng kumpletong seguridad (at ano, sa pamamagitan ng paraan, maaari?), Ngunit sa kumbinasyon ng mga firewall at iba pang mga hakbang sa seguridad maaari silang maging lubhang kapaki-pakinabang. Karaniwang tinatanggap na ang IDS ay isang uri ng alarma sa seguridad: iyon ay, nag-aabiso lamang ito tungkol sa isang pag-atake, na iniiwan ang trabaho kasama ang umaatake sa iba pang mga sistema at paraan (kahit na mga pisikal).

kanin. 1. Snort IDS.


kanin. 3. Linksys WRT54G.

Sa ibaba ay magbibigay kami ng mga halimbawa batay sa WRT54G na may firmware OpenWRT RC 2(codenamed "White Russian"). Sa katunayan, maraming mga distribusyon ng Linux para sa mga wireless router, ngunit pinili namin ang OpenWRT firmware dahil ito ay simple, magaan, at nakabalot tulad ng Debian Linux.


kanin. 4. OpenWRT sa trabaho.

Babala. Ang paglo-load ng OpenWRT, Snort Wireless o iba pang alternatibong bersyon ng firmware sa WRT54G ay magpapawalang-bisa sa warranty. Bago ka magsimulang mag-flash ng alternatibong bersyon ng firmware, inirerekomenda namin download isang kopya ng kasalukuyang bersyon ng firmware

Hindi kami magdetalye tungkol sa pag-install ng OpenWRT, dahil mahahanap mo ito sa website ng OpenWRT mahusay na gabay sa pag-install. Matapos makumpleto ang pag-install, maaari kang kumonekta sa router gamit ang Telnet () at tamasahin ang resulta.

Pagkatapos i-install ang OpenWRT sa router, maaari mong i-download at i-install ang program Snort Wireless. Ang lahat ng ito ay maaaring gawin sa pamamagitan ng nabanggit na OpenWRT package system - patakbuhin ang command ipkg na may mga sumusunod na parameter.

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

Maaaring hindi gusto ng ilan na ang paketeng ito ay higit sa isang taong gulang. Ngunit walang mali doon, dahil ang lahat ng kinakailangang function ng IDS ay naroroon, at lahat ng mga susunod na panuntunan ng Snort ay maaari ding ma-download sa pamamagitan ng ipkg (higit pang mga detalye: OpenWRT tracker page). Kung magpasya kang ayusin ang isang access point sa isang PC, maaari mong i-download ang source code ng Snort Wireless at direktang i-compile ito sa iyong computer. Tandaan na dapat mong idagdag ang bandila --enable-wireless, kung hindi ay hindi gagana ang mga preprocessor ng Wi-Fi.

Gumagana ang Snort Wireless tulad ng regular na Snort, ngunit partikular na idinisenyo para sa mga wireless na access point, na nagbibigay-daan sa iyong epektibong protektahan ang mga ito mula sa mga pag-atake. Sa partikular, naglalaman ito ng bagong rules protocol na tinatawag wifi at nagpapahintulot sa mga IDS na maayos na ihiwalay ang wireless na trapiko na tipikal ng mga karaniwang pag-atake ng WLAN. Halimbawa, ang parehong mga pag-atake gamit ang Netstumbler o mga pagtatangka na i-crack ang WEP. Ang paggamit ng wifi protocol sa Snort Wireless ay halos kapareho sa pagse-set up ng mga normal na panuntunan para sa Snort, na may isang pagbubukod: sa halip na ilagay ang mga IP address at port ng una at pangalawang node, dapat mong gamitin ang kanilang mga MAC address.

Sa puntong ito mayroon kaming gumaganang Snort Wireless. Magpatuloy tayo sa pag-set up nito para magamit sa napiling network. Kapag nagpatakbo ka ng ipkg, naka-install ang Snort sa direktoryo /etc/snort sa router. Tulad ng ibang mga programa ng Unix, gumagamit ang Snort ng nae-edit na configuration file kung saan maaari mong tukuyin ang impormasyon tungkol sa iyong network environment at ang iba't ibang pattern ng pag-atake na gusto mong subaybayan. Ang file ay tinatawag na nguso.conf (kanin. 5) at matatagpuan sa direktoryo /etc/snort. Kailangan itong buksan sa anumang text editor (kung ang iyong router ay walang isa, i-download ito gamit ang ipkg).


kanin. 5. Snort.conf configuration file.

Ngayon ay maaari mong i-configure ang lahat ng kinakailangang mga parameter ng network, kabilang ang pangalan ng access point kung saan tumatakbo ang IDS at ang mga MAC address ng mga kliyente na gusto mong subaybayan. Mayroong maraming mga setting na maaari mong i-configure dito, kaya suriin ang lahat ng mga ito nang mabuti upang matiyak na wala kang makaligtaan.

Sa partikular, tingnan ang mga preprocessor na tukoy sa Wi-Fi sa Snort Wireless. Kasama sa mga ito ang mga preprocessor upang matukoy ang passive network scanning ng mga program tulad ng NetStumbler at MAC address spoofing na mga pagtatangka. Napagpasyahan naming isaalang-alang ang mahahalagang preprocessor nang hiwalay.


kanin. 6. Binibigyang-daan ka ng AntiStumbler preprocessor na ipaalam ang tungkol sa isang recon attack.

  • AntiStumbler. Mga programa tulad ng NetStumbler at MacStumbler ( kanin. 6), gumamit ng mga null SSID upang makita ang mga access point. Ang mga SSID na ito ay kumikilos bilang mga broadcast at pinipilit ang iba pang mga access point na ipadala ang kanilang mga SSID sa humihiling na node. Ang tampok na ito ay kapaki-pakinabang kapag naghahanap ng mga magagamit na wireless network. Kinikilala ng AntiStumbler preprocessor na masyadong maraming null SSID ang ipinapadala mula sa isang MAC address at maaaring magtaas ng alarma.
    Tandaan. Hindi pinapayagan ng preprocessor na ito ang kahulugan ng mga programa tulad ng Kismet, dahil pasibo lamang silang nakikinig sa 802.11 na mga frame at hindi nagpapadala ng mga kahilingan.
  • DeauthFlood. Ang pag-atake na ito ay inilarawan nang detalyado sa aming materyal tungkol sa pag-hack ng WEP. Ginagamit upang idiskonekta ang mga host mula sa mga access point at pilitin ang pagtatangkang muling pagkonekta, na nagbibigay ng mga karagdagang packet para sa pagsusuri sa panahon ng pag-crack ng WEP. Bilang karagdagan, ang pag-atake ay maaaring gamitin sa "pagtanggi ng serbisyo" (DoS) ng isang access point. Kinikilala ng DeauthFlood preprocessor ang ganitong uri ng pag-atake sa pamamagitan ng pagbibilang ng bilang ng mga frame ng deauthentication bawat yunit ng oras at, kung kinakailangan, magtataas ng alarma.
  • AuthFlood. Ang pag-atake ay katulad ng nauna, ngunit ang AuthFlood preprocessor ay nakakita ng napakaraming mga pagtatangka sa pagpapatunay, iyon ay, mga pagtatangka ng mga kliyente na kumonekta sa wireless network, na maaaring magamit bilang isang pag-atake ng DoS sa access point.
  • MacSpoof. Ang isa sa mga pinaka-epektibong paraan upang paghigpitan ang pag-access sa isang access point ay ang paglikha ng isang listahan ng mga MAC address ng mga pinapayagang kliyente. Sa kasamaang palad, ang isang umaatake ay maaaring madaya ang MAC address ng kanilang makina at kumonekta sa access point. Sinusuri ng preprocessor ng MacSpoof ang mga numero ng packet at, kung may matukoy na hindi pagkakapare-pareho, na nagpapahiwatig ng posibleng panggagaya ng MAC address, magpapaalarma.
  • RogueAP. Ang mga access point ng Alien (“kaaway”) ay pinagkukunwari bilang mga regular upang magkamali ang user na kumonekta sa kanila at maglipat ng anumang personal na data. Ang preprocessor na ito hindi pa ipinapatupad, gayunpaman, sa mga susunod na release ay magagawa nitong iulat ang kalapitan ng mga access point ng ibang tao.

Bilang karagdagan, ang Snort Wireless ay nagsasama ng maraming paunang natukoy na mga panuntunan para sa isang malaking bilang ng mga sitwasyon. Depende sa configuration ng network, ang ilan sa mga panuntunan ay maaaring napaka-maginhawa. Halimbawa, lahat ng mga panuntunan sa web, kung ang isang web server ay tumatakbo sa iyong network. Upang i-activate ang isang panuntunan, alisin lang sa komento ang katumbas na linya sa Snort configuration file. Ang mga indibidwal na hanay ng panuntunan ay nai-save sa isang direktoryo bilang default /etc/snort/rules, at alinman sa mga ito ay maaaring matingnan gamit ang isang text editor. Ang mga panuntunan sa mga set ay eksaktong kapareho ng sa Snort mismo. Sa pamamagitan ng paraan, ang pagsunod sa mga halimbawa, madali mong magsulat ng isang panuntunan sa iyong sarili.


kanin. 7. Nakita ng panuntunan ng Snort ang isang port scanning machine.

Isinasagawa

Kapag ang file nguso.conf handa na, maaari mong ilunsad ang Snort. Sa pagsisimula, maaari mong tukuyin ang maraming mga parameter na tumutukoy sa lahat mula sa output hanggang sa operating mode. Una, patakbuhin natin ang Snort gamit ang mga sumusunod na parameter (sa mga opsyon sa Telnet).

nguso -D -A puno

Sinisimulan ng utos na ito ang Snort bilang isang proseso sa background, upang patuloy kang magtrabaho kasama ang shell nang mapayapa. Kapag na-trigger ang isang alarma, ang kumpletong impormasyon ay itatala sa log.

Ngayong gumagana na ang Snort, maaari kang mag-isip ng mga karagdagang paraan upang ma-secure ang iyong wireless network. Sabihin nating maaari kang makipag-ugnayan Kismet- isang utility na katulad ng Snort na maaaring i-deploy bilang karagdagang intrusion detection system. Gumagana lamang ang Snort sa ikatlong layer ng modelo ng OSI - ang layer ng network, na responsable para sa IP at iba pang trapiko. At gumagana ang Kismet sa pangalawang antas - ang antas ng channel, na responsable para sa mga frame ng Ethernet. Kaya, ang pag-deploy ng parehong mga sistema nang magkapares ay makabuluhang magpapataas ng pangkalahatang seguridad.


kanin. 8. Kismet sa trabaho.

Maaari mong i-configure ang Snort upang magsulat ng mga log sa isang database, na ginagawang mas madali ang karagdagang pagsusuri. Sumulat si Daniel Walther pamamahala tungkol sa kung paano mag-set up ng recording sa MySQL at PostgreSQL database. Kung gumagamit ka ng Gentoo Linux sa isang makina na nagsisilbing access point, maaari kang magpatuloy: i-install ang Apache at i-configure ang pagpapakita ng mga log sa pamamagitan ng web. Sa site Wiki ng Gentoo Makakahanap ka ng detalyadong paglalarawan ng naturang setting.


kanin. 9. Tingnan ang mga Snort log sa pamamagitan ng MySQL, ACID at Apache.

Konklusyon

Tinalakay lang namin ang mga pangunahing prinsipyo kung paano gumagana ang Snort. Sa prinsipyo, batay sa mga materyales sa artikulo, maaari mong i-configure ang system sa isang access point. Gayunpaman, ang Snort ay may higit pang mga tampok kaysa sa inilarawan sa artikulo. Sa partikular, maaari kang lumikha mga tuntunin nang nakapag-iisa, na makakatulong sa pagsasama ng Snort nang mas malalim sa network.

Panghuli, huwag kalimutan na upang epektibong ma-secure ang iyong wireless network, ang Snort at ang mga panuntunan ay dapat panatilihing napapanahon. Huwag kalimutang bumisita nang regular Snort Wireless, at ipkg package tracker(para sa mga pag-install ng OpenWRT) o Pahina ng snort rules(para sa iba).

Tulad ng ibang mga tool sa seguridad, ang Snort ay hindi isang panlunas sa pagprotekta sa iyong network. Ito ay isa lamang sa mga balwarte ng iyong kuta. Ngunit sa kumplikadong pagtatanggol ito ay gumagana nang mahusay.


Petsa ng publikasyon: Setyembre 21, 2009
Pagsasalin: S.Vladimirsky
Petsa ng paglipat: Oktubre 2, 2009

Inilalarawan ng gabay na ito kung paano mag-install at mag-configure ng intrusion detection system (IDS) gamit ang Snort, ACIDBASE (core analysis at security engine), MySQL at Apache2 packages sa Ubuntu 9.04 gamit ang Synaptic Ubuntu package manager. Tutulungan ka ng Snort na subaybayan ang iyong network at alertuhan ka sa mga posibleng banta. Sa kasong ito, bubuo ang Snort ng mga log file para sa MySQL database, at papayagan ka ng ACIDBASE na ipakita ang mga ito sa isang graphical na interface sa isang web browser.

1. Paghahanda ng system at pag-install ng software.

1.1 Pag-install.

I-download ang Desktop Ubuntu 9.04 32-bit o 64-bit mula dito: http://www.ubuntu.com/getubuntu/download

1.2 Mga setting ng system at network

Ikonekta ang iyong computer sa network. Bagama't maaaring gumana ang system na may iba't ibang mga setting, mas gusto ang sumusunod na configuration:

  • Matatagpuan sa isang demilitarized zone (DMZ).
  • Nakatago ang static na IP address sa likod ng firewall gamit ang NAT.
  • Kumonekta sa port ng pagsubaybay sa switch ng network (SWITCH).

Lumikha ng bagong administrator na pinangalanan <ваше_имя> at password <ваш_пароль> .

1.3 Pag-install ng software.

Ang unang bagay na kailangan mong gawin pagkatapos makumpleto ang pag-install ay i-install ang lahat ng mga update na inirerekomenda ng Ubuntu. Upang ma-access ang mga update, pumunta sa menu: System > Administration > Update Manager. Ipasok ang iyong password at piliin ang Suriin. Piliin ang I-install ang Mga Update.

Mula sa iyong desktop, pumunta sa System > Administration > Synaptic Package Manager. Ipasok ang iyong password at piliin ang Maghanap.

Hanapin at i-install ang mga sumusunod na pakete:

  • Acidbase kasama ang lahat ng nakadependeng pakete
  • Snort-MySQL kasama ang lahat ng nakadependeng pakete
  • MySql-server-5.0 kasama ang lahat ng mga nakadependeng pakete
  • Libpcap0.8-dev
  • libmysqlclient15-dev
  • MySql-client-5.0
  • Bison
  • Apache2
  • Libapache2-mod-php5
  • Php5-gd
  • Php5-mysql
  • libphp-adodb
  • Php-peras

2. Kumuha ng mga karapatan ng superuser

Mula sa desktop, pumunta sa menu: Applications\u003e Accessories\u003e Terminal (Applications\u003e Add-ons\u003e Terminal) at ipasok ang command:

$ sudo -i
$ ipasok ang password

3. Pagse-set up ng Snort

Upang makapagtakda ng mga custom na setting, kailangan mong i-edit ang file ng mga setting ng snort.conf.

Gamit ang isang text editor (nano, vi, vim o iba pa), buksan ang /etc/snort/snort.conf file.

# vim /etc/snort/snort.conf

Baguhin ang var HOME_NET anumang variable sa var HOME_NET 192.168.1.0/24 (maaaring iba ang address ng iyong home network sa 192.168.1.0). Kung sinusubaybayan mo ang maramihang mga network, dapat mong tukuyin ang lahat ng mga network na ito tulad ng sumusunod: var HOME_NET . Baguhin ang var EXTERNAL_NET alinman sa var EXTERNAL_NET !$HOME_NET (nagtatakda ng lahat ng mga variable maliban sa panlabas na variable na HOME_NET).

Baguhin ang var RULE_PATH ../rules sa var RULE_PATH /etc/snort/rules . Mag-scroll sa punto kung saan ang linyang # output database: log, mysql, user= ay tinukoy, alisin ang # sign mula sa simula ng linya.

Halimbawa: database ng output: log, mysql, user= password= dbname=snort host=localhost

(tingnan sa itaas kapag may nilikhang bagong user).

Itala ang username, password, at pangalan ng database (dbname). Kakailanganin mo ang impormasyong ito kapag nag-i-install ng MySQL database. I-save ang mga pagbabago at lumabas.

4. Pag-install ng Snort at Archive database sa MySQL

4.1 Pag-install ng MySQL

Mag-login sa MySQL server.

# mysql -u ugat -p

Minsan nangyayari na walang nakatakdang password, kaya pindutin lamang ang "Enter".

Kung hindi ka makapag-sign in, subukang muli ang command sa itaas at ilagay ang YOUR_PASSWORD.

Kung walang password, kailangan mong magtakda ng password para sa superuser account.

Tandaan: Kapag nasa MySQL server ka, ipinapakita ng prompt ang pangkat ng character na "mysql>" sa halip na ang simbolo na "#".

mysql> lumikha ng user @localhost;
mysql> SET PASSWORD FOR r@localhost=PASSWORD( );
mysql> SET PASSWORD PARA SA root@localhost=PASSWORD( );

4.2 Paglikha ng database ng Snort

mysql> lumikha ng database snort; mysql> bigyan ang INSERT, SELECT sa root.* sa snort@localhost; mysql> bigyan ang CREATE,INSERT,SELECT,DELETE,UPDATE sa snort.* sa @localhost; mysql> bigyan ang CREATE,INSERT,SELECT,DELETE,UPDATE sa snort.* para humirit;

4.3 Paglikha ng database ng Archive

mysql> lumikha ng database archive; mysql> bigyan ang CREATE, INSERT, SELECT, DELETE, UPDATE sa archive.* sa @localhost; mysql> bigyan ang CREATE,INSERT,SELECT,DELETE,UPDATE sa archive.* para i-archive; mysql> lumabas

4.4 Paglikha ng mga talahanayan sa Snort at Archive database

Gagamitin namin ang schema ng Snort para i-layout ang mga database ng Snort at Archive.

# cd /usr/share/doc/snort-mysql # zcat create_mysql.gz | mysql -u -h localhost -p nguso # zcat create_mysql.gz | mysql -u -h localhost -p archive

4.5 Kumpirmasyon ng paglikha ng mga database at mga bagong likhang talahanayan.

Mag-login sa MySQL server at suriin ang mga database na nilikha namin at ang mga talahanayan na naka-host sa mga database na iyon. Kung matagumpay na nalikha ang lahat, makikita mo ang apat (4) na database (mysql, test, snort at archive) sa mysql database at humigit-kumulang 16 na talahanayan sa bawat database.

# mysql -u root -p mysql> ipakita ang mga database; mysql> gumamit ng snort; mysql> ipakita ang mga talahanayan; mysql> gumamit ng archive; mysql> ipakita ang mga talahanayan; mysql> lumabas

4.6 Pagsubok ng Snort

Sa terminal mode, i-type ang command: # snort -c /etc/snort/snort.conf

Kung naging maayos ang lahat, dapat mong makita ang tugon sa mga ascii code.

Upang tapusin ang pagsubok, pindutin ang ctrl + c

5. Pag-configure ng Apache2

Dapat na naka-install na ang Apache2 package sa iyong computer.

Gamit ang iyong paboritong text editor, gumawa ng file na tinatawag na test.php sa /var/www/ folder.

# vim /var/www/test.php

Isulat dito:

I-save ang iyong mga pagbabago at isara ang file na ito.

I-edit ang /etc/php5/apache2/php.ini file

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

Sa ilalim ng linyang "Mga Dynamic na Extension," idagdag ang sumusunod:

Extension=mysql.so extension=gd.so

I-restart ang Apache2.

# /etc/init.d/apache2 restart

Kunin ang IP address ng iyong computer sa trabaho.

# ifconfig -a

Buksan ang iyong web browser at pumunta sa http://YOUR_IP_ADDRESS/test.php.

Kung naging maayos ang lahat, ipapakita ang impormasyon sa PHP.

6. Pag-configure ng mga folder

Ilipat ang ADOdb sa /var/www folder.

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

Gumawa ng folder na tinatawag na web sa www at ilipat ang ACIDBASE dito.

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

Pansamantalang payagan ang pagsulat sa folder ng database ng acidbase na i-install ito.

# chmod 777 /var/www/web/acidbase

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

Upang gumana sa ACIDBASE, patakbuhin ang command:

#pear i-install ang Image_Color

7. Pag-install ng ACIDBASE para sa Snort at Archive database

7.1 Pag-install ng Snort database sa pamamagitan ng isang web browser

Hakbang 1 ng 5:

Ipasok ang landas sa ADODB. Ito ay /var/www/adodb.

Hakbang 2 ng 5:

Pangunahing uri ng Database = MySQL
Pangalan ng database = snort
Database Host = localhost (Lokal na lokasyon ng Snort database),
Username ng database =<ваше_имя_пользователя>(Snort database username)
Password ng Database =<ваш_пароль>(Password para sa Snort database)

Uri ng Archive Database = MySQL (Uri ng Database ng Archive),


Username ng database =<ваше_имя_пользователя>
Password ng Database =<ваш_пароль>

Hakbang 3 ng 5:

Kung gusto mong gumamit ng authentication, ilagay ang iyong username at password (user:<ваше_имя>, password:<ваш_пароль>).

Hakbang 4 ng 5:

I-click ang Lumikha ng BASE AG.

Hakbang 5 ng 5:

Kapag nakumpleto na ang hakbang 4, sa ibaba, i-click ang: Ngayon magpatuloy sa hakbang 5.

I-bookmark ang pahinang ito.

7.2 Gumawa ng folder para sa database ng Archive ACIDBASE

Para gumana nang tama ang database ng archive, dapat gumawa ng folder ng archive sa folder ng ACIDBASE.

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

Palitan ang pangalan ng umiiral na base_conf.php file sa base_conf.old .

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

7.3 Pag-install ng database ng Archive sa pamamagitan ng isang web browser.

Magbukas ng web browser at pumunta sa http://YOUR_IP_ADDRESS/web/acidbase/archive/setup.

Sa unang pahina, i-click ang Magpatuloy.

Hakbang 1 ng 5:

Ipasok ang landas sa ADODB. Ito ay /var/www/adodb. >

Hakbang 2 ng 5:

Uri ng database ng archive = MySQL
Pangalan ng database = archive (Database Archive),
Database Host = localhost (Lokal na lokasyon ng database ng Archive),
Username ng database =<ваше_имя_пользователя>(I-archive ang username sa database),
Password ng Database =<ваш_пароль>(Password para sa database ng Archive)

Hakbang 3 ng 5:

Kung gusto mong gumamit ng authentication, ilagay ang iyong username at password(user:<ваше_имя_пользователя>, password:<ваш_пароль>).

Hakbang 4 ng 5:

Mag-click sa Lumikha ng BASE AG.

Hakbang 5 ng 5:

Kapag nakumpleto na ang hakbang 4, mag-click sa ibaba: Ngayon magpatuloy sa hakbang 5 (Pumunta ngayon sa hakbang 5).

8. Ilunsad ang Snort at suriin ang katayuan ng mga serbisyo.

Upang patakbuhin ang Snort, i-type sa terminal mode:

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

Ang utos na ito ay nagsisimula sa pag-snort gamit ang eth0 interface sa demo mode.

Maaari mong i-verify na ang serbisyo ay tumatakbo gamit ang sumusunod na command:

# ps aux | grep nguso

Kung tumatakbo ang serbisyo, makakakita ka ng katulad ng sumusunod na snort -c /etc/snort/snort.conf -i eth0 -D .

I-verify na tumatakbo ang lahat ng kinakailangang serbisyo sa pamamagitan ng pagpapatakbo ng mga sumusunod na command:

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

Kung tumatakbo ang mga serbisyo, makakakita ka ng mensahe ng tugon .

Kung kinakailangan, patakbuhin ang utos
# /etc/init.d/ i-restart
para sa bawat isa sa mga serbisyong kailangang i-restart.

Panimula

Ang pangunahing layunin ng gawaing ito ay ilarawan at pag-aralan ang sikat na IDS application na Snort. Ang Snort ay isang malaking open source na proyekto na ginagamit ng maraming administrator ng network upang kumuha ng mga nakakahamak na lagda at alertuhan sila kapag inaatake ang kanilang network. Hinaharang ng Snort ang lahat ng trapiko mula sa mga interface ng network, sinusuri ang mga packet para sa mga kahina-hinalang kahilingan at mga pagtatangka sa pagpasok.

Ang pangunahing bentahe nito ay ang pagiging naa-access nito at ang kakayahang i-edit ang gawa nito upang umangkop sa iyong partikular na network ng trabaho. Ang programa ay idinisenyo upang gumana sa parehong maliliit at malalaking organisasyon. Mahalaga rin ang kakayahang i-edit ang sarili mong mga natatanging panuntunan batay sa mga kinakailangan sa seguridad ng isang partikular na organisasyon (halimbawa, isang pagbabawal sa pag-access ng kawani sa mga social network).

Kasama sa mga disadvantage ang abala sa pag-setup at pag-install sa ilang operating system (halimbawa, Windows), ang kakulangan ng isang sapat na kumpleto at detalyadong paglalarawan ng setup at ang pagbuo ng iyong sariling hanay ng mga panuntunan.

Gayundin, napakahirap na putulin ang mga maling alarma, dahil ang iba't ibang mga negosyo ay madalas na may iba't ibang mga paghihigpit, at kinakailangan ang lubos na pag-aayos ng mga patakaran. Maraming mga mode para sa paglulunsad ng isang application gamit ang mga case-sensitive na key ay napakahirap tandaan at maaaring humantong sa maling output.

Ang pangunahing gawain ng gawaing ito ay upang maunawaan ang mga functional na tampok ng IDS Snort at suriin ang pagpapatakbo ng application sa pamamagitan ng pagsasagawa ng iba't ibang uri ng pag-atake ng network dito. Alamin kung may mga katulad na IDS sa mas maginhawang format. Paano nakikipag-ugnayan ang Snort sa mga database. Bumuo ng ilang natatanging panuntunan at subukan ang mga ito para sa functionality.

Pag-install at pagsasaayos ng IDS Snort

Snort: Pag-install sa Windows XP

Kapag nag-i-install ng Snort sa isang operating system ng Windows, maaari kang makatagpo ng ilang mga paghihirap. Samakatuwid, ang gawaing ito ay nakatuon sa isang medyo detalyadong bahagi ng mga opsyon sa pag-install at pagsasaayos. Una kailangan mong i-download ang mga kinakailangang program sa iyong computer sa trabaho.

Mga Panuntunan para sa Snort.

Ang lahat ng nasa itaas ay dina-download mula sa mga opisyal na website ng mga application na ito.

Ang Winpcap ay isang application na kumukuha at nagsasala ng mga packet sa antas ng kernel. Ito ay kahalintulad sa built-in na Unix libpcap driver. Ang pag-install ay hindi magdudulot ng anumang partikular na abala; inilunsad ito sa pamamagitan ng isang regular na installer. Pagkatapos nito, kailangan mong i-download ang IDS mismo mula sa opisyal na website, pagkatapos nito i-download namin ang pinakabagong archive na may mga panuntunan mula doon. Ang susunod na hakbang ay ang ganap na kopyahin ang lahat ng mga folder na nasa archive kasama ang mga patakaran sa root directory ng application, na ganap na pinapalitan ang mga nilalaman kung saan kinakailangan. Pagkatapos, para gumana nang tama ang program, kakailanganin mong gumawa ng mahahalagang pagbabago sa configuration file.

var RULE_PATH c:snort ules

var SO_RULE_PATH c:snortso_rules

var PREPROC_RULE_PATH c:snortpreproc_rules

direktoryo ng dynamicpreprocessor c:snortlibsnort_dynamicpreprocessor

dynamicengine c:snortlibsnort_dynamicenginesf_engine.dll

#dynamicdetection directory /usr/local/lib/snort_dynamicrules

Nakahanap kami ng mga katulad na linya sa configuration file at pinapalitan ang mga ito ng mga ibinigay sa itaas. Pagkatapos nito, sinusubukan naming subukan ang application. Ilunsad ang command line at pumunta sa direktoryo ng application sa seksyong "bin". Ipasok ang command na "snort -W"

kanin. 1.1.

Sa command na ito, sinusuri namin ang functionality ng application upang tingnan ang aming mga interface. Matapos matiyak na mayroong higit sa isa sa mga ito, pipiliin namin ang isa na konektado sa gumaganang network upang simulan ang pagharang ng mga packet at pagsubaybay sa pagpapatakbo ng mga IDS.

C:Snortinsnort -i 3 -c C:snortetcsnort.conf -l C:snortlog -Isang console

Tingnan natin ngayon ang utos na ipinasok natin. Ang ibig sabihin ng "- i 3" ay titingnan natin ang interface na mayroong ID= 3 sa listahan ng ating mga interface. Pagkatapos ay tinukoy namin ang landas sa file ng pagsasaayos at ang landas sa direktoryo kung saan dapat isulat ang "log" ng mga naharang na packet. Ang ibig sabihin ng "-A console" ay ang mga alarm packet ay makikita sa aming console. Kung may anumang mga problema na lumitaw sa panahon ng pagproseso, inaalis namin ang mga ito habang natukoy ang mga ito. Isinasaad ng Snort ang string at uri ng error sa build. Kung gumana ang lahat, wala tayong makikita hanggang sa ma-trigger ang isa sa mga tumatakbong panuntunan. Upang magamit ang isa sa mga ito, subukan nating gayahin ang isang pag-atake sa network at maglunsad ng kahina-hinalang packet sa ating lokal na network. Upang gawin ito, halimbawa, buksan ang command line at ipasok ang sumusunod: "Ping 192.168.1.16". Harangin ng Snort ang isang pagtatangkang makinig sa host sa 192.168.1.1624 at magpapakita ng mensahe at impormasyon tungkol sa kahina-hinalang aktibidad sa network. Sa kasamaang palad, ang mga ganitong sistema ng IDS ay may malubhang disbentaha - mga maling positibo. Kaugnay nito, upang maging kapaki-pakinabang at hindi nakakapanlinlang ang Snort, kinakailangan na sapat at malinaw na tukuyin ang mga panuntunan at pag-iba-ibahin ang mga network na tinitingnan upang maiwasan ang mga maling positibong ito.


kanin. 1.2.

Ngayon sa console kung saan tumatakbo ang aming IDS, lalabas ang mga mensahe tungkol sa kahina-hinalang packet na kahawig ng "pakikinig." Ang kasangkot na panuntunang ito ay nagpakita na ang Snort ay ganap na gumagana. Isaalang-alang natin ang mga operating mode nito at ang syntax ng mga panuntunan para sa karagdagang trabaho.

Bilyun-bilyong data packet ang ipinapadala sa mga corporate network araw-araw. Ang ilan sa kanila ay mapanganib; Ang mga may-akda ng naturang mga pakete ay gumawa ng mga espesyal na hakbang upang i-bypass ang mga firewall at masira ang mga linya ng depensa sa kahabaan ng perimeter ng mga network, na nakakagambala sa pagpapatakbo ng lahat ng mga sistemang nakatagpo sa daan. Ang mga mapanirang epekto ng mga naka-package na pag-atake tulad ng Code Red, Nimda, SQL Slammer at MSBlaster ay kilala. Sinasamantala ng lahat ng malware na ito ang mga pinagkakatiwalaang protocol (gaya ng HTTP) o trapiko sa network mula sa mga Microsoft system. Ang mga naturang protocol ay hindi basta-basta kunin at i-block, kaya karaniwang sinusubukan ng mga administrator na makuha ang mapanganib na trapiko sa lalong madaling panahon gamit ang hindi awtorisadong access detection system, Network Intrusion Detection System (NIDS), upang tumugon sa banta sa oras.

Mayroong ilang mga NIDS na magagamit sa komersyo, iba-iba sa mga kakayahan at gastos. Sa pangkalahatan, lahat sila ay matagumpay na gumagana. Ang lahat ng mga komersyal na pakete na aking nakatagpo ay napakahusay. Ngunit ano ang dapat gawin ng mga organisasyong may katamtamang badyet kung hindi priyoridad ang pagtuklas ng panghihimasok? Para sa mga ganitong kaso, mayroong Snort - isang malakas na libreng pakete ng NIDS. Hindi tulad ng maraming open source na pakete, ito ay katugma sa Windows.

Kilalanin si Snort

Ginawang available ng orihinal na developer ng Snort, si Martin Resch, ang programa sa bukas na komunidad sa ilalim ng mga tuntunin ng GNU General Public License (GPL). Ang kasaysayan ng paketeng ito ay nagsimula noong 1998, at mula noon ay napatunayan na nito ang pagiging maaasahan nito nang higit sa isang beses. Salamat sa mga kontribusyon ng mga bukas na miyembro ng komunidad at mga administrator ng network sa buong mundo, naging napakalakas na produkto ang Snort. Ang kasalukuyang bersyon ay nagbibigay ng real-time na network traffic analysis at IP traffic logging sa Fast Ethernet at Gigabit Ethernet na bilis.

Inilipat ni Michael Davis ang Snort 1.7 sa platform ng Win32, na ginagawa itong available sa komunidad ng Windows. Pagkatapos ay kinuha ni Chris Reid ang gawain ng pag-compile ng mga bagong bersyon ng Snort sa mga nakahandang executable na madaling i-deploy sa isang kapaligiran sa Windows.

Maaaring isipin ng mga administrator na hindi pamilyar sa NIDS ang tool bilang isang espesyal na uri ng network analyzer. Sinusuri ng NIDS ang bawat packet na dumadaan sa interface, naghahanap ng mga kilalang pattern sa payload kung saan karaniwang nakatago ang malisyosong code. Sa Snort, maaari kang magsagawa ng mga operasyon sa paghahanap at pagtutugma sa bawat packet na dumadaan sa network ng isang organisasyon at makatuklas ng maraming uri ng pag-atake at hindi lehitimong trapiko sa real time.

Mga Kinakailangan sa Snort

Upang patakbuhin ang Snort, kailangan mo ng Windows computer na nilagyan ng kahit man lang isang network adapter. Mas mainam na magkaroon ng dalawang network adapter, ang isa ay konektado sa kinokontrol na network at ang isa sa production network; ang huli ay nagpapasa ng mga ulat. Ang Snort ay katugma hindi lamang sa Windows 2000 Server at mga mas bagong bersyon, kundi pati na rin sa Windows XP Professional Edition, XP Home Edition at Windows 2000 Professional. Walang kinakailangang lisensya sa server. Ikinonekta ko ang aking XP Pro na laptop sa maraming network ng kliyente araw-araw at karaniwang nagpapatakbo ng Snort bilang isang serbisyo. Sa ganitong paraan, tumatakbo ang program sa background, na nakikita ang anumang mga pag-atake sa aking system na nagmumula sa network ng kliyente. Gumagamit ako ng Snort bilang isang portable sensor - ang programa ay gumaganap bilang isang NIDS para sa anumang port kung saan nakakonekta ang laptop.

Sa maliliit na network, maaaring i-deploy ang Snort sa isang entry-level na server. Ang isang dedikadong high-power na makina ay hindi kailangan upang makita ang hindi awtorisadong mga pagtatangka sa pag-access. Halimbawa, narinig ko ang tungkol sa FreeBSD-based na Snort node na may 1 GHz processor at 1 GB RAM na matagumpay na naghahatid ng mga network na may 15,000 user at maraming T-3 WAN link. Salamat sa kahusayan ng source code ng Snort, hindi kinakailangan ang isang napakalakas na makina upang patakbuhin ang programa.

Saan ang pinakamagandang lugar sa network para mahanap ang NIDS? Ang unang pag-iisip ay ilagay ang device sa harap ng firewall. Dito makikita ng NIDS ang pinakamaraming pag-atake, ngunit ang bilang ng mga maling positibo ay magiging pinakamataas din, at ang administrator ay makakatanggap ng maraming walang kwentang babala tungkol sa panganib. Hindi ka dapat mag-alala tungkol sa mga banta na inihinto ng isang firewall, mas mahalaga na makita ang mga mapanganib na programa na nasa likod nito. Samakatuwid, mas mainam na ilagay ang Snort sa likod ng firewall.

Gayunpaman, kung ang mga gumagamit ay kumonekta sa network sa pamamagitan ng isang koneksyon sa VPN (sa Internet o wireless na link), makatuwirang ilagay ang NIDS sa likod ng firewall, tulad ng sa likod ng isang VPN server o concentrator, kung saan ang mga packet ay nade-decrypt kapag sila ay lumabas sa VPN tunnel. Kung hindi, hindi magagawa ng NIDS na kontrahin ang malware na naka-embed sa trapiko ng VPN, dahil ang mga nasuri na packet ay ie-encrypt. Ang parehong naaangkop sa naka-encrypt na trapiko ng SMTP, naka-encrypt na .zip file na naka-attach sa mga mensaheng email, at iba pang mga uri ng naka-encrypt na data.

Sa isip, ang NIDS ay dapat mailagay nang sapat na malayo sa likod ng anumang mga bahagi na nag-e-encrypt ng trapiko at sapat na malapit sa perimeter ng network upang masuri ang trapiko sa pinakamaraming segment at subnet hangga't maaari. Sa isang switched network environment, ang switch ay karaniwang nangangailangan ng diagnostic port para kolektahin ang lahat ng packet na dumadaan sa network. Bilang resulta, ang NIDS ay may maginhawang access sa lahat ng trapiko sa network.

Ngayong pamilyar ka na sa Snort at alam mo ang mga kinakailangan sa pagho-host nito, maaari mong i-install at subukan ang NIDS. Para sa higit pang impormasyon tungkol sa Snort, tingnan ang mga dokumentong naka-link sa sidebar ng "Web Resources." Ang prosesong ito ay binubuo ng pitong yugto:

  1. Pag-install ng WinPcap
  2. Pag-install ng Snort
  3. Pagsubok ng Snort
  4. Pagse-set up ng Snort
  5. Pagtatakda ng mga panuntunan
  6. Pagse-set up ng mga alerto at log
  7. Patakbuhin bilang isang serbisyo

Stage 1. Pag-install ng WinPcap

Ang Snort ay mahalagang isang promiscuous-mode network analyzer, kaya nangangailangan ito ng suporta sa driver. Ang suportang ito ay ibinibigay ng WinPcap. Nilikha ni Loris Digioanni ang WinPcap sa pamamagitan ng pag-port sa libpcap packet capture driver, na malawakang ginagamit sa mga user ng Unix, sa kapaligiran ng Windows. Kasama sa WinPcap ang isang kernel-level na packet filter, isang low-level na DLL (packet.dll) at isang high-level na system-independent na library (wpcap.dll, batay sa libpcap 0.6.2).

Maaaring ma-download ang WinPcap mula sa http://winpcap.polito.it. Ang driver ay katugma sa Windows Server 2003, XP, Windows 2000, Windows NT, Windows Me at Windows 9x. Sinusuportahan din ng WinPcap ang open-source na Ethereal packet sniffer, na maaaring makuha mula sa . Gamit ang Ethereal, maaari mong i-verify na naka-install nang tama ang Snort.

Pagkatapos i-download ang file ng pag-install ng WinPcap mula sa network, kailangan mo lamang na dumaan sa ilang mga screen ng pamamaraan ng pag-install. Ang pinakamalaking pagsisikap sa bahagi ng user ay kinakailangan ng screen kung saan dapat kang sumang-ayon sa mga tuntunin ng lisensya.

Hakbang 2: I-install ang Snort

Ang susunod na hakbang ay i-install ang Snort. Ang pinakabagong bersyon ay matatagpuan sa CodeCraft Consultants Web site ( http://www.codecraftconsultants.com/snort.aspx) o Snort.org ( http://www.snort.org). Inirerekomenda ko ang pag-download ng Snort mula sa CodeCraft Consultants dahil maaari kang makakuha ng self-extracting executable mula sa site na iyon. Ginagabayan pa nga ng program ang user sa mga pangunahing hakbang ng pag-install ng Snort sa isang computer. Ang pinakabagong bersyon ng Snort 2.1.1, build 18 ay ginamit sa paghahanda ng artikulong ito ay inilabas na.

Kapag pinatakbo mo ang programa sa pag-install, sa unang dialog box dapat mong piliin ang database configuration mode para sa pag-iimbak ng mga resulta. Kung gumagamit ka ng MySQL o isang database na katugma sa ODBC, maaari mong tanggapin ang default na mode (Larawan 1). Ngunit kung mag-iimbak ka ng mga protocol sa isang database ng Microsoft SQL Server o Oracle, kailangan mong piliin ang naaangkop na mode at tiyaking magagamit ang kinakailangang programa ng kliyente sa makina. Ginamit ang default na mode sa paghahanda ng artikulong ito.

Ang susunod na hakbang ay tukuyin ang mga bahagi ng Snort na gusto mong i-install. Ang karaniwang hanay (Screen 2) ay maayos, kaya inirerekomenda kong tanggapin ito at i-click ang Susunod. Sa dialog box na Pumili ng I-install ang Lokasyon, dapat mong tukuyin ang direktoryo kung saan ide-deploy ang Snort. Pagkatapos ipasok ang pangalan ng direktoryo, i-click ang Susunod upang makumpleto ang proseso ng pag-install.

Screen 2: Pagpili ng Mga Bahagi ng Pag-install

Hakbang 3: Subukan ang iyong pag-install ng Snort

Pagkatapos makumpleto ang proseso ng pag-install, kailangang masuri ang Snort. Bilang default, kailangang sabihin sa Snort executable ang dalawang lokasyon: kung saan magsusulat ng mga log at kung saan mahahanap ang configuration file (snort.conf). Ang impormasyong ito ay ibinibigay ng user kapag nagpapatakbo ng Snort mula sa command line gamit ang -l at -c switch, ayon sa pagkakabanggit. Halimbawa, ang utos

Snort -l F:snortlog -c F:snortetcsnort.conf -Isang console

nagsasabi sa program na ang mga log ay dapat isulat sa F:snortlog na direktoryo at ang snort.conf ay matatagpuan sa F:snortetc na direktoryo. Ang -A switch ay tumutukoy sa paraan para sa pagpapadala ng mga babala na nabuo ng programa. Sa halimbawang ito, ang mga babala ay ipinapakita sa console screen upang ma-verify ng administrator na gumagana nang tama ang Snort. Mangyaring tandaan na sa artikulo ang command ay naka-print sa maraming linya, ngunit sa command window dapat itong ipasok sa isang linya. Ang parehong naaangkop sa iba pang mga multiline na command sa artikulong ito. Maraming mga switch ng command line ng Snort ang case sensitive, kaya dapat kang magpasok ng mga command nang eksakto kung paano ang mga ito ay na-type.

Kung ang system ay may maraming interface ng network, bilang default, nakikinig si Snort sa unang interface na natuklasan nito. Kung ang pagkakasunud-sunod ng mga interface ng network sa isang makina ay hindi alam, maaari mong patakbuhin ang Snort command gamit ang isang solong -W switch. Inililista ng Snort ang mga pangalan at numero ng mga interface ng network sa pagkakasunud-sunod kung saan nakita ng program ang mga ito. Upang pilitin ang Snort na gumamit ng isang partikular na interface ng network, dapat mong ilagay ang -i switch na may numero ng interface kapag sinimulan ang Snort. Pagkatapos patakbuhin ang Snort, magpapakita ang screen ng impormasyong katulad ng ipinapakita sa screen 3 .

Kapag nagpatakbo ka ng Snort, maaari mong subukan ang pagiging sensitibo nito sa pamamagitan ng pagpapadala ng espesyal na inihandang trapiko sa NIDS. Ang isa sa mga pinakamadaling paraan upang mag-trigger ng babala ay ang tawagan ang command interpreter (cmd.exe) sa remote na makina bilang bahagi ng kahilingan sa HTTP URL (isang karaniwang pamamaraan para sa Code Red at Nimda worm). Upang gayahin ang yugtong ito ng pag-atake, i-access ang anumang URL at idagdag ang mga character /cmd.exe sa dulo ng kahilingan. Halimbawa, bilang tugon sa isang tawag sa http://www.a-website-that-I-can-trust.com/cmd.exe, ang Snort ay dapat magpakita ng babala sa command window na katulad ng hitsura sa unang tatlong babala sa screen 4. Ang mga mensaheng ito ay isinulat sa F:snortlog log.

Ang mga target na Web site para sa pagsubok ay dapat mapili nang may pag-iingat. Mula sa teknikal na pananaw, ang karamihan sa mga tagapangasiwa ng Web site ay isasaalang-alang ang mga naturang aksyon bilang isang pagtatangka sa pag-hack. Ang pagtatangka na ito ay hindi magtatagumpay (maliban kung may mga malubhang error sa pagsasaayos ng server), ngunit inirerekomenda ko ang pagsubok lamang sa iyong sariling server o isang pinagkakatiwalaang server na ang mga administrator ay nakakaalam ng pagsubok.

Kung hindi posible ang pagsubok, ang isa pang paraan upang subukan ang Snort ay magpadala ng hindi pangkaraniwang mahabang echo request sa network sa isang server o computer na tumatakbo ang Snort. Halimbawa, maaari mong gamitin ang utos na Ping

Ping -l 32767 ip_address

kung saan ang ip_address ay ang IP address ng target na server o Snort computer. Ang command na ito ay dapat magpadala ng napakahabang packet (eksaktong haba - 32 KB), na malinaw na hindi karaniwan para sa isang Ping command. Dapat ma-detect ng Snort ang package na ito, gaya ng makikita sa ibabang walong babala sa screen 4 .

Kung nakatanggap ka ng mga babala, maaari mong simulan ang pag-configure ng Snort para sa iyong mga partikular na kundisyon. Kung hindi, kailangan mong bumalik sa pamamaraan ng pag-install at suriin kung anumang hakbang ang nalaktawan.

Hakbang 4: Pag-set up ng Snort

Ang pangunahing data ng configuration ng Snort ay iniimbak sa snort.conf file, na bilang default ay matatagpuan sa direktoryo ng %systemdrive%snortetc. Ang file ay maaaring iwan sa folder na ito o ilipat sa isa pa kung tinukoy mo ang path sa programa sa command line.

Ang isang detalyadong paglalarawan ng lahat ng mga parameter na naroroon sa snort.conf ay maaaring punan ang isang buong isyu ng magazine, dahil ang Snort ay isang napakalakas na programa. Sa ngayon, isasaalang-alang lamang natin ang mga pangunahing parameter nito.

Upang makilala ang papasok na trapiko mula sa papalabas na trapiko, kailangan mong sabihin sa Snort ang mga host at IP address ng iyong enterprise network. Upang mailagay ang impormasyong ito, dapat na itakda ang HOME_NET variable sa snort.conf file. Dapat mong mahanap ang linya

Var HOME_NET kahit ano

at palitan ito ng isang hanay ng mga IP address. Maaari mong tukuyin ang isang hanay, halimbawa

Var HOME_NET 192.168.0.1/24

o ilang hanay. Kapag tumutukoy ng maraming hanay, dapat mong ilakip ang hanay ng mga hanay sa mga square bracket at paghiwalayin ang bawat hanay gamit ang kuwit. Hindi ka maaaring magpasok ng mga puwang sa pagitan ng mga saklaw ng IP address. Halimbawa, ang linya

Var HOME_NET

nagsasabi sa Snort na ang mga subnet na 10.0.1.0/24, 10.0.2.0/24, at 10.0.3.0/24 ay nabibilang sa network ng enterprise. Bilang default, tinatrato ng Snort ang lahat ng iba pang mga address bilang panlabas. Maaari mong tahasang tukuyin kung aling mga network ang dapat ituring na panlabas sa pamamagitan ng pagtatakda ng EXTERNAL_NET variable. Sa snort.config file kailangan mong hanapin ang linya

Var EXTERNAL_NET kahit ano

at palitan ito ng IP address ng network na dapat ituring na panlabas. Gayunpaman, sa pangkalahatan ay pinakamahusay na iwanan ang EXTERNAL_NET variable na nakatakda sa alinman upang magsimula.

Pagkatapos gumugol ng ilang oras, matutukoy mo ang mga uri ng mga server na mayroon ang iyong negosyo at ang kanilang mga lokasyon. Ang impormasyong ito ay nasa DNS_SERVERS, SMTP_SERVERS, HTTP_SERVERS, SQL_SERVERS, at TELNET_SERVERS na mga variable sa mga sumusunod na linya ng snort.conf file:

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

Bilang default, lahat ng anim na variable ng server ay nakatakda sa $HOME_NET; nangangahulugan ito na susubaybayan ng Snort ang lahat ng uri ng pag-atake sa lahat ng system sa hanay ng HOME_NET. Ang pagsasaayos na ito ay lubos na katanggap-tanggap para sa isang maliit na network na ang mga administrator ay pinahihintulutan ang isang tiyak na bilang ng mga maling alerto. Ngunit para sa pagsubaybay sa mabigat na trapiko, ipinapayong i-fine-tune ang Snort upang suriin lamang ang bahagi ng mga lagda para sa ilang mga node. Walang saysay na protektahan ang isang Web server na nagpapatakbo lamang ng Microsoft IIS mula sa mga pag-atake ng SQL buffer overflow. Upang tukuyin ang isang partikular na klase ng host, dapat mong palitan ang $HOME_NET ng isang hanay ng mga target na IP address ng server ayon sa format na ginamit para sa HOME_NET variable. Halimbawa, para sa variable na DNS_SERVERS, sa halip na $HOME_NET, dapat mong palitan ang hanay ng mga IP address ng mga DNS server.

Maaaring mapabuti ang katumpakan ng pag-tune sa pamamagitan ng pagtukoy sa mga port na ginagamit ng mga server para sa mga partikular na application. Halimbawa, kung gumagamit ang mga Web server ng espesyal na port 8080 para sa trapiko ng HTTP sa halip na port 80 (karaniwang ginagamit ang port na ito para sa mga Web server at browser), maaari mong i-configure ang Snort upang subaybayan ang port 8080 sa pamamagitan ng pagbabago sa variable na HTTP_PORTS. Sa snort.conf dapat mong hanapin ang linya

Var HTTP_PORTS 80

at palitan ito ng linya

Var HTTP_PORTS 8080

Katulad nito, maaari mong baguhin ang mga port para sa Oracle (tinukoy ng variable na ORACLE_PORTS) at iba pang mga application. Tulad ng HTTP_PORTS variable, ang ORACLE_PORTS ay nagde-default sa 80. Kung ang server ay gumagamit ng port 1521 sa halip, ang string ay magmumukhang

Var ORACLE_PORTS 1521

Kaya, maraming mga setting na maaaring i-configure sa snort.conf file. Dapat mong suriin ang snort.conf upang mahanap ang mga setting na pinakamahalaga para sa iyong partikular na kapaligiran at i-configure ang mga ito nang naaayon.

Stage 5. Pagtatakda ng mga tuntunin

Ang isa sa mga linya sa snort.conf ay naglalaman ng variable na RULE_PATH. Isang halimbawa ng linyang ito:

Var RULE_PATH ../rules

Tinutukoy ng opsyon na ../rules na ang mga panuntunan (i.e. mga lagda) ay makikita sa direktoryo ng mga panuntunan, na nasa parehong antas ng mga binary ng Snort sa istraktura ng direktoryo. Kaya, halimbawa, kung i-install mo ang Snort sa generic na folder na F:snort, ang Snort binary ay nasa F:snortin at ang mga panuntunan ay nasa F:snort ules. Maaari mong baguhin ang RULE_PATH variable kung gusto mo, ngunit ang default na opsyon ay maayos.

Ang mga panuntunan ay ang batayan ng Snort. Ang mga ito ay mga pagkakasunud-sunod ng mga byte, mga lagda sa pag-atake, at iba pang mga uri ng data na, kapag natukoy, ay bumubuo ng isang alerto. Ang Snort ay may higit sa 1,500 handa nang pirma.

Ano ang hitsura ng panuntunan? Ang panuntunan para sa cmd.exe na nilabag sa panahon ng Snort test ay ganito: alerto tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"WEB-IIS cmd.exe access"; flow:to_server, established; content: " cmd.exe"; classtype:web-application-attack; sid:1002;). Tingnan natin ang mga pangunahing bahagi ng panuntunan. Tinutukoy ng link na $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS na tanging ang trapikong pumapasok sa network mula sa labas (tulad ng tinukoy ng EXTERNAL_NET variable) ang dapat suriin. Ang content: parameter ay tumutukoy sa paghahanap para sa isang sequence ng cmd.exe na mga character sa stream ng data. Kapag na-detect ng Snort ang ganoong sequence, bubuo ito ng babala na tinukoy ng msg: parameter.

Tulad ng nakikita mo mula sa halimbawa ng cmd.exe, ang mga patakaran ay halos simple. Maaari kang lumikha ng iyong sariling mga panuntunan para sa anumang uri ng trapiko. Halimbawa, kung gusto mong makakita ng mga hindi awtorisadong pagtatangka na malayuang ma-access ang isang direktoryo sa isang makina sa pamamagitan ng command interpreter, maaari kang maghanap ng volume sa drive o volume serial number sa mga port kung saan bihirang makita ang mga ito, tulad ng mga papalabas na port. Salamat sa flexible na diskarte sa pagtatalaga ng mga panuntunan, ang mga administrator ay binibigyan ng malawak na mga opsyon sa pagsasaayos para sa Snort.

Ang 1,500 na panuntunan ng Snort ay iniimbak sa iba't ibang mga file ayon sa mga uri ng data na sinusuri. Halimbawa, ang panuntunan para sa cmd.exe ay nasa file na web-iis.rules. Kung ang negosyo ay hindi gumagamit ng IIS, kung gayon ang programa ay hindi kailangang makita ang mga pag-atake ng IIS. Ang web-iis.rules file ay madaling maalis sa configuration sa pamamagitan ng paghahanap at pagkomento sa linya

Isama ang $RULE_PATH/web-iis.rules

sa snort.conf file. Upang gawing komento ang isang linya, unahan ito ng isang (#) na simbolo:

# isama ang $RULE_PATH/web-iis.rules

Bilang default, ang ilang uri ng mga file ng panuntunan (halimbawa, icmp-info.rules, chat.rules) ay kinakatawan ng mga komento sa snort.conf. Ang default na configuration ng mga panuntunan sa snort.conf ay medyo maganda. Pagkatapos i-activate ang mga naka-block na panuntunan, kadalasang bumubuo ang program ng maraming hindi kinakailangang babala.

Ang ilang mga file ay naglalaman ng isang bilang ng mga kapaki-pakinabang na panuntunan, ngunit ang ilang mga panuntunan ay bumubuo ng masyadong maraming hindi kinakailangang mga babala. Upang hindi paganahin ang isang partikular na panuntunan, kailangan mong markahan ang kaukulang linya sa file ng mga panuntunan bilang isang komento. Sa hinaharap, babalewalain ng Snort ang panuntunang ito kapag nagtatrabaho sa file.

Kapag lumitaw ang mga bagong mapagkukunan ng pagbabanta, dapat na ma-update ang file ng mga panuntunan. Ang pinakamahusay na mapagkukunan para sa mga bagong panuntunan ay Snort.org. Ang Web site na ito ay walang serbisyo ng awtomatikong pag-update, kaya kailangang regular na suriin ito ng administrator para sa mga update kapag may lumitaw na bagong banta.

Hakbang 6: I-configure ang mga alerto at log

Tulad ng nabanggit, ang Snort ay nagbibigay ng pagtatala ng impormasyon sa MySQL, SQL Server, Oracle at ODBC-compatible database. Piliin lamang ang naaangkop na uri ng database sa panahon ng proseso ng pag-install ng Snort. Upang hindi labis na madagdagan ang haba ng artikulo, isasaalang-alang namin ang mga karaniwang mode ng pag-log gamit ang isang text file at ang function ng pagsusulat ng mga mensahe sa log ng kaganapan sa Windows.

Kapag nagpapatakbo ng NIDS gamit ang Snort command, ang -A console switch ay nagdudulot ng mga babala na maipakita sa screen. Upang magpasa ng mga mensahe sa isang text file, dapat mong palitan ang switch na ito ng -A mabilis o -A puno, depende sa iyong ginustong logging mode. Ang buong parameter ay nagpapakita ng isang detalyadong paglalarawan ng banta sa ilang linya ng isang text file na pinangalanang alerts.ids sa direktoryo, ang path kung saan tinukoy ng -l switch. Ang ganitong uri ng pag-log ay nagbibigay ng mga komprehensibong detalye, ngunit maaaring mahirap maunawaan kung mayroong maraming mga kaganapan na naka-log sa network. Sa ganitong "maingay" na mga network, inirerekomendang gumamit ng fast mode upang magdagdag ng mga one-line na entry sa alerts.id na naglalaman ng mga pangunahing katangian ng kahina-hinalang trapiko. Sa aking opinyon, ang pagtatrabaho sa isang text file sa fast mode ay mas madali kaysa sa full mode.

Ang kasalukuyang bersyon ng Snort ay nagbibigay ng pag-log sa Windows event log. Maraming mga organisasyon ang bumili na ng sentralisadong pagsubaybay sa kaganapan, pag-log, at mga tool sa pagkolekta ng data, at ang tampok na ito ay magiging isang mahusay na karagdagan sa kapaligiran ng Windows.

Upang magsulat ng mga babala sa Application event log ng system kung saan tumatakbo ang Snort, gamitin ang -E switch sa halip na ang -A switch (mga parameter ay opsyonal). Ipinapakita ng Figure 5 kung ano ang hitsura ng isang Snort event (sa kasong ito, isang pagtatangka na ma-access ang cmd.exe) na na-publish sa Application log. Ang kaganapan sa Windows ay nagbibigay ng parehong detalyadong impormasyon gaya ng console screen.

Walang silbi ang NIDS kung titingnan ng administrator ang mga log ng kaganapan (o mga text log) isang beses sa isang linggo. Kung may nangyari sa network, dapat malaman agad ito ng administrator. Ang isang sentralisadong sistema ng pagsubaybay at pagproseso ng kaganapan ay maaaring magpadala ng mga mensahe sa pamamagitan ng email, pager at iba pang mga aparatong pangkomunikasyon. Ngunit kung walang ganoong sistema, hindi ito dapat ikabahala. Nag-aalok ang NETIKUS.NET ng libreng EventSentry Light package na maaaring magamit upang magpadala ng mga alerto.

Ang EventSentry Light ay isang trial na bersyon ng EventSentry at maaaring i-download mula sa http://www.netiku.net/products_downloads.html. Sa EventSentry Light, maaari mong i-configure ang iyong system upang subaybayan ang mga log ng kaganapan at awtomatikong magpadala ng mga detalyadong mensahe sa email tungkol sa anumang mga kaganapan sa Snort na naitala sa log. Naka-on screen 6 ay nagpapakita ng isang email na mensahe tungkol sa mga pagtatangka sa pag-atake sa cmd.exe. Natanggap ko ang mensaheng ito mula sa EventSentry Light ilang segundo pagkatapos maganap ang pag-atake.

Tulad ng nabanggit sa itaas, ang Snort ay karaniwang bumubuo ng isang tonelada ng mga hindi kinakailangang mensahe na mabilis na pinupuno ang mga log ng kaganapan. Ito ay isang bagay na dapat tandaan kapag pumipili ng mga laki ng file para sa mga log ng kaganapan at kung paano i-rotate ang mga ito. Upang pigilan ang EventSentry Light mula sa pagbaha sa iyong inbox ng mga mensahe tungkol sa mga maliliit na kaganapan, maaari kang lumikha ng isang filter upang maghanap ng mga pangunahing string. Halimbawa, nag-organisa ako ng filter sa paghahanap para sa isang string sa text ng mga mensahe.

Hakbang 7: Patakbuhin bilang isang serbisyo

Kapag tapos ka na, maaari mong patakbuhin ang Snort bilang isang serbisyo sa halip na mag-log in sa iyong desktop computer sa tuwing gusto mong patakbuhin ang program. Kung nagpapatakbo ka ng Snort gamit ang mga opsyon na /SERVICE at /INSTALL (kasama ang iba pang mga opsyon sa command line), naka-configure ang Snort na tumakbo bilang serbisyo ng Windows at awtomatikong magsisimula sa Windows nang walang interbensyon ng user.

Susunod na antas: expansion modules

Ang Snort ay isang ganap na tampok na application. Gayunpaman, sa ilang mga kaso ang programa ay kailangang palawakin. Halimbawa, kung maraming NIDS ang na-deploy sa iba't ibang bahagi ng network, maginhawang pamahalaan ang Snort mula sa graphical na interface. Ang ganitong mga kakayahan ay ipinatupad sa mga module ng extension ng IDScenter mula sa Engage Security at IDS Policy Manager mula sa Activeworx. Minsan kinakailangan na pag-aralan ang impormasyong nakapaloob sa mga mensahe. Maaari mong tingnan at suriin ang nakaimbak na data gamit ang Analysis Console for Intrusion Databases (ACID) module na binuo sa Carnegie Mellon University.

Maaasahang proteksyon

Ang Snort ay isang buong tampok na programa na hindi makakasira sa badyet ng kumpanya. Sa pamamagitan ng pagsasama ng Snort sa isang mahusay na application ng pagsubaybay sa kaganapan tulad ng EventSentry Light, maaari mong maagap na maiwasan ang mga pag-atake laban sa iyong network.

MINISTRY OF EDUCATION AND SCIENCE OF THE RUSSIAN FEDERATION

Institusyon ng estado ng mas mataas na propesyonal na edukasyon

"ST. PETERSBURG STATE UNIVERSITY
AEROSPACE INSTRUMENT ENGINEERING"

COURSE WORK (PROJECT)
PROTEKTAHAN NA MAY RATED EXCELLENT

SUPERBISOR

Associate Professor, Ph.D., Associate Professor

posisyon, akademiko degree, ranggo

pirma, petsa

inisyal, apelyido

PALIWANAG NA TALA PARA SA TRABAHO NG KURSO (PROYEKTO)

Magsanay gamit ang IDS SNORT

disiplina: engineering at teknikal na seguridad ng impormasyon

KUMPLETO NA ANG TRABAHO)

MAG-AARAL(KA) GR.

pirma, petsa

inisyal, apelyido

St. Petersburg 2011

1.. Ano ang Snort?. 2

2. Sniffer mode: 2

3. Packet logging mode. 6

4. Network intrusion detection mode. 6

1. Ano ang Snort?

Ang Snort ay isang magaan na intrusion detection system. Ang snort ay karaniwang tinatawag na "magaan" na NIDS / decrypt, isalin / - dahil ito ay pangunahing idinisenyo para sa maliliit na network. Ang programa ay maaaring magsagawa ng pagtatasa ng protocol at maaaring magamit upang makita ang iba't ibang mga pag-atake.

Gumagamit ang Snort ng "mga panuntunan" (tinukoy sa "mga panuntunan" na file) para malaman kung aling trapiko ang papayagan at kung alin ang haharang. Ang tool ay nababaluktot, na nagbibigay-daan sa iyong isulat ang mga bagong panuntunan at sundin ang mga ito.

Maaaring gumana ang Snort sa 3 pangunahing mga mode:

· Sniffer mode: nagbibigay-daan sa iyo na mahuli ang mga packet mula sa network at ipakita ang mga ito sa screen (karaniwan ay ang console)

· Packet logging mode: nagbibigay-daan sa iyong mag-save ng mga package sa iyong hard drive


· Ang Intrusion Detection System (NIDS) mode ay ang pinaka-sopistikado at nako-customize na configuration na nagbibigay-daan sa iyong pag-aralan ang trapiko sa network batay sa isang set ng mga panuntunan na tinukoy ng user.

2. Sniffer mode:

Sa packet sniffing mode, binabasa lang ng Snort ang mga packet na nagmumula sa network at ipinapakita ang mga ito sa screen. Upang ipakita ang mga header ng TCP/IP packet, dapat mong patakbuhin ang:

nguso –v

Ipinapakita ng command na ito ang mga header ng packet ng IP at TCP/UDP/ICMP. Makikita mo kung saan ipinadala ang mga packet, saan, hanggang sa ilan ang /address?/. Ang figure/drawing ay dapat na may bilang para sa sanggunian. Walang link - ibig sabihin ay hindi kailangan ang larawan / malinaw na mayroong dalawang papalabas na address / saan mo ito makikita? Tukuyin ang mga format ng mga entry sa figure o hindi bababa sa sumangguni sa numero ng linya /

Upang maunawaan kung ano ang mga address na ito, patakbuhin lang ang command

Info ng sistema


Mula sa larawan / na - mga larawan. at hindi drawing? Ang pagkakapareho ay dapat mapanatili sa loob ng dokumento! O iba pa ba ito?/ Nagiging malinaw kung ano ang mga papalabas na address na ito. /well, ilista ang mga ito - o hindi bababa sa ipahiwatig ang mga ito. na ang kanilang mga numero ay ibinibigay sa mga square bracket/

Upang makita ang data na nakapaloob sa mga pakete, dapat mong ipasok ang:

nguso-vd

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

Ang mga switch ay maaaring ibigay sa anumang anyo, halimbawa: "snort - vde", "snort - d - ev" at "snort - e - v -d".

Ang Snort ay patuloy na mangolekta ng impormasyon hanggang sa ito ay maantala. Upang makumpleto ang pagkuha ng packet, kailangan mong pindutin ang Ctrl-C. Pagkatapos pindutin ang Ctrl-C, ipapakita ang isang ulat ng mga nakuhang packet. Nasa ibaba ang ulat pagkatapos patakbuhin ang Snort nang halos isang minuto.

Mula sa snapshot makikita mo na karamihan sa mga nasuri na packet ay mga TCP/IP packet. Nakuha rin ang mga packet ng UDP.

3. Packet logging mode

Binibigyang-daan ka ng packet logging mode na mag-record ng stream ng impormasyon sa disk. Ito ay kapaki-pakinabang kapag nagsasagawa ng pagsusuri sa loob ng isang yugto ng panahon o tumitingin ng mga pagbabago sa mga setting at mga patakaran sa seguridad.
Kailangan mong gumawa at tumukoy ng direktoryo para sa mga log, at awtomatikong lilipat ang Snort sa packet logging mode.

Halimbawa: paglikha ng isang direktoryo mga log at tumakbo:

nguso - dev - l../log

Bilang resulta ng operasyon /kung saan, kung saan ito hahanapin, paano ipahiwatig ang nais na lokasyon?/ ang file snort. log.. Ang mga numero sa dulo ng mga bagong pangalan ng file ay mga timestamp, na nakakatulong na maiwasan ang mga salungatan kapag gumagawa ng mga file. /isang halimbawa ng isang log file ay kanais-nais/

4. Network intrusion detection mode

Ang ikatlong mode ng Snort ay ang Network Intrusion Detection (NIDS) mode.

Sa pangunahing anyo nito, ang isang Snort rule /saan sila nakaimbak?/ ay may dalawang bahagi: isang header at mga parameter. Nasa ibaba ang isang halimbawa ng isang panuntunan.

alerto tcp any any -> any any (content: "www."; msg: "May bumibisita sa youtube ngayon"; sid:1000002; rev:1)

Maaari bang katawanin ang modelo ng istruktura ng panuntunan? inaasahan namin na ang mga elemento sa mga square bracket ay opsyonal. kilala. Ngunit mayroon bang mga espesyal na separator sa pagitan nila / ayon sa sumusunod na pamamaraan:

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


<порт>([meta_data] [package_contents_data]

[data_in_header] [action_after_detection])

Ang mga pagkilos sa panuntunan ay nahahati sa mga sumusunod na kategorya:

1. alerto - Lumikha ng alerto gamit ang napiling paraan at iulat ang impormasyon sa sistema ng pag-log.

2. log - Gumamit ng isang sistema ng pag-log upang itala ang impormasyon ng pakete.

3. pumasa - Huwag pansinin ang pakete.

4. buhayin - Gumamit ng isa pang dynamic na panuntunan.

5. pabago-bago - Matapos maisakatuparan ang aktibong panuntunan, isaaktibo ang panuntunang may pamamaraan sa pag-log.

6. drop - I-drop ang packet gamit ang isang software firewall at iulat ang impormasyon sa sistema ng pag-log

7. sdrop - I-drop ang packet gamit ang isang software firewall at huwag gamitin ang logging system.

8. tanggihan - Gamit ang isang firewall, itapon ang packet kung ang protocol ay TCP, o magsulat ng mensahe sa log file: Ang ICMP port ay hindi magagamit kung ang packet ay dumating sa pamamagitan ng UDP protocol

Ang ikalawang bahagi ng panuntunan ng Snort ay ang mga opsyon na tumutukoy sa mga karagdagang detalye ng nakitang trapiko. Maaari kang maghanap ayon sa isang hanay ng mga field sa TCP/ header o sa pamamagitan ng packet payload. Ang bawat opsyon ay dapat na sundan ng mga panipi at ang halagang hinahanap. Maaari kang magdagdag ng maramihang mga opsyon sa pamamagitan ng paghihiwalay sa mga ito gamit ang isang semicolon. Ang mga sumusunod ay wastong opsyon.

sid – isang natatanging label na nagpapakilala sa panuntunan. Dapat gamitin ang opsyong ito kasama ng opsyon rev .

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

100-999,999 na nakalaan na mga patakaran

>=1,000,000 mga panuntunang tinukoy ng user

rev- halaga ng bersyon ng panuntunan. Paggamit ng rev rules interpreter

Tinutukoy ng Snort ang bersyon ng nakasulat na panuntunan.

Maaari mong patakbuhin ang Snort sa IDS mode gamit ang command:

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

susi -Kasama nangangahulugan na ang IDS mode ay pinagana

susi l nagbibigay-daan sa mode ng pag-record sa hard disk na nagpapahiwatig ng landas patungo sa file

susi A ay nagpapakita na ang lahat ng mga babala (alerto) ay mado-duplicate ng console output

susi i ay nagpapahiwatig ng index number ng interface kung saan kami interesado

upang malaman ang mga suportadong interface na kailangan mong patakbuhin ang command:

nguso W

Mga nilalaman ng file nguso. conf

Mga nilalaman ng file *****les:

Sa file nguso. conf maaari mong ikonekta ang mga panuntunan gamit ang keyword isama .

Resulta ng utos:

Makikita na nakita ni Snort ang isang pagtatangka na makapunta sa isang "mapanganib" na site.

Walang impormasyon tungkol sa pinagmulan kung saan kinuha ang pamamahagi, o tungkol sa OS kung saan isinagawa ang pananaliksik

Sa pangkalahatan, ang gawain ay napaka-interesante. /