Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Š’ iepriekŔējais raksts mēs esam apskatÄ«juÅ”i, kā palaist stabilo Suricata versiju Ubuntu 18.04 LTS. IDS iestatÄ«Å”ana vienā mezglā un bezmaksas noteikumu kopu iespējoÅ”ana ir diezgan vienkārÅ”a. Å odien mēs izdomāsim, kā aizsargāt korporatÄ«vo tÄ«klu, izmantojot visizplatÄ«tākos uzbrukumu veidus, izmantojot virtuālajā serverÄ« instalēto Suricata. Lai to izdarÄ«tu, mums ir nepiecieÅ”ams VDS operētājsistēmā Linux ar diviem skaitļoÅ”anas kodoliem. RAM apjoms ir atkarÄ«gs no slodzes: kādam pietiek ar 2 GB, nopietnākiem darbiem var bÅ«t nepiecieÅ”ami 4 vai pat 6. Virtuālās maŔīnas priekÅ”rocÄ«ba ir iespēja eksperimentēt: var sākt ar minimālu konfigurāciju un palielināt resursus pēc vajadzÄ«bas.

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzībafoto: Reuters

Tīklu savienoŔana

IDS pārvietoÅ”ana uz virtuālo maŔīnu vispirms var bÅ«t nepiecieÅ”ama testu veikÅ”anai. Ja jÅ«s nekad neesat nodarbojies ar Ŕādiem risinājumiem, jums nevajadzētu steigties pasÅ«tÄ«t fizisko aparatÅ«ru un mainÄ«t tÄ«kla arhitektÅ«ru. Vislabāk ir palaist sistēmu droÅ”i un rentabli, lai noteiktu skaitļoÅ”anas vajadzÄ«bas. Ir svarÄ«gi saprast, ka visa korporatÄ«vā trafika bÅ«s jānodod caur vienu ārēju mezglu: lai savienotu vietējo tÄ«klu (vai vairākus tÄ«klus) ar VDS ar instalētu IDS Suricata, varat izmantot SoftEther - Viegli konfigurējams, vairāku platformu VPN serveris, kas nodroÅ”ina spēcÄ«gu Å”ifrÄ“Å”anu. Biroja interneta savienojumam var nebÅ«t Ä«sta IP, tāpēc labāk to iestatÄ«t VPS. Ubuntu repozitorijā nav gatavu pakotņu, programmatÅ«ra bÅ«s jālejupielādē vai nu no projekta vietnevai no pakalpojuma ārējā repozitorija Launchpad (ja tu viņam uzticies):

sudo add-apt-repository ppa:paskal-07/softethervpn
sudo apt-get update

Pieejamo pakotņu sarakstu var apskatÄ«t ar Ŕādu komandu:

apt-cache search softether

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Mums bÅ«s nepiecieÅ”ams softether-vpnserver (testa konfigurācijā esoÅ”ais serveris darbojas VDS), kā arÄ« softether-vpncmd - komandrindas utilÄ«tas tā konfigurÄ“Å”anai.

sudo apt-get install softether-vpnserver softether-vpncmd

Servera konfigurēŔanai tiek izmantota īpaŔa komandrindas utilīta:

sudo vpncmd

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Mēs nerunāsim sÄ«kāk par iestatÄ«jumu: procedÅ«ra ir diezgan vienkārÅ”a, tā ir labi aprakstÄ«ta daudzās publikācijās un nav tieÅ”i saistÄ«ta ar raksta tēmu. ÄŖsāk sakot, pēc vpncmd palaiÅ”anas jums ir jāatlasa 1. vienums, lai pārietu uz servera pārvaldÄ«bas konsoli. Lai to izdarÄ«tu, jums jāievada nosaukums localhost un jānospiež enter, nevis jāievada centrmezgla nosaukums. Konsolē ar komandu serverpasswordset tiek iestatÄ«ta administratora parole, tiek dzēsts DEFAULT virtuālais centrmezgls (komanda hubdelete) un tiek izveidots jauns ar nosaukumu Suricata_VPN, kā arÄ« tiek iestatÄ«ta tā parole (komanda hubcreate). Pēc tam jums ir jādodas uz jaunā centrmezgla pārvaldÄ«bas konsoli, izmantojot komandu Hub Suricata_VPN, lai izveidotu grupu un lietotāju, izmantojot komandas groupcreate un usercreate. Lietotāja parole tiek iestatÄ«ta, izmantojot userpasswordset.

SoftEther atbalsta divus satiksmes pārsÅ«tÄ«Å”anas režīmus: SecureNAT un Local Bridge. Pirmā ir patentēta tehnoloÄ£ija virtuāla privātā tÄ«kla izveidei ar savu NAT un DHCP. SecureNAT neprasa TUN/TAP vai Netfilter vai citus ugunsmÅ«ra iestatÄ«jumus. MarÅ”rutÄ“Å”ana neietekmē sistēmas kodolu, un visi procesi tiek virtualizēti un darbojas jebkurā VPS/VDS neatkarÄ«gi no izmantotā hipervizora. Tā rezultātā palielinās CPU noslodze un lēnāks ātrums salÄ«dzinājumā ar vietējā tilta režīmu, kas savieno SoftEther virtuālo centrmezglu ar fizisko tÄ«kla adapteri vai TAP ierÄ«ci.

Konfigurācija Å”ajā gadÄ«jumā kļūst sarežģītāka, jo marÅ”rutÄ“Å”ana notiek kodola lÄ«menÄ«, izmantojot Netfilter. MÅ«su VDS ir veidota uz Hyper-V, tāpēc pēdējā darbÄ«bā mēs izveidojam lokālo tiltu un aktivizējam TAP ierÄ«ci ar komandu bridgecreate Suricate_VPN -device:suricate_vpn -tap:yes. Pēc izieÅ”anas no centrmezgla pārvaldÄ«bas konsoles sistēmā redzēsim jaunu tÄ«kla saskarni, kurai vēl nav pieŔķirts IP:

ifconfig

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Pēc tam jums bÅ«s jāiespējo pakeÅ”u marÅ”rutÄ“Å”ana starp saskarnēm (ip uz priekÅ”u), ja tā ir neaktÄ«va:

sudo nano /etc/sysctl.conf

Atceliet Ŕādas rindas komentārus:

net.ipv4.ip_forward = 1

Saglabājiet izmaiņas failā, izejiet no redaktora un lietojiet tās ar Ŕādu komandu:

sudo sysctl -p

Tālāk mums ir jādefinē apakÅ”tÄ«kls virtuālajam tÄ«klam ar fiktÄ«viem IP (piemēram, 10.0.10.0/24) un interfeisam jāpieŔķir adrese:

sudo ifconfig tap_suricata_vp 10.0.10.1/24

Tad jums ir jāraksta Netfilter noteikumi.

1. Ja nepiecieÅ”ams, atļaujiet ienākoŔās paketes noklausÄ«Å”anās portos (SoftEther patentētais protokols izmanto HTTPS un 443. portu)

sudo iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 992 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p udp -m udp --dport 1194 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 5555 -j ACCEPT

2. Iestatiet NAT no 10.0.10.0/24 apakÅ”tÄ«kla uz galvenā servera IP.

sudo iptables -t nat -A POSTROUTING -s 10.0.10.0/24 -j SNAT --to-source 45.132.17.140

3. Atļaut pārsūtīt pakeŔu no apakŔtīkla 10.0.10.0/24

sudo iptables -A FORWARD -s 10.0.10.0/24 -j ACCEPT

4. Atļaujiet nodot paketes jau izveidotiem savienojumiem

sudo iptables -A FORWARD -p all -m state --state ESTABLISHED,RELATED -j ACCEPT

Procesa automatizāciju, kad sistēma tiks restartēta, izmantojot inicializācijas skriptus, kā mājasdarbu atstāsim lasītāju ziņā.

Ja vēlaties automātiski pieŔķirt IP klientiem, jums bÅ«s jāinstalē arÄ« kāds DHCP pakalpojums vietējam tiltam. Tas pabeidz servera iestatÄ«Å”anu, un jÅ«s varat doties uz klientiem. SoftEther atbalsta daudzus protokolus, kuru izmantoÅ”ana ir atkarÄ«ga no LAN aprÄ«kojuma iespējām.

netstat -ap |grep vpnserver

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Tā kā mÅ«su testa marÅ”rutētājs darbojas arÄ« ar Ubuntu, instalēsim softether-vpnclient un softether-vpncmd pakotnes no ārējās krātuves, lai izmantotu patentēto protokolu. Jums bÅ«s jāpalaiž klients:

sudo vpnclient start

Lai konfigurētu, izmantojiet utilÄ«tu vpncmd, atlasot localhost kā maŔīnu, kurā darbojas vpnclient. Visas komandas tiek veiktas konsolē: jums bÅ«s jāizveido virtuālais interfeiss (NicCreate) un konts (AccountCreate).

Dažos gadījumos ir jānorāda autentifikācijas metode, izmantojot komandas AccountAnonymousSet, AccountPasswordSet, AccountCertSet un AccountSecureCertSet. Tā kā mēs neizmantojam DHCP, virtuālā adaptera adrese tiek iestatīta manuāli.

Turklāt mums ir jāiespējo ip forward (parametrs net.ipv4.ip_forward=1 failā /etc/sysctl.conf) un jākonfigurē statiskie marÅ”ruti. Ja nepiecieÅ”ams, VDS ar Suricata varat konfigurēt portu pāradresāciju, lai izmantotu vietējā tÄ«klā instalētos pakalpojumus. Å ajā sakarā tÄ«kla apvienoÅ”anu var uzskatÄ«t par pabeigtu.

MÅ«su piedāvātā konfigurācija izskatÄ«sies apmēram Ŕādi:

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Suricata iestatīŔana

Š’ iepriekŔējais raksts mēs runājām par diviem IDS darbÄ«bas režīmiem: caur NFQUEUE rindu (NFQ režīms) un caur nulles kopiju (AF_PACKET režīms). Otrajam ir nepiecieÅ”amas divas saskarnes, bet tas ir ātrāks - mēs to izmantosim. Parametrs pēc noklusējuma ir iestatÄ«ts mapē /etc/default/suricata. Mums ir arÄ« jārediģē sadaļa vars mapē /etc/suricata/suricata.yaml, iestatot virtuālo apakÅ”tÄ«klu kā mājas lapu.

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Lai restartētu IDS, izmantojiet komandu:

systemctl restart suricata

Risinājums ir gatavs, tagad jums, iespējams, būs jāpārbauda tā izturība pret ļaunprātīgām darbībām.

Uzbrukumu simulēŔana

Ārēja IDS pakalpojuma kaujas izmantoÅ”anai var bÅ«t vairāki scenāriji:

Aizsardzība pret DDoS uzbrukumiem (galvenais mērķis)

Šādu iespēju ir grÅ«ti ieviest korporatÄ«vajā tÄ«klā, jo analÄ«zei paredzētajām paketēm ir jānokļūst sistēmas saskarnē, kas skatās uz internetu. Pat ja IDS tos bloķē, neÄ«stā trafika var pārtraukt datu savienojumu. Lai no tā izvairÄ«tos, jums ir jāpasÅ«ta VPS ar pietiekami produktÄ«vu interneta pieslēgumu, kas var nodot visu lokālā tÄ«kla trafiku un visu ārējo trafiku. Bieži vien to ir vieglāk un lētāk izdarÄ«t nekā paplaÅ”ināt biroja kanālu. Kā alternatÄ«vu ir vērts pieminēt specializētos pakalpojumus aizsardzÄ«bai pret DDoS. Viņu pakalpojumu izmaksas ir salÄ«dzināmas ar virtuālā servera izmaksām, un tam nav nepiecieÅ”ama laikietilpÄ«ga konfigurÄ“Å”ana, taču ir arÄ« trÅ«kumi - klients par savu naudu saņem tikai DDoS aizsardzÄ«bu, savukārt savu IDS var konfigurēt kā jÅ«s patÄ«k.

Aizsardzība pret cita veida ārējiem uzbrukumiem

Suricata spēj tikt galā ar mēģinājumiem izmantot dažādas ievainojamÄ«bas korporatÄ«vajos tÄ«kla pakalpojumos, kas pieejami no interneta (pasta serveris, tÄ«mekļa serveris un tÄ«mekļa lietojumprogrammas utt.). Parasti Å”im nolÅ«kam IDS tiek uzstādÄ«ts LAN iekÅ”pusē pēc robežierÄ«cēm, bet izņemÅ”anai ārpusē ir tiesÄ«bas pastāvēt.

Aizsardzība no iekŔienes

Neskatoties uz sistēmas administratora pÅ«lēm, korporatÄ«vajā tÄ«klā esoÅ”ie datori var tikt inficēti ar ļaunprātÄ«gu programmatÅ«ru. Turklāt vietējā teritorijā dažkārt parādās huligāni, kuri cenÅ”as veikt kādas nelikumÄ«gas darbÄ«bas. Suricata var palÄ«dzēt bloķēt Ŕādus mēģinājumus, lai gan, lai aizsargātu iekŔējo tÄ«klu, labāk to uzstādÄ«t perimetrā un izmantot kopā ar pārvaldÄ«tu slēdzi, kas var atspoguļot trafiku uz vienu portu. ArÄ« ārējais IDS Å”ajā gadÄ«jumā nav bezjēdzÄ«gs ā€“ vismaz tas spēs notvert LAN mÄ«toŔās ļaunprogrammatÅ«ras mēģinājumus sazināties ar ārēju serveri.

Sākumā mēs izveidosim vēl vienu testu, kas uzbrÅ«k VPS, un vietējā tÄ«kla marÅ”rutētājā mēs paaugstināsim Apache ar noklusējuma konfigurāciju, pēc tam no IDS servera uz to pārsÅ«tÄ«sim 80. portu. Tālāk mēs simulēsim DDoS uzbrukumu no uzbrÅ«koÅ”a saimniekdatora. Lai to izdarÄ«tu, lejupielādējiet no GitHub, kompilējiet un palaidiet nelielu xerxes programmu uzbrukuma mezglā (iespējams, jums bÅ«s jāinstalē gcc pakotne):

git clone https://github.com/Soldie/xerxes-DDos-zanyarjamal-C.git
cd xerxes-DDos-zanyarjamal-C/
gcc xerxes.c -o xerxes 
./xerxes 45.132.17.140 80

Viņas darba rezultāts bija Ŕāds:

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Suricata nogriež ļaundari, un Apache lapa tiek atvērta pēc noklusējuma, neskatoties uz mÅ«su improvizēto uzbrukumu un diezgan miruÅ”o "biroja" (faktiski mājas) tÄ«kla kanālu. Nopietnākiem uzdevumiem jums vajadzētu izmantot Metasploit sistēma. Tas ir paredzēts iespieÅ”anās pārbaudei un ļauj simulēt dažādus uzbrukumus. UzstādÄ«Å”anas instrukcijas pieejama projekta mājaslapā. Pēc instalÄ“Å”anas ir nepiecieÅ”ams atjauninājums:

sudo msfupdate

Lai pārbaudītu, palaidiet msfconsole.

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Diemžēl jaunākajām ietvara versijām nav iespējas automātiski uzlauzt, tāpēc exploiti bÅ«s jākārto manuāli un jāpalaiž, izmantojot komandu use. Vispirms ir vērts noteikt portus, kas ir atvērti uzbrukuÅ”ajā datorā, piemēram, izmantojot nmap (mÅ«su gadÄ«jumā tas tiks pilnÄ«bā aizstāts ar netstat uzbruktajā resursdatorā), un pēc tam atlasiet un izmantojiet atbilstoÅ”o Metasploit moduļi

Ir arÄ« citi veidi, kā pārbaudÄ«t IDS noturÄ«bu pret uzbrukumiem, tostarp tieÅ”saistes pakalpojumi. Zinātkāres labad varat organizēt stresa testÄ“Å”anu, izmantojot izmēģinājuma versiju IP stresa izraisÄ«tājs. Lai pārbaudÄ«tu reakciju uz iekŔējo iebrucēju darbÄ«bām, ir vērts instalēt Ä«paÅ”us rÄ«kus vienā no vietējā tÄ«kla maŔīnām. Variantu ir ļoti daudz un ik pa laikam tās jāpiemēro ne tikai eksperimentālajai vietai, bet arÄ« darba sistēmām, tikai tas ir pavisam cits stāsts.

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Snort vai Suricata. 3. daļa: Biroja tīkla aizsardzība

Avots: www.habr.com

Pievieno komentāru