Az androidos titkosító kártevő újra boncolása

2014. június 18. 11:28 - Csizmazia Darab István [Rambo]

Lehetne a poszt címe "Ha csak úgy nem", vagy egy újabb eleme "A kártevőkészítők által elkövetett kezdeti szarvashibák a Proof of Concept típusú első verziós kódokban" is. Mindenesetre egy egyetemista programozói szemmel elemezte a Java kódot, és szerencsés módon megoldást talált az elkódolt fájlok visszafejtésére az egyébként TOR hálózat alapú C&C vezérlő szerver, és a váltságdíj fizetési procedúra teljes kihagyásával.

Június elején számoltunk be arról, hogy felfedezték azt a vadonatúj Android platformon terjedő trójait, amely zsaroló programként terjed és titkosítja mobil eszközeink SD kártyáját. Sajnos a mobil platformokat sem kerülte el váltságdíjat szedő kártevők hulláma, amelyek ál vírusirtóként illetve hamis szerzői jogi, illetve police típusú kártevőként már legalább egy éve jelen vannak. Ám az korábban sosem fordult még elő, hogy egy ilyen rosszindulatú program titkosította volna a fájlokat a megfertőzött mobil eszközön, és ezekért kért volna váltságdíjat. Azon viszont, hogy a hatásosabb védelem és anonimitás érdekében a bűnözők a távoli vezérlő C&C szervert egy nehezebben nyomon követhető TOR .onion domain-en regisztrálták, vagy hogy a fejpénzt ukrán hrivnyában kérik, már szinte meg sem lepődtünk.

Nos az ördög a részletekben lakozik, gondolhatta magában Simon Bell egyetemi hallgató, és nekiállt, hogy ő is közelebbről is tesztelje az első Androidon megjelent váltságdíjas titkosító kártevőt. A vizsgálatait statikus és dinamikus környezetben is elvégezte, és igyekezett megérteni, hogy az .ENC fájlok titkosítása pontosan milyen lépéseken, hogyan és milyen Java osztályok közreműködésével megy végbe. Az Android Emulátorban létrehozott virtuális SD kártya tartalma a kártevő futtatása után neki is sikeresen elkódolódott. A kód elemzéskor azonban jól látszott, hogy a Simplocker nála futó első verziója egy minden tekintetben PoC, azaz kísérleti kártevő, amelyben a felhasználók óriási szerencséjére a titkosítás mégsem sikerült tökéletesre, így annak gyengeségeit akár ki lehetne használni.

Következő lépésként mi is jöhetett volna más, mint hogy meg kellene próbálni egy egyszerű Java kóddal anélkül helyreállítani az AES segítségével elkódolt fájlokat, hogy ahhoz külső kapcsolat, vezérlő szerver, váltságdíj vagy bármilyen külső tényezőre szükség lenne. Ezzel zárult az első írás, így ezt a június 16-i részletes elemzés végén az olvasóknak meg is ígérte, így kíváncsian várhattuk a következő blogposztot, bár a lényeg ugye már ebben is tulajdonképpen benne volt :-)

Amely bejegyzés aztán rögtön másnap, 17-én meg is született. Elmondása szerint nem volt különösebben nehéz dolga, hiszen a fentiek alapján sikeresen felfedezte, hogy a dekódolási jelszóhoz konstansként tud hozzáférni. Ezután írt gyorsan egy saját függvényt, amely végiglépked az SD memória kártyáján tárolt .ENC kiterjesztésű állományokon, majd helyreállítja azokat. Azért persze a siker mellett azt emeljük ki, hogy ez piszok mázli volt, és semmiképpen nem lehet ok arra, hogy ezentúl mégse mentsük rendszeresen személyes adatainkat az okostelefonunk memóriakártyájáról, vagy hogy a jövőben ne használjunk rajta vírusirtót, és a miértekről is azonnal szó fog esni.

Természetesen - ahogy maguk az eredeti elemző posztok említik, és ezt a majd 30 éves vírustörténelem tapasztalatai alapján mi magunk is csak megerősíthetjük - ezeket a kezdeti gyengeségeket a kártevőkészítők valószínűleg nagyon gyorsan felfedezik és befoltozzák majd. Nyilván ők is rendszeresen olvasnak szaksajtót és szakmai blogokat, meg közben látják is, hogy ni csak nem az elvárt ütemben ömlik be hozzájuk a pénz. Érdemes megemlíteni például a Windows PC-ken még 2008-ban felbukkant GP Code esetét, ahol az bár erős, 1024 bites RSA titkosítással kódolta el a felhasználó adatait, ám a víruskutatók az első verziós PoC-ban felfedezték, hogy a titkosítás elkészültével az eredeti kódolatlan fájlok viszont csak sima magas-szintű állomány törlési paranccsal lettek törölve kinullázás vagy felülírás nélkül, így azokat ha közben nem történt jelentős fájlművelet a lemezen, egy szimpla undelete segítségével egyszerűen vissza lehetett hozni. Persze ennek nyilvánosságra kerülése után a kártevő készítői sem késlekedtek sokat, és a heteken belül megjelent következő változatban már sajnos nem követték el újra a primitív szarvashibát.

Ezt a viharos Speedy Gonzales tempót egyébként a Microsoft saját hibajavításinál is szívesen látnánk, ehhez csak két adatot mutatunk a viszonyítás kedvéért. Amikor 1995-ben az első makró vírusok megjelentek az Office 95-ben, kiderült, hogy dokumentum megnyitáskor alapértelmezett az automatikus makrók lefutása. Mégis az ezt megszüntető frissítés csak 2000-ben látott napvilágot, vagyis mindez nagyjából 6 évig nyitva volt a vírusok előtt. Nem volt sokkal jobb a helyzet az Autorun vírusok esetében sem, ahol az első ilyen vírus felismerése még 2007. júniusában került be a vírusirtók adatbázisaiba, ám az Autorunt letiltó frissítést a Microsoft végül csak 2011. februárjában adta ki, tehát durván négy esztendő kellett nekik hozzá, vagyis lehetne még hova gyorsulni ;-).

3 komment

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

buherator · http://buhera.blog.hu 2014.06.18. 11:48:18

Arra azért nagyon kváncsi lennék, hogy ezt az elképesztő bonyolultságú megoldást miért nem az ESET (vagy más vendor) jól fizetett szakértői fedezték fel...

Csizmazia Darab István [Rambo] · http://antivirus.blog.hu 2014.06.18. 13:59:02

Ennek csak egyetlen logikus magyarázata lehetséges: mindenki a foci VB-t nézi, közben pedig Bell barátunk láthatóan utálja a futballt ;-)))

Komolyra fordítva a szót előbb-utóbb mindenképpen kiderült volna, ez csak idő kérdése. Amellett pedig a laborokba érekező napi 60 ezer - 200 ezer minta nem kicsit leterhelő, ezt is figyelembe kell venni.

buherator · http://buhera.blog.hu 2014.06.19. 10:05:34

@Csizmazia István [Rambo]: A marketingposzt megírása úgy látszik magasabb prioritást élvezett... Nem hánytorgatnám fel a dolgot, ha egy "hagyományos" szétobfuszkált natív malware-ről lenne szó, de egy Java bytekódban megtalálni egy bedrótozott jelszóval dolgozó AES rutint kevesebb időt vesz igénybe, mint beillesztgetni a képeket a blogszerkesztőben.
süti beállítások módosítása