Tech Talk

Zero Trust Model – never trust, always verify

Inainte sa incepem sa discutam despre Zero Trust , trebuie sa recunoastem ca din punct  de vedere al securitatii si din punctul de vedere al firewall-urilor / networking-ului majoritatea o ardem ca si acum 10 ani , pe undeva e de inteles , pur si simplu pentru ca  tehnologia nu exista pana acum cativa ani.

Nici nu are rost sa incep sa povestesc de cosmarele generate de Cisco IPS pe IOS sau Cisco ASA cu module speciale de IPS , pur si simplu nu puteam face si firewall si IPS decent deodata.  Dar suntem in anul 2018 , tehnologia a evoluat , nu mai exista o scuza ca nu putem incepe sa implementam un alt model de a securiza traficul in retea.

Ziceam ca o ardem ca si acum 10 ani pentru ca majoritatea inca privim securitatea ca si in poza de mai sus : 

Zona „private” unde intra device-urile pe care le avem in administrare (pe inventarul firmei) gen host-uri , impriante , servere web si zona de internet unde sunt virusi , hackeri si gonoree. 
Privim zona noastra de „private” ca pe o zona plina de curcubee , unicorni si vata pe batz. 
Inca blocam traficul pe baza de porturi , de exemplu ,hai sa permitem doar portul TCP 80 si 443 si UDP 53 pentru web-browsing si ne culcam linistiti.
In prezent, orice torrent poate sa transporte traficul prin 443 la fel ca si orice malware. 
Problema aici e ca odata in zona de „inside” a retelei un atacator are access complet , neverificat , nemonitorizat ca deh e in zona „private” . 

In mintea noastra de cele mai multe ori e ca avand un firewall statefull , traficul din exterior nu e permis decat daca e initiat din interior , dar omitem faptul ca nu asa functioneaza 99% din malware si crypto lockere.
De obicei un user in zona de inside (curcubee , unicorni ) da click pe un URL malitios si host-ul din inside initiaza comunicatia spre serverele de C2 (command and control) al hackerilor. Venind din interior firewall-urile traditionale permit aceast trafic. La fel si in cazul unui exploit cu reverse shell. 

La monitorizare inca avem aceleasi cacti-uri si netflow-uri , sute de mii de flow-uri pe secunda cu baze de date de zeci de giga , grafice colorate care arate bine pe un monitor dar nimeni nu se uita la ele in detaliu.
Normal ca nu ne uitam ca nu se intelege mai nimic. In momentul in care intrii pe un site , practic apar 40 de intrari in netflow , tot felul de conexiuni adiacente site-ului. (link-uri catre reclame ,etc)  
E normal sa ne scape printre milioanele de IP-uri si domenii traficul catre servere de command and control a hackerilor , domenii dubioase sau trafic catre tari gen Iran . In cazul asta nu volumul infomatiilor conteaza cat calitatea lor si conceptul de „in your face” mai precis sa vezi clar alerte referitoare la traficul spre botnet si destinatii dubioase. 

La fel la capitolul antivirusi stam ca si acum 10 ani , antivirusi clasici cu interfete frumoase cu buton de scan si real time protection . Ajuta , sigur ca da dar dupa parerea mea nu sunt o garantie a securitatii. Un malware poate fi modificat in sute de variante pe care antivirusii clasici pe baza de semanturi nu ii depisteaza. Un antivirus next generation nu trebuie sa se bazeze doar pe semnaturi ci si pe analiza comprtamentala a fisierului si a procesului , de exemplu ce un document word incearca sa deschida un power shell.

Cum putem implementa „Zero Trust” ?

In primul rand trebuie sa ne gandim ca „increderea” este o vulnerabilitate. 

Design-ul de securitate porneste de la „endpoint” si nu de la „granita retelei” . Controlul de securitate trebuie sa stea cat mai aproape de ceea ce ele trebuie sa protejeze. 

Criteriile pentru a securiza „endpointurile” sunt :
– un mix intre solutie de endpoint protection software instalata pe host-uri si inspectie de traffic layer 7 la nivel de retea. 
In acest mod , traficul malitios nu ar trebui sa ajunga la host , iar daca chiar ajunge solutia software ar trebui sa ofere protectie suplimentara.
Solutia software e necesara si in cazul in ne lovim de malware instalati de pe USB sau atacuri din acelasi micro perimetru (discutam mai joc de microperimetre) 

– Integrarea intre firewall si endpoint security . In cazul detectarii unor alerte generate de solutia software , firewall-ul sa carantineze host-ul suspect.  Foate util este si faptul ca primim centralizat evenimentele si detaliile despre username si evenimentul ce a generat alerta. Aceste data ajuta enorm in crearea politicilor de securitate.

Network Segmentation 

Pana in momentul de fata cel mai des intalnita forma de segmentare al unei retele este Vlan-ul.  Problema cu Vlan-urile este ca ele doar izoleaza host-urile , nefiind capabile sa controleze / inspecteze traficul pe baza de user sau sa faca inspectii la Layer 7.

Bineinteles , cand ma refer la segmentare retelei nu ma refer la izolarea completa a fiecarui host ,acest lucru nefiind posibil , ci la crearea de microperimetre intre care traficul este inspectat .
Putem de exemplu in loc de traditionala zona de „inside” sa configuram zone bazate pe departamente gen „financiar ” sau „HR” si zona de „muritori_de_rand” . Traficul intre aceste zone il putem inspecta la layer 7 si permis foarte granular pe baza de User-ID. 

La fel e necesar sa cream zone pentru serverele de aplicatii critice , serverele de fisiere sau terminal servere si tot traficul sa fie inspectat pe baza de la Layer 7 si User-ID. 
Singura problema de securitate aici ce intervine este ca traficul pentru a fi inspectat trebuie sa fie decryptat si aici trebuie aprobari speciale din partea managementului. 

Referitor la traficul generat de persoanele care lucreaza remote , tot traficul trebuie inspectat prin firewall-ul din corporatie (nu se implemeantaza split tunnel !!!! ) si trebuie implementate politici HIPS prin care se verifica sistemul de operare pentru patch-uri , daca are instalat activ si actualizat solutia de endpoint protection .

Deseori aud scuza ca nu se poate implementa asa ceva in productie , ca nu este downtime , cand realitate este ca la nivel de retea implementarea se poate face foarte simplu si fara fi nevoie de mari modificari prin configurarea de virtual wire (setati totul in modul alert initial si dupa in modul block ) sau se poate incepe o infrastructura adiacenta in care mutati initial server-ele , aplicatiile dupa care mutati si host-urile. 

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *