Snort ili Suricata. Dio 3: Zaštita uredske mreže

В prethodni članak opisali smo kako pokrenuti stabilnu verziju Suricate na Ubuntu 18.04 LTS. Postavljanje IDS-a na jednom čvoru i omogućavanje besplatnih skupova pravila prilično je jednostavno. Danas ćemo otkriti kako zaštititi korporativnu mrežu koristeći najčešće vrste napada koristeći Suricatu instaliranu na virtualnom poslužitelju. Da bismo to učinili, potreban nam je VDS na Linuxu s dvije računalne jezgre. Količina RAM-a ovisi o opterećenju: nekome je dovoljno 2 GB, a za ozbiljnije zadatke može biti potrebno 4 ili čak 6. Prednost virtualnog stroja je mogućnost eksperimentiranja: možete započeti s minimalnom konfiguracijom i povećati sredstva po potrebi.

Snort ili Suricata. Dio 3: Zaštita uredske mrežefoto: Reuters

Povezivanje mreža

Uklanjanje IDS-a na virtualnom stroju možda će biti potrebno za testiranje. Ako nikada niste imali posla s ovakvim rješenjima, nemojte žuriti s naručivanjem fizičkog hardvera i promjenom mrežne arhitekture. Najbolje je pokrenuti sustav sigurno i isplativo kako biste utvrdili svoje računalne potrebe. Važno je razumjeti da će sav korporativni promet morati biti proslijeđen kroz jedan vanjski čvor: za povezivanje lokalne mreže (ili nekoliko mreža) s VDS-om s instaliranim IDS Suricata, možete koristiti SoftEther - Jednostavan za konfiguriranje, višeplatformski VPN poslužitelj koji pruža jaku enkripciju. Uredska internetska veza možda nema pravi IP, stoga je bolje postaviti je na VPS. Nema gotovih paketa u repozitoriju Ubuntua, softver ćete morati preuzeti s bilo kojeg mjesto projekta, ili iz vanjskog repozitorija na usluzi Launchpad (ako mu vjerujete):

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

Popis dostupnih paketa možete pogledati sljedećom naredbom:

apt-cache search softether

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Trebat će nam softether-vpnserver (poslužitelj u testnoj konfiguraciji radi na VDS-u), kao i softether-vpncmd - uslužni programi naredbenog retka za njegovu konfiguraciju.

sudo apt-get install softether-vpnserver softether-vpncmd

Za konfiguraciju poslužitelja koristi se poseban uslužni program naredbenog retka:

sudo vpncmd

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Nećemo govoriti u detalje o postavljanju: postupak je prilično jednostavan, dobro je opisan u brojnim publikacijama i nije izravno povezan s temom članka. Ukratko, nakon pokretanja vpncmd-a, trebate odabrati stavku 1 da biste otišli na konzolu za upravljanje poslužiteljem. Da biste to učinili, trebate unijeti naziv localhost i pritisnuti enter umjesto unosa naziva čvorišta. Administratorska lozinka postavlja se u konzoli naredbom serverpasswordset, DEFAULT virtualni hub se briše (naredba hubdelete) i kreira novi s imenom Suricata_VPN te se postavlja i njegova lozinka (naredba hubcreate). Zatim trebate otići na upravljačku konzolu novog čvorišta pomoću naredbe hub Suricata_VPN da biste stvorili grupu i korisnika pomoću naredbi groupcreate i usercreate. Korisnička lozinka postavlja se pomoću userpasswordset.

SoftEther podržava dva načina prijenosa prometa: SecureNAT i Local Bridge. Prva je vlasnička tehnologija za izgradnju virtualne privatne mreže s vlastitim NAT-om i DHCP-om. SecureNAT ne zahtijeva TUN/TAP ili Netfilter ili druge postavke vatrozida. Usmjeravanje ne utječe na jezgru sustava, a svi su procesi virtualizirani i rade na bilo kojem VPS-u/VDS-u, neovisno o hipervizoru koji se koristi. To rezultira povećanim opterećenjem CPU-a i manjom brzinom u usporedbi s Local Bridge načinom rada, koji povezuje SoftEther virtualno čvorište s fizičkim mrežnim adapterom ili TAP uređajem.

Konfiguracija u ovom slučaju postaje kompliciranija, jer se usmjeravanje odvija na razini kernela pomoću Netfiltera. Naši VDS-ovi su izgrađeni na Hyper-V, tako da u posljednjem koraku stvaramo lokalni most i aktiviramo TAP uređaj naredbom bridgecreate Suricate_VPN -device:suricate_vpn -tap:yes. Nakon izlaska iz konzole za upravljanje čvorištem, vidjet ćemo novo mrežno sučelje u sustavu kojem još nije dodijeljen IP:

ifconfig

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Zatim ćete morati omogućiti usmjeravanje paketa između sučelja (ip forward), ako je neaktivno:

sudo nano /etc/sysctl.conf

Odkomentirajte sljedeći redak:

net.ipv4.ip_forward = 1

Spremite promjene u datoteku, izađite iz uređivača i primijenite ih sljedećom naredbom:

sudo sysctl -p

Zatim moramo definirati podmrežu za virtualnu mrežu s fiktivnim IP adresama (na primjer, 10.0.10.0/24) i dodijeliti adresu sučelju:

sudo ifconfig tap_suricata_vp 10.0.10.1/24

Zatim trebate napisati Netfilter pravila.

1. Ako je potrebno, dopustite dolazne pakete na portovima za slušanje (vlasnički protokol SoftEther koristi HTTPS i port 443)

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. Postavite NAT s podmreže 10.0.10.0/24 na IP glavnog poslužitelja

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

3. Dopustite prolazak paketa iz podmreže 10.0.10.0/24

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

4. Dopustite prolazak paketa za već uspostavljene veze

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

Automatizaciju procesa kada se sustav ponovno pokrene pomoću inicijalizacijskih skripti ostavit ćemo čitateljima kao domaću zadaću.

Ako želite automatski dati IP klijentima, morat ćete instalirati i neku vrstu DHCP usluge za lokalni most. Ovo dovršava postavljanje poslužitelja i možete otići do klijenata. SoftEther podržava mnoge protokole, čija upotreba ovisi o mogućnostima LAN opreme.

netstat -ap |grep vpnserver

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Budući da naš testni usmjerivač također radi pod Ubuntuom, instalirajmo pakete softether-vpnclient i softether-vpncmd iz vanjskog repozitorija na njemu da koristimo vlasnički protokol. Morat ćete pokrenuti klijenta:

sudo vpnclient start

Za konfiguraciju upotrijebite uslužni program vpncmd, odabirom localhost kao stroja na kojem se izvodi vpnclient. Sve naredbe se izvode u konzoli: morat ćete kreirati virtualno sučelje (NicCreate) i račun (AccountCreate).

U nekim slučajevima morate navesti metodu provjere autentičnosti pomoću naredbi AccountAnonymousSet, AccountPasswordSet, AccountCertSet i AccountSecureCertSet. Budući da ne koristimo DHCP, adresa za virtualni adapter postavlja se ručno.

Osim toga, moramo omogućiti ip forward (parametar net.ipv4.ip_forward=1 u datoteci /etc/sysctl.conf) i konfigurirati statičke rute. Ako je potrebno, na VDS-u sa Suricatom možete konfigurirati prosljeđivanje porta za korištenje usluga instaliranih na lokalnoj mreži. Na ovome se spajanje mreže može smatrati završenim.

Naša predložena konfiguracija izgledat će otprilike ovako:

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Postavljanje Suricate

В prethodni članak govorili smo o dva načina rada IDS-a: kroz NFQUEUE red (NFQ način) i kroz nultu kopiju (AF_PACKET način). Drugo zahtijeva dva sučelja, ali je brže - koristit ćemo ga. Parametar je postavljen prema zadanim postavkama u /etc/default/suricata. Također trebamo urediti odjeljak vars u /etc/suricata/suricata.yaml, postavljajući tamo virtualnu podmrežu kao početnu.

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Za ponovno pokretanje IDS-a koristite naredbu:

systemctl restart suricata

Rješenje je spremno, sada ćete ga možda morati testirati na otpornost na zlonamjerne radnje.

Simuliranje napada

Može postojati nekoliko scenarija borbene uporabe vanjske IDS usluge:

Zaštita od DDoS napada (primarna namjena)

Teško je implementirati takvu opciju unutar korporativne mreže, budući da paketi za analizu moraju doći do sučelja sustava koje gleda na Internet. Čak i ako ih IDS blokira, lažni promet može prekinuti podatkovnu vezu. Kako biste to izbjegli, trebate naručiti VPS s dovoljno produktivnom internetskom vezom koja može proći sav promet lokalne mreže i sav vanjski promet. Često je lakše i jeftinije to učiniti nego proširiti uredski kanal. Kao alternativu vrijedi spomenuti specijalizirane usluge za zaštitu od DDoS-a. Cijena njihovih usluga usporediva je s cijenom virtualnog poslužitelja i ne zahtijeva dugotrajnu konfiguraciju, no postoje i nedostaci - klijent za svoj novac dobiva samo DDoS zaštitu, dok vlastiti IDS može konfigurirati kao vi Kao.

Zaštita od vanjskih napada drugih vrsta

Suricata se može nositi s pokušajima iskorištavanja različitih ranjivosti u korporativnim mrežnim servisima dostupnim s interneta (poslužitelj pošte, web poslužitelj i web aplikacije itd.). Obično se za to IDS instalira unutar LAN-a nakon graničnih uređaja, ali njegovo iznošenje izvan ima pravo postojati.

Zaštita od insajdera

Unatoč svim naporima administratora sustava, računala na korporativnoj mreži mogu biti zaražena zlonamjernim softverom. Osim toga, ponekad se u lokalnom području pojavljuju huligani koji pokušavaju izvesti neke ilegalne radnje. Suricata može pomoći u blokiranju takvih pokušaja, iako je za zaštitu interne mreže bolje instalirati je unutar perimetra i koristiti u tandemu s upravljanim preklopnikom koji može zrcaliti promet na jedan port. Vanjski IDS također nije beskoristan u ovom slučaju - barem će moći uhvatiti pokušaje zlonamjernog softvera koji živi na LAN-u da kontaktira vanjski poslužitelj.

Za početak ćemo napraviti još jedan testni napadački VPS, te ćemo na ruteru lokalne mreže podići Apache sa zadanom konfiguracijom, nakon čega ćemo mu proslijediti 80. port s IDS servera. Zatim ćemo simulirati DDoS napad s hosta koji napada. Da biste to učinili, preuzmite s GitHuba, prevedite i pokrenite mali xerxes program na napadačkom čvoru (možda ćete morati instalirati gcc paket):

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

Rezultat njenog rada bio je sljedeći:

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Suricata odsiječe zlikovca, a Apache stranica se otvara prema zadanim postavkama, unatoč našem improviziranom napadu i prilično mrtvom kanalu "uredske" (zapravo kućne) mreže. Za ozbiljnije zadatke, trebali biste koristiti Metasploit Framework. Dizajniran je za testiranje penetracije i omogućuje vam simulaciju raznih napada. Upute za instalaciju доступна na web stranici projekta. Nakon instalacije potrebno je ažuriranje:

sudo msfupdate

Za testiranje pokrenite msfconsole.

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Nažalost, najnovije verzije okvira nemaju mogućnost automatskog krekiranja, pa će se eksploatacije morati sortirati ručno i pokrenuti pomoću naredbe use. Za početak, vrijedi odrediti otvorene portove na napadnutom računalu, na primjer, koristeći nmap (u našem slučaju, on će biti potpuno zamijenjen netstatom na napadnutom računalu), a zatim odabrati i koristiti odgovarajući Metasploit moduli

Postoje i drugi načini testiranja otpornosti IDS-a na napade, uključujući online usluge. Zanimljivosti radi, možete organizirati testiranje otpornosti na stres pomoću probne verzije IP stresor. Da biste provjerili reakciju na radnje unutarnjih uljeza, vrijedi instalirati posebne alate na jedan od strojeva u lokalnoj mreži. Postoji mnogo opcija i s vremena na vrijeme treba ih primijeniti ne samo na eksperimentalnu lokaciju, već i na radne sustave, samo što je ovo sasvim druga priča.

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Snort ili Suricata. Dio 3: Zaštita uredske mreže

Izvor: www.habr.com

Dodajte komentar