Mikor idén elhatároztuk, hogy részt veszünk a ITBN 2018-as évi konferenciáján, olyan dologgal akartunk előállni, ami több gyártó, több termékének integrációján keresztül valósít meg valami olyat, amire az ügyfelek nagyobb részének igénye van. Mivel a konferencia maga az IT biztonságról szól, nyilvánvaló volt, hogy elsősorban a biztonság kell legyen a vonalvezető.
Innen jött az ötlet, hogy mi lenne akkor, ha egy kvázi dobozolható VDI – bár nem csak VDI gépeket lehet így védeni – megoldás lenne a téma, amit kiegészít a hálózatvirtualizáció, a fejlett vírusvédelmi képesség és a kétfaktoros hitelesítés. Gondoltam legyen ez akkor, VMware vSphere ESXi-n futó VMware Horizon View házassága, amit VMware NSX-V egészít ki, Trend Micro Deep Security tetéz, Duo Security ízesítéssel.
Bár mindegyik termék önmagában sokkal többet tud, de a fenti példában csak azokat a funkciókat használtam, amiket ki is emeltem.
Az alapját ahogy írtam, ESXi adja, amire felkerült egy NSX-V. Mivel overlay-re – bár nem zárja ki semmi – nincs szükség, small DC design lett. Így nem kellett a három controller, csak és kizárólag Distributed vSwitch, a distributed firewall használhatósága érdekében.
A Horizon View környezet Linked Clone pool-al került kialakításra, de kis módosítással Instand Clone-nak sincs akadálya. Mivel a működőképesség szempontjából lényegtelen a Security Server használata, sem a redundancia, ezért csak egy Horizon Connection Server-t tettem fel, Persona Management-tel.
Elsőként a Spoofguard: Szerintem az egyik legjobb funkciója az NSX-nek. Beállítható, hogy amennyiben a virtuális gépben IP-cím vagy MAC-cím váltás történne, mi történjen. A VMware Tools által jelentett adatok alapján be lehet állítani, hogy első indításkor detektált IP legyen például megengedett, aztán a váltásoknál már az Admin jóváhagyására legyen szükség, mielőtt a VM egyáltalán kommunikálni lesz képes. Ezzel a kliensben történő mindenféle ilyen változtatás, teljes izolációt eredményez.
NSX szabályok mentén a teljes izoláció megvalósítása egészen egyszerű lett, köszönhetően a csoportosíthatóságnak, amelyek mentén az NSX a szabályokat alkalmazni tudja.
Ezen szabályok közül kettőt emelnék ki:
- 1037: Itt ez ügyfélnél nem javasolnám, pusztán azért állítottam, be hogy be tudjam mutatni egy egyszerű böngészőből vagy parancssorból, hogy miképp izolálódik a virtuális gép, amennyiben vírus fertőzi meg. Ha proxy-n keresztül történik az internet elérése, akkor nyilván nem szükséges negálni a belső hálózatokat, pusztán arra a címre kell engedélyezni a forgalmat.
- 1055: Ez a legfontosabb szabály! Mindenféle, kliensek közötti kommunikációt letilt, ezáltal a kliensek nem érik el még a velük egy szegmensben lévő más klienseket sem. Ezt más megoldás nem tudja, csak az NSX – aláírom, bele lehet tenni a klienseket egyenként egy /29-be, de azt menedzselje az akinek sok az ideje.
További szabályok, teszik lehetővé a nem View specifikus kommunikációt, de a “Default Rule” természetesen Any-Any Block.
A Duo Security lényegében egy RADIUS szerver a Horizon View-ban. Megvalósításában én nem szinkronizáltam be az Active Directory felhasználókat – de erre persze lehetőség van – simán létrehoztam az entitásokat és ha szükség van rá, akkor alias-ként fel lehet venni olyan felhasználóneveket, amelyekre sikeresen asszociál a Duo Security ezáltal a képes akár több teljesen különböző, de egy felhasználóhoz tartozó név kezelésére.
Rengeteg alkalmazás és szoftver védhető vele, a policy-k akár csoport, akár védett alkalmazás/szolgáltatás alapon meghatározhatóak. A listát ide másolni is nehéz, inkább lássátok itt: https://duo.com/docs
Fentebb látható, hogy csak Magyarországról engedélyezem a belépést, akkor is szükséges a második faktor. Minden más országból tiltott. Az is látszik, hogy Internet Explorer-ből például egyáltalán nem engedélyezett 🙂 Rengeteg beállítás lehetséges, tényleg mindenre kiterjeszthető, az engedélyezett Android verzióktól, a jailbreak-elt alma eszközök kizárásáig.
A Trend Micro Deep Security beállítása nem kívánt túl sok időt, lényegében csak a Deep Security Manager-t kellett feltelepíteni, majd megadni a vCenter és az NSX manager adatait. Mivel agentless működéssel szerettem volna megvalósítani a biztonságot – így például admin jogú felhasználó vagy fertőzés, nem tudja befolyásolni a védelem működését a kliens operációs rendszerben – ezért szükség volt az NSX Guest Introspection Service VM-jeire, amit a Trend Micro kiegészít a saját, DSVA-nak (Deep Sercurity Virtual Appliance) nevez. Így ESXi hosztonként két ilyen Service VM lesz, ezek biztosítják a VM diszkek és hálózati forgalom vizsgálatát.
A következőket lehet használni a kliensekbe telepített agent-ek nélkül:
Az Integrity monitoring nem real time, illetve a virtuális gépek memóriájának tartalma sem vizsgált, de amennyiben ez az óhaj, abban az esetben az agent telepítése után csak ezen funkciók bekapcsolhatóak abban, így minden más marad az appliance általi védelemben. Nem mellesleg az appliance hatékonyabb módon képes a rá bízott feladatokat ellátni, mint az egyenként telepített, kliens oldali agent-ek, amik azért igényelnek némi CPU-t és memóriát. Ha sok gép van, akkor ez a plusz terhelés jelentős is lehet.
A Web Reputation magáért beszél, mindenféle böngészőbe épülő modul nélkül szűrhető a web forgalom.
Ezt mutatja a DSM is:
Az Intursion Prevention pedig az úgynevezett “Virtual Patching”-et biztosítja. Jelen pillanatban egy teljesen felfrissített Windows 10-re úgy 33 IPS szabályt javasol, azaz olyan szabályokat, amelyek azokat a hálózati forgalmakat fogják meg, amelyek a már ismert, de a Microsoft vagy a gépben futó más szoftver gyártója által még telepíthető javítással nem foltozható sérülékenységek kihasználását jelentenék.
Az Integity Monitoring-ot úgy állítottam be, hogy minden kiemelten fontos és a biztonságos működés szempontjából elengedhetetlen fájl, reg kulcs le legyen hash-elve. Ezáltal a napi egy scheduled scan, detektál valami változást – valaki beleírt a host file-ba – akkor arról jelent a rendszer. Ha erre valós időben van szükség, akkor delegálható a funkció egy telepített agent-nek.
A legjobb benne az IFTTT – azaz az If This, Then That – szóval, ha vírusos lesz egy VM, akkor abban az esetben a Trend Micro rárak egy tag-et a VM-re, ami mentén az NSX Service Composer-e, az általam megadott, igen szigorú szabályokat érvényesít a VM-re. A példában minden megszakad – nem ér el a vállalati hálózaton semmit sem a VM, az internetet sem, csak és kizárólag a Deep Security Manager szervert (a demó működőképessége miatt a PCoIP-et is hagytam irányába, különben leszakadtam volna). Be lehet automatikusra is állítani a detektálás esetén az akciót, én manuálisra tettem, így egy teljes malware scan után, ha vírusmentes a gép, akkor a tag lekerül és a gép visszatérhet a hálózatra.
Látható, hogy már a letöltés sem sikeres az EICAR teszteknél. Aztán szépen az index.hu-ra is megáll a ping.
Természetesen a DSM pontosan megmondja, ki hol. mikor, mit és hova töltött le és mi a baj:
A teljes scan után a gép mentes minden fertőzéstől:
Így aztán újra a megengedő szabályok vonatkoznak rá, az izoláció véget ért:
Véleményem szerint nagyon biztonságos rendszer rakható össze egy ilyen integrált megoldással. Az NSX a végletekig le tudja korlátozni még szegmensen belül is, hogy mi, mivel és hogyan kommunikálhat, a Trend Micro automatikus védelmet kínál, ami még a hálózati korlátozásokat is képes az NSX által érvényesíteni ha baj van. A Duo Security felhős 2FA-ként az egyszerű, gyors és tényleg minden alkalmazást védő komponensével ütős kis csomagot ad össze.
Akit érdekel élő demó, részletes információ az keressen nyugodtan.