Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

В article anterior hem tractat com executar la versió estable de Suricata a Ubuntu 18.04 LTS. Configurar un IDS en un sol node i habilitar conjunts de regles gratuïts és bastant senzill. Avui descobrirem com protegir una xarxa corporativa utilitzant els tipus d'atacs més comuns amb Suricata instal·lat en un servidor virtual. Per fer-ho, necessitem un VDS a Linux amb dos nuclis informàtics. La quantitat de memòria RAM depèn de la càrrega: 2 GB són suficients per a algú, i poden ser necessaris 4 o fins i tot 6 per a tasques més serioses. L'avantatge d'una màquina virtual és la capacitat d'experimentar: podeu començar amb una configuració mínima i augmentar recursos segons sigui necessari.

Snort o Suricata. Part 3: Protecció de la xarxa d'oficinesfoto: Reuters

Connexió de xarxes

En primer lloc, pot ser necessari eliminar IDS a una màquina virtual per a les proves. Si mai no heu tractat amb aquestes solucions, no us hauríeu de precipitar a demanar maquinari físic i canviar l'arquitectura de la xarxa. El millor és executar el sistema de manera segura i rendible per determinar les vostres necessitats de càlcul. És important entendre que tot el trànsit corporatiu haurà de passar per un únic node extern: per connectar una xarxa local (o diverses xarxes) a un VDS amb IDS Suricata instal·lat, podeu utilitzar SoftEther - Un servidor VPN multiplataforma fàcil de configurar que proporciona un xifratge fort. És possible que una connexió a Internet d'oficina no tingui una IP real, així que és millor configurar-la en un VPS. No hi ha paquets preparats al repositori d'Ubuntu, haureu de descarregar el programari des de lloc del projecte, o des d'un dipòsit extern del servei Plataforma de llançament (si confies en ell):

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

Podeu veure la llista de paquets disponibles amb l'ordre següent:

apt-cache search softether

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Necessitarem softether-vpnserver (el servidor de la configuració de prova s'està executant a VDS), així com softether-vpncmd - utilitats de línia d'ordres per configurar-lo.

sudo apt-get install softether-vpnserver softether-vpncmd

S'utilitza una utilitat especial de línia d'ordres per configurar el servidor:

sudo vpncmd

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

No parlarem amb detall sobre la configuració: el procediment és bastant senzill, està ben descrit en nombroses publicacions i no es relaciona directament amb el tema de l'article. En resum, després d'iniciar vpncmd, heu de seleccionar l'element 1 per anar a la consola de gestió del servidor. Per fer-ho, cal que introduïu el nom localhost i premeu Intro en lloc d'introduir el nom del concentrador. La contrasenya de l'administrador s'estableix a la consola amb l'ordre serverpasswordset, s'elimina el concentrador virtual DEFAULT (ordre hubdelete) i se'n crea una de nova amb el nom Suricata_VPN, i també s'estableix la seva contrasenya (ordre hubcreate). A continuació, heu d'anar a la consola de gestió del nou concentrador mitjançant l'ordre hub Suricata_VPN per crear un grup i un usuari mitjançant les ordres groupcreate i usercreate. La contrasenya d'usuari s'estableix mitjançant userpasswordset.

SoftEther admet dos modes de transferència de trànsit: SecureNAT i Local Bridge. El primer és una tecnologia propietària per construir una xarxa privada virtual amb el seu propi NAT i DHCP. SecureNAT no requereix TUN/TAP o Netfilter ni cap altra configuració del tallafoc. L'encaminament no afecta el nucli del sistema, i tots els processos estan virtualitzats i funcionen en qualsevol VPS/VDS, independentment de l'hipervisor utilitzat. Això fa que augmenti la càrrega de la CPU i una velocitat més lenta en comparació amb el mode Local Bridge, que connecta el concentrador virtual SoftEther a un adaptador de xarxa físic o dispositiu TAP.

La configuració en aquest cas es fa més complicada, ja que l'encaminament es produeix al nivell del nucli mitjançant Netfilter. Els nostres VDS estan basats en Hyper-V, de manera que en l'últim pas creem un pont local i activem el dispositiu TAP amb l'ordre bridgecreate Suricate_VPN -device:suricate_vpn -tap:yes. Després de sortir de la consola de gestió del concentrador, veurem una nova interfície de xarxa al sistema que encara no té assignada una IP:

ifconfig

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

A continuació, haureu d'habilitar l'encaminament de paquets entre interfícies (redirecció IP), si està inactiu:

sudo nano /etc/sysctl.conf

Descomenteu la línia següent:

net.ipv4.ip_forward = 1

Deseu els canvis al fitxer, sortiu de l'editor i apliqueu-los amb l'ordre següent:

sudo sysctl -p

A continuació, hem de definir una subxarxa per a la xarxa virtual amb IPs fictícies (per exemple, 10.0.10.0/24) i assignar una adreça a la interfície:

sudo ifconfig tap_suricata_vp 10.0.10.1/24

Aleshores heu d'escriure les regles de Netfilter.

1. Si cal, permeteu els paquets entrants als ports d'escolta (el protocol propietari de SoftEther utilitza HTTPS i el 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. Configureu NAT des de la subxarxa 10.0.10.0/24 a la IP del servidor principal

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

3. Permet passar paquets de la subxarxa 10.0.10.0/24

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

4. Permet passar paquets per a connexions ja establertes

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

Deixarem l'automatització del procés quan es reiniciï el sistema utilitzant scripts d'inicialització als lectors com a deures.

Si voleu donar IP als clients automàticament, també haureu d'instal·lar algun tipus de servei DHCP per al pont local. Això completa la configuració del servidor i podeu anar als clients. SoftEther admet molts protocols, l'ús dels quals depèn de les capacitats de l'equip LAN.

netstat -ap |grep vpnserver

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Com que el nostre encaminador de prova també s'executa sota Ubuntu, instal·lem els paquets softether-vpnclient i softether-vpncmd des d'un dipòsit extern per utilitzar-hi el protocol propietari. Haureu d'executar el client:

sudo vpnclient start

Per configurar, utilitzeu la utilitat vpncmd, seleccionant localhost com a màquina en què s'executa el vpnclient. Totes les ordres es fan a la consola: haureu de crear una interfície virtual (NicCreate) i un compte (AccountCreate).

En alguns casos, heu d'especificar el mètode d'autenticació mitjançant les ordres AccountAnonymousSet, AccountPasswordSet, AccountCertSet i AccountSecureCertSet. Com que no estem utilitzant DHCP, l'adreça de l'adaptador virtual s'estableix manualment.

A més, hem d'habilitar ip forward (opció net.ipv4.ip_forward=1 al fitxer /etc/sysctl.conf) i configurar les rutes estàtiques. Si cal, a VDS amb Suricata, podeu configurar el reenviament de ports per utilitzar els serveis instal·lats a la xarxa local. En això, la fusió de la xarxa es pot considerar completa.

La configuració que ens proposem tindrà un aspecte semblant a això:

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Configuració de Suricata

В article anterior hem parlat de dues maneres de funcionament de l'IDS: a través de la cua NFQUEUE (mode NFQ) i mitjançant còpia zero (mode AF_PACKET). El segon requereix dues interfícies, però és més ràpid: el farem servir. El paràmetre s'estableix per defecte a /etc/default/suricata. També hem d'editar la secció vars a /etc/suricata/suricata.yaml, establint allà la subxarxa virtual com a casa.

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Per reiniciar IDS, utilitzeu l'ordre:

systemctl restart suricata

La solució està preparada, ara potser haureu de provar-la per a la resistència a accions malicioses.

Simulació d'atacs

Hi pot haver diversos escenaris per a l'ús de combat d'un servei d'IDS extern:

Protecció contra atacs DDoS (propòsit principal)

És difícil implementar aquesta opció dins de la xarxa corporativa, ja que els paquets per a l'anàlisi han d'arribar a la interfície del sistema que mira a Internet. Fins i tot si l'IDS els bloqueja, el trànsit fals pot fer caure l'enllaç de dades. Per evitar-ho, cal demanar un VPS amb una connexió a Internet prou productiva que pugui passar tot el trànsit de la xarxa local i tot el trànsit extern. Sovint és més fàcil i més barat fer-ho que ampliar el canal de l'oficina. Com a alternativa, cal esmentar els serveis especialitzats de protecció contra DDoS. El cost dels seus serveis és comparable al cost d'un servidor virtual i no requereix una configuració que requereix molt de temps, però també hi ha desavantatges: el client només rep protecció DDoS pels seus diners, mentre que el seu propi IDS es pot configurar com vostè M'agrada.

Protecció contra atacs externs d'altres tipus

Suricata és capaç de fer front als intents d'explotar diverses vulnerabilitats en els serveis de xarxa corporativa accessibles des d'Internet (servidor de correu, servidor web i aplicacions web, etc.). Normalment, per a això, l'IDS s'instal·la dins de la LAN després dels dispositius de frontera, però portar-lo fora té dret a existir.

Protecció de persones internes

Malgrat els millors esforços de l'administrador del sistema, els ordinadors de la xarxa corporativa es poden infectar amb programari maliciós. A més, a vegades apareixen gamberros a la zona, que intenten realitzar algunes operacions il·legals. Suricata pot ajudar a bloquejar aquests intents, tot i que per protegir la xarxa interna és millor instal·lar-la dins del perímetre i utilitzar-la juntament amb un commutador gestionat que pugui reflectir el trànsit a un port. Un IDS extern tampoc és inútil en aquest cas; almenys serà capaç de detectar els intents de programari maliciós que viu a la LAN per contactar amb un servidor extern.

Per començar, crearem una altra prova atacant VPS, i a l'encaminador de la xarxa local augmentarem l'Apache amb la configuració per defecte, després de la qual li enviarem el port 80 des del servidor IDS. A continuació, simularem un atac DDoS des d'un host atacant. Per fer-ho, descarregueu des de GitHub, compileu i executeu un petit programa xerxes al node atacant (pot ser que hàgiu d'instal·lar el paquet gcc):

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

El resultat del seu treball va ser el següent:

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Suricata talla el dolent i la pàgina d'Apache s'obre per defecte, malgrat el nostre atac improvisat i el canal bastant mort de la xarxa "oficina" (en realitat domèstica). Per a tasques més serioses, hauríeu d'utilitzar Metasploit Framework. Està dissenyat per a proves de penetració i us permet simular una varietat d'atacs. Instruccions d'instal · lació està disponible al web del projecte. Després de la instal·lació, cal una actualització:

sudo msfupdate

Per provar, executeu msfconsole.

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Malauradament, les últimes versions del marc no tenen la capacitat de trencar-se automàticament, de manera que els exploits s'hauran d'ordenar manualment i executar-los mitjançant l'ordre use. Per començar, val la pena determinar els ports oberts a la màquina atacada, per exemple, utilitzant nmap (en el nostre cas, se substituirà completament per netstat a l'amfitrió atacat) i després seleccionar i utilitzar el corresponent. Mòduls Metasploit

Hi ha altres mitjans per provar la resistència d'un IDS contra atacs, inclosos els serveis en línia. Per curiositat, podeu organitzar proves d'estrès mitjançant la versió de prova Estresador IP. Per comprovar la reacció a les accions dels intrusos interns, val la pena instal·lar eines especials en una de les màquines de la xarxa local. Hi ha moltes opcions i de tant en tant s'han d'aplicar no només al lloc experimental, sinó també als sistemes de treball, només que aquesta és una història completament diferent.

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Snort o Suricata. Part 3: Protecció de la xarxa d'oficines

Font: www.habr.com

Afegeix comentari