Egyre több az ijesztő részlet a Petya támadás hátteréről


2017.07.13

Az ESET szakemberei szerint a támadók hozzáférhettek az ukrán számviteli program, az M.E.doc forráskódjához

A kártevőt az ESET biztonsági megoldásai Diskcoder.C néven azonosították (más néven ExPetr, PetrWrap, Petya vagy NotPetya). A támadást a M.E.doc adatszolgáltatási és iratkezelési programon keresztül hajtották végre, a kártevő tipikus zsarolóvírusnak álcázta magát és 300 dollárnak megfelelő bitcoint kért a titkosított adatok feloldásáért. A vizsgálat során kiderült, hogy a vírus alkotóinak szándéka nyilvánvalóan a rombolás volt, így mindent megtettek azért, hogy az adatok visszafejtésére ne kerülhessen sor. Az ESET szakembereinek véleménye szerint nagyon valószínű, hogy a támadók hozzáfértek az M.E.doc forráskódjához, és egy backdoor (hátsó ajtó) programot illesztettek a szoftver egy hivatalos moduljába.

Az ukrán kiberrendőrség hivatalos Facebook oldalán jelentette be, hogy a rendelkezésre álló információk alapján, a támadók a hivatalos ukrán számviteli szoftvert, az M.E.Doc programot használták a DiskCoder.C kártevő terjesztéséhez az akció kezdeti szakaszában. Azonban eddig nem derültek ki pontos részletek arról, hogyan tudták ezt véghez vinni a bűnözők. Az ESET kutatása szerint a kiberbűnözők egy igen jól rejtőzködő és kifinomult backdoor (hátsó ajtó) programot illesztettek az M.E.Doc egyik hivatalos moduljába, ehhez azonban hozzá kellett férniük a számviteli program forráskódjához.

A backdoor programmal fertőzött modult (ZvitPublishedObjects.dll.) a .NET Framework használatával készítették. Az 5 megabájtos fájl számos hivatalos kódot tartalmaz, amelyet más komponensek is meghívhattak, beleértve az M.E.Doc végrehajtó fájlját, az ezvit.exe-t is. A 2017-es frissítéseket megvizsgálva az ESET szakemberei legalább 3 frissítésben találták meg a backdoor modult:

  • 10.01.175-10.01.176, kiadva április 14-én
  • 10.01.180-10.01.181, kiadva május 15-én 
  • 10.01.188-10.01.189, kiadva június 22-én

Az XData fertőzés kitörése három nappal az első fent említett frissítés után történt, a DiskCoder.C terjedése pedig 5 nappal az utolsó (10.01.188-10.01.189) frissítés megjelenése után kezdődött. Érdekes adat, hogy az április 24. és május 10. között, illetve május 17. és június 21. között kiadott frissítések nem tartalmazták a backdoor programot.

Az EDRPOU számmal való visszaélés

Az Ukrajnában üzleti tevékenységet végző szervezetek rendelkeznek egy egyedi azonosítóval, az EDRPOU számmal. Ez kiemelten fontos a támadóknak: ha megszerzik egy vállalkozás EDRPOU számát, akkor pontosan be tudják azonosítani, hogy mely szervezetek használják a fertőzött modulokat, majd az akció céljától függően különféle taktikákkal támadhatják a cég számítógépes rendszerét.

Az M.E.Doc programot széles körben használják Ukrajnában, az EDRPOU adatai pedig megtalálhatók a szoftvert használó gépek alkalmazásadatai (application data) között. Az IsNewUpdate módba bejuttatott kód összegyűjt minden EDRPOU-val kapcsolatos információt az alkalmazásadatokból, begyűjti a proxy és levelező beállításokat, illetve az M.E.Doc programban található felhasználóneveket és jelszavakat.

Az ESET szakemberei ezért az javasolják, hogy az M.E.Doc szoftver felhasználói azonnal változtassák meg a proxy és az e-mail fiókokhoz tartozó jelszavakat!

A kártevő beírja a begyűjtött adatokat a Windows registry-be, a HKEY_CURRENT_USER\SOFTWARE\WC kulcsba, a Cred és Prx nevet használva, így ha ezek az bejegyzések megtalálhatók a számítógépen, akkor nagyon valószínű, hogy a backdoor programmal fertőzött modul futott, vagy jelenleg is fut a gépen.

A program egyik érdekes tulajdonsága, hogy a backdoor programmal fertőzött modul nem használ semmilyen külső szervert, amitől várhatna új parancsokat, vagy küldhetne hozzá különböző adatokat. (C&C). A modul az M.E.Doc program rendszeres frissítéseket kereső kérését használja, amely a hivatalos M.E.Doc szerverhez kapcsolódik (upd.me-doc.com[.]ua). Az egyetlen különbség a hivatalos lekérdezés és a fertőzött kód között az, hogy az utóbbi az összegyűjtött információt sütikbe (cookies) tárolva küldi el.

Az ESET szakemberei nem végeztek igazságügyi elemzést az M.E.Doc szerverén, azonban egy korábbi blogposztban már kiemelték, hogy vannak egyértelmű jelek a szerver fertőzöttségére. Gyanítható, hogy a támadók olyan programot telepítettek a szerverre, amely lehetővé teszi számukra, hogy különbséget tegyenek a fertőzött vagy tiszta gépekről érkező kérések között. Természetesen a támadók hozzáadták a fertőzött gépek irányításának lehetőségét is a programhoz: a kód fogad egy bináris objektumot (blob) a hivatalos M.E.Doc szervertől, dekódolja a Triple DES algoritmus révén, majd a GZip segítségével kitömöríti. Az eredmény egy XML fájl, amely számos szerverparancsot tartalmaz. Ez a távoli irányítási funkció a backdoor programot egy teljes értékű kiberkémkedési és szabotázs platformmá alakítja.

Következtetések

Az ESET elemzői szerint ez egy jól megtervezett és végrehajtott akció. A szakemberek szerint a támadók hozzáfértek az M.E.Doc forráskódjához, így volt idejük megismerni azt, majd megalkotni a valós támadáshoz szükséges backdoor programot. Az M.E.Doc teljes telepítői csomagja nagyjából 1,5 gigabájt, és a szakemberek jelenleg nem tudják kizárni, hogy nem tartalmaz beültetett backdoor programokat.

Az eset kapcsán számos kérdés is felmerül: mióta használják ezt a backdoor programot, a DiskCoder.C vagy a Win32/Filecoder.AESNI.C kártevőkön kívül milyen más vírusokat juttattak át a rendszeren, milyen más frissítési láncok lehetnek a bűnözők tulajdonában, amelyek megfertőztek rendszereket, de még nem használták fel őket?

A kibertámadás részleteiről folyamatosan frissülő szakértői anyagokat a WeliveSecurity blogon olvashatnak.