Gondolatok az IT biztonságról 2. – egy majdnem bekövetkezett katasztrófa története

A „Gondolatok az IT biztonságról” című cikk folytatásaként most ismét zsarolóvírus témával jelentkezünk, ezúttal ismét egy kicsit más incidenssel kapcsolatban. A tapasztalat még nagyon friss és számtalan tanulsággal szolgál, cégtulajdonosnak, felhasználónak és üzemeltetőnek egyaránt. Ezt a cikket főleg nekik ajánlom, de legfőképpen a cégtulajdonosok figyelmét szeretném vele felhívni, ugyanis a most következő történetből jól látszik majd hogyan kerül veszélybe egy egész cég élete pillanatok alatt. Azok közül pedig akik ezt elolvassák jó eséllyel nagy számban lesznek olyanok, akik legalább ekkora (ha nem nagyobb) veszélynek vannak kitéve jelen pillanatban is, legfeljebb nem tudnak róla.

Zsarolóvírus

A most következő történet egy hónapja történt egyik ügyfelünkkel. A probléma alapját a korábbi cikkünkből jól ismert támadási módszer (RDP támadás) jelentette, ami több kisebb-nagyobb hiba együttállásával majdnem katasztrófába torkollott. A cikk végén végigvesszük majd részletesen is ezeket a hibákat és a lehetséges megoldási alternatívákat, megelőzési módszereket is pontokba szedjük, de még mielőtt erre kitérnénk engedjenek meg nekem egy kis kitérőt. Számtalanszor felmerült már az a kérdés, hogy mennyit ér meg nekünk adataink biztonsága. 2019-et írunk, réges-rég az információ korában élünk, adataink a legnagyobb értékeink. Egy cég fennmaradását alapjaiban rengetheti meg, ha nagyobb mennyiségű adatot veszít. A jelenlegi cikkben szereplő cégünk mérnöki tervezéssel foglalkozik, ipari projektekbe tervez 3D-s CAD alkalmazásokkal, mérnökök egész hadát foglalkoztatja, akik szoros határidőkkel készítik el és küldik meg a különböző projektekhez tartozó rajzokat. A projektek elnyerése nem kevés munkával jár, a különböző szabványokhoz mindent alaposan dokumentálni kell, tárolni, meg kell tudni őrizni és a megadott határidőre le kell azt adni. Ebből működik a cég, az ezért járó díjakból fizeti a dolgozóit, családok megélhetése múlik rajta. Aztán bekerül a rendszerbe egy új vírus és mindezeket egy pillanat alatt veszélybe sodorja, mert ha elvesznek az adatok és a cég nem tudja a projektre beküldeni a rajzokat határidőre, munkákat veszít el emiatt, akkor mindez alapjaiban kerül veszélybe. Azért ajánlom most vezetők figyelmébe ezt a cikket, mert a végére mindenki számára világos lesz, hogy vannak hatékony megoldások a kockázatok csökkentésére, a legtöbbje még csak nem is pénz kérdése, de mivel sokan szimplán nem foglalkoznak ezekkel, amíg fájdalmas gyakorlati tapasztalatot nem szereznek, így nagyon sok cég van ezek miatt veszélyben.

A jelen cikkben szereplő partnerünknél 4-5 évvel ezelőtt telepítettünk egy kisvállalati Windows Server-t, ami az Essentials változatnak megfelelően tartományvezérlő, fájl szerver, WSUS (frissítés) kiszolgáló szerepköröket lát el, emellett a Windows Server biztonsági másolat készítő programját használja, amivel egy különálló (de fizikailag a szerverben lévő) merevlemezre készít mentéseket. A szervert annak idején a megszokott pontossággal, precizitással telepítettük, elkészítettük a rendszer teljes dokumentációját (amit nagyon sok rendszergazda szimplán kifelejt, mi sem szeretünk dokumentációkat írni), a kliens gépeket tartományba léptettük, majd átadtuk az elkészült rendszert a megrendelőnek. A havi átalánydíjas karbantartási szerződés ötlete már ekkor felmerült, de mivel több olyan műszaki beállítottságú ember is volt a cégnél, így végül közülük ketten kaptak rendszergazda jogokat és évekig ellátták a feladatokat. Néha kaptunk megkeresést komolyabb problémák esetén, de a napi feladatokat, a gép esetleges ellenőrzését ők végezték, ha végezték. A kezdetben szereplő két rendszergazda közül valamelyik 2015. októberében létrehozott egy Admin nevű felhasználót, ami nem csak túl általános nevű volt (elsők között fognak a támadók admin és administrator nevű felhasználókra jelszavakat próbálni), de vélhetően nagyon egyszerű jelszóval is lett ellátva, ez adta ugyanis a támadás alapját, a címtár szerint kb. 1300 hibás próbálkozás előzte meg a támadást és a jelszótörő program betalált a szerverre. Mivel az az audit funkció nem volt bekapcsolva a szerveren, ami naplózná a felhasználó létrehozásának körülményeit (bár ez annyira régen volt, hogy amúgy se lenne már meg a napló), így csak az időpontot tudjuk megállapítani. A szervernek évekig nem volt (rendszer)gazdája, míg kb. 1 évvel ezelőtt egy havidíjas szerződéssel megkaptuk az üzemeltetését. Innentől a havi ellenőrzési procedúra részévé vált a szerverük ellenőrzése, többek közt rendbe lett téve a korábban gyakran hibázó biztonsági mentés is. Egy dolog viszont nem volt az ellenőrzési procedúra része, mégpedig, hogy a különböző felhasználók adminisztrátori jogait nézegessük, az igazat megvallva nem is voltunk ehhez hozzászokva, hogy utólagosan vegyünk át egy már ismert, de jelentősen megváltozott rendszert, pláne olyan bújtatott felhasználókkal, amikkel egyébként már korábban is feltörték a szervert. Ennek nyomait találtuk ugyanis több helyen a gépen, egy időben (2015 őszén és 2016 tavaszán) 2 alkalommal is spamküldésre használták fel, mígnem 2019. február elején egy másik próbálkozás ismét betalált a könnyen támadható „admin” felhasználón keresztül.

Természetesen a problémából mi is levontuk a következtetéseket és a szerver karbantartási procedúra részévé tettük a jogosultság ellenőrzést, ami nem egyszerű feladat egyébként. Ezen kívül minden olyan általunk üzemeltetett szerveren, ahol rajtunk kívül másnak is rendszergazda joga van bevezettük a címtárnak azt az audit házirendjét, ami naplózza az új felhasználók létrehozását és a jogadásokat. Mivel ez a biztonsági napló része, ami rengeteg bejegyzést tartalmaz, így rövid időn belül felülíródik, ugyanakkor 1-2 héten belül így is lehetőség van visszanézni ki mit csinált a szerveren. Ezt kiegészítettük egy saját készítésű Powershell scripttel, ami minden este megvizsgálja a főbb rendszergazda csoportokat és ha bármelyik tagságában változás áll fenn értesítést küld. Ezt a két intézkedést kombinálva a jövőben meg tudjuk előzni a felesleges, kontroll nélkül rendszergazdai jogosultságokból eredő problémákat.

A történet vége szerencsére happy end lett, egyik nap délután 2-kor leállt a rendszerük, addigra szinte minden fájlt titkosított a szerveren a vírus. Másnap reggel munkakezdéskor visszakapták az előző nap hajnalban készült biztonsági mentésből teljesen visszaállított gépet. A gép olyan szinten vírusozódott be, hogy a Windows is romba dőlt, így a rendszerpartíciókat a kb. 1TB adatot tartalmazó adatpartícióval együtt kellett poraiból feltámasztani. Mivel egy olyan friss vírust kaptak, amire nem áll rendelkezésre decryptor (a titkosított fájlok visszafejtését elvégző) program, így a délelőtt folyamán keletkezett néhány fájl elveszett, ami nagyon minimális adatvesztésnek tekinthető, ugyanis a támadáskor éppen megnyitottakhoz nem fért a vírus hozzá, így azok épek maradtak, a biztonsági mentésből történt visszaállítást követően ezeket is visszamásoltuk az ügyfélnek. Így az éppen határidős projektjük legtöbb fájlja megvolt, amin az egész cég dolgozott és egy nagyon veszélyes kriptóvírus támadást sikerült átvészelniük anyagi kár nélkül.

IT biztonság

Okos ember viszont más kárából tanul, ahogy a bevezetőben is ígértem térjünk is rá arra, hogy mivel lett volna csökkenthető vagy megelőzhető ez az incidens.

Rendszergazdai jogosultságok
Ahogyan arra egy korábbi eset is rávilágított sok esetben akár programok telepítői is gyanútlanul nyithatnak réseket a gépünkre, amikor (sokszor felesleges) rendszergazdai jogot adnak egy felhasználónak a gépre, pláne amikor ezt könnyen kitalálható, netalán közismert, fix jelszóval teszik. Ezeknek a jogosultság adásoknak a felülvizsgálata sajnos rendszeres karbantartási feladat kell legyen, ezzel együtt, ahogyan azt feljebb már említettem script segítségével automatizálva is lehet ezt figyelni. Így időben felfedezésre kerülhetnek a problémák, mielőtt azt mások vennék észre. Az informatikában sokat emlegetett „legkisebb jogosultság elve” (principle of least privilege) pedig érvényes kell legyen a rendszerünkre. Tehát minden felhasználónak csak a feladata ellátásához szükséges legalacsonyabb jogosultsága legyen, semmi több. Ez nem csupán bizalmi kérdés egy felhasználóval szemben, de biztonsági követelmény is. Ha egy olyan felhasználónál következik be incidens, akinek túl magas joga van a rendszerben az ő jogaival komoly károk keletkezhetnek. Erre is volt már precedens, amikor egy ügyfélnek sorozatosan felhívtuk a figyelmét rá, hogy a nagy közös mappát érdemes lenne a különböző munkakörök szerint szétbontani és korlátozni a jogokat. Egy vírustámadás a teljes adatállományt elintézte, a visszaállítás fél napot vett igénybe. Ekkor a saját hibájából tanulva hallgatott a tanácsra és megvalósítottuk a szabályozásokat. Néhány hónap múlva egy másik dolgozó is vírust kapott, de ekkor már a korábbi incidens kb. 1%-a volt a kár, biztonsági mentésből kevesebb, mint fél óra alatt helyreállt a rend.

Mentés, mentés és mentés
Számtalan cikkben foglalkoztunk már a témával, zsarolóvírus támadás esetén nincs más menekülés a teljes katasztrófából, csak egy jól működő biztonsági mentés. Szerencsére, mivel nemrégiben kötött ügyfelünk szerződést, így a havi karbantartás alkalmával megnézzük a mentések állapotát, ami így rendben volt. Korábban gyakran voltak vele fennakadások, de ezeket megoldottuk, így volt lehetőség visszaállítani most belőle az adatokat. Ha nincs szerződés és nem megy a mentés, akkor ezúttal egy teljes adatvesztés lett volna a végeredmény és nincs happy end!

Megfelelő jelszóházirend
Jelen esetben a felhasználónév admin volt, ami az ilyen jelszópróbálkozásoknak jó alapot ad. Egyrészt érdemes lehet a rendszergazdai jogosultsággal bíró profiloknál mellőzni az ilyen neveket, mint admin, administrator, root, stb. Másrészt pedig meg kell követelni és kikényszeríteni a bonyolultabb, összetett jelszavak használatát. Ezt sok felhasználó nem szereti, de meg kell érteni, hogy a megfelelő biztonsághoz szükség van egy jó jelszóra. A mi esetünkben egy dologról még nem esett szó, hogy az ügyfélnél az elmúlt évek során a gépeken „elfelejtődött” a tartományi rendszer, ami nem azt jelenti, hogy a gépek felejtettek el tartományban lenni, hanem a folyamatos gépcserék során az új gépek nem lettek beléptetve a tartományba, hanem a felhasználók név/jelszavát tárolták be rájuk, hogy a fájl szervert elérjék. Egyrészt a név/jelszó betárolás sosem szerencsés biztonsági szempontból, bármilyen rendszerről is beszéljünk, de jelen esetben ez azért is jelent problémát, mert a gépeken futó rendszerek így nem kerültek a központi házirendek hatálya alá, ami megkövetelhetné a megfelelő jelszavak használatát, elkerülhető lenne a jelszótárolás és a szerver egyéb más funkciót, mint pl. a központi frissítéskezelés (szintén fontos biztonsági elem!) is használni tudnák. Ezzel szemben a felhasználói igény az, hogy ne is legyen jelszó, a gépre ne kelljen külön belépni. Ez így kényelmes, de ára van, biztonsági kockázatot jelent.

Tűzfal
Az internetre kiengedett portokat ha van lehetőségünk tűzfallal védeni, az szintén hatalmas előny lehet az ilyen támadásokkal szemben. Jelen esetben egy néhány ezer forintos router látta el a feladatot, ami lényegében annyit tud csak, hogy a portokat ki lehet nyitni velük és a megfelelő IP címre irányítani a belső hálózaton (NAT-olás), korlátozni viszont a legtöbb ilyen eszköz nem tud. Komolyabb gyártók komolyabb eszközein ugyanakkor már vannak arra is lehetőségek, hogy korlátozzuk egyes portok elérését, méghozzá úgy, hogy eközben mi magunk is el tudjuk érni a szerverünket. A VPN, távoli asztal és az egyéb szerveren futó alkalmazások mind ilyen internet felé nyitott portokat igényelnek, amin sajnos bárki bemehet, a megfelelő név/jelszó birtokában. Lehet kapni több tízezer forinttól a csillagos égig terjedő összegekért neves gyártók profi termékeit, amiket jellemzően a hobbirendszergazdák már beüzemelni sem tudnak, mert komoly szaktudást igényelnek. Sok esetben, nagyvállalati környezetben megvan ezek előnye is, ugyanakkor a kis – és középvállalkozások számára szinte elérhetetlenek, az otthoni felhasználásra gyártott router-ek viszont nem igazán felelnek meg a mai biztonsági elvárásoknak. Éppen ezért ezen ügyfeleinknek egy rendkívül olcsó és könnyen kivitelezhető megoldást szoktunk javasolni, még pedig egy Linux alapú (tehát ingyenes szoftverrel telepített) tűzfal gép személyében. Mindössze egy megbízható, stabil PC kell hozzá minimális hardverrel (a legtöbb esetben egy 5 éves irodai processzor, 2GB memória és 5-10GB-nyi HDD bőven elég) és egy extra hálózati kártyával, amit ha egy használt brand gépből hozunk ki legfeljebb 25 ezer forintból ki lehet alakítani. A telepítése és beállítása természetesen szakértelmet igényel, de kellő rutinnal igen rövid idő alatt elvégezhető, nem kell csillagászati költségekkel számolni munkadíjra sem. Ezzel szemben sok olyan szolgáltatást kaphat meg egy ingyenes rendszertől, amiért a nagy gyártóknál komoly összegeket kell fizetni. Ezek közül talán az egyik legfontosabb, amit alkalmazni szoktunk az a geográfiai alapú (GeoDB) szűrés. Sok esetben nincs szükség az országhatáron kívülről történő elérésre, így a legtöbb ügyfél esetében a Dél-Amerikából, Afrikából, Oroszországból, Kínából és Ázsia legtöbb részéről a teljes bejövő forgalmat tiltani lehet. Egy ilyen szűrés a támadások több, mint 2/3-át alapból kiszűrik, mivel ezek közt szerepelnek a kiberbűnözéssel leginkább fertőzött országok is. Amennyiben levelező rendszer nem üzemel a hálózatban úgy szinte csak Európára lehet korlátozni az elérést. Fontos hangsúlyozni, hogy ilyen esetben se VPN-ezni, se távoli asztalozni nem lehet az adott országból és mivel ingyenes megoldásról, ingyen hozzáférhető adatbázisról beszélünk, amiből a tűzfal a tudást meríti így nagy ritkán előfordulnak hibák emiatt, de ez eltörpül amellett a problémahegy mellett, amitől megóvja a rendszert. A szabályokat pedig bármikor lehet finomítani, ki-be kapcsolni egyes területek elérését.

RDP Defender
A távoli asztal elérés védelmére, a bejövő kapcsolatok korlátozására szokták alkalmazni ezt a programot. A lényege, hogy megszünteti a végtelen jelszópróbálkozások és a rengeteg különböző IP címekről jelentkező robotok próbálkozásait azzal, hogy a beállított korlátok alapján bezárja előttük a kaput.

Megfelelő vírusvédelem
A szerverre telepített vírusvédelem mindig nehéz kérdés. Elvben, mivel munka nem zajlik a kiszolgálón, így vírusnak sem kellene bejutnia rá, amivel okafogyottá válik a vírusvédelem telepítése. Ezzel szemben a szerverekre telepített védelmek gyakran okoznak fennakadásokat, lassulásokat a szerver gépek életében még akkor is, ha megfelelően konfiguráltuk őket. A gyártó egy esetleges hibája a vírusdefiníciós fájlok frissítésekor hatalmas összeomlást tud eredményezni, mint ahogy sok ilyen elő is fordult már a történelemben. Így mérlegelni kell a kockázatokat és a védelem használatából eredő problémákat, hogy érdemes-e védelmet telepíteni. Az is nagy előnye lehet egy fájl szerverre telepített vírusirtónak, hogy ütemezetten lehet vele ellenőrizni a fájl szerverre felkerülő fájlokat, ami a kliensek biztonságát is nagyban javítja.

Ahogyan az a fentiekből is látszik azért annyira sok befektetést sem munkaórákban, sem költségben nem igényel, hogy drasztikusan tudjuk javítani a rendszerünk biztonságát. Azt a rendszerünkét, aminek egy apróbb gyengesége is a cégünk életébe, emberek megélhetésébe kerülhet. Következő cikkünkben bemutatjuk majd azt a tűzfalmegoldást, ami ingyenes és mind stabilitásban, mind tudásban fillérekből tud nekünk olyan nagyvállalati szintű megoldást biztosítani, ami mögött már jobban biztonságban érezhetjük magunkat.

Advertisements

Egy hozzászólás “Gondolatok az IT biztonságról 2. – egy majdnem bekövetkezett katasztrófa története” bejegyzéshez

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Facebook