Regisztráció és bejelentkezés

Android malware-ek memória analízis alapú detektálása

Az informatikai biztonsági vizsgálatok és kutatások során több bevett módszert is alkalmaznak a szakértők. Ezek közül az egyik leggyakrabban használt, a nem permanens adattárolók tartalmának vizsgálata (live memory forensics). Az újabb és újabb technológiák megjelenésével folyamatosan szükségessé válik a vizsgálati módszerek fejlesztése és adaptálása. Ennek lehettünk tanúi a mobil platformok területén is az elmúlt években.

Dolgozatomban az Android platformra elérhető memória analízist elősegítő eszközökkel foglalkozom. A jelenleg elérhető megoldások segítségével, azok egyesítésével és továbbfejlesztésével, egy automatizált eszközt készítettem, amely egy android platformra készített alkalmazás vizsgálatát végzi el. A szoftver célja, hogy elvégezze azokat a műveleteket előre, amelyek elősegítik és támogatják egy humán szakértő által végzett vizsgálatot. Az analízist egy erre a célra kialakított és a későbbi elemzésekhez előkészített emulált környezetben végzem, ahol lehetséges a potenciálisan ártó szándékú alkalmazások biztonságos vizsgálata.

Az elkészült rendszer egy webes szolgáltatásként működik, amihez két ponton lehetséges csatlakozni. A rendszerhez tartozik egy kliens alkalmazás, amely android alapú eszközökön fut, és a rendszerre telepített további alkalmazásokat vizsgálja. Amennyiben egy alkalmazást gyanúsnak ítél meg, akkor annak futtatható állományát elküldi a szerverre, ahol további elemzésekre kerül sor. A másik elérési pontja a szolgáltatásnak egy hagyományos webes felület. Itt bárkinek lehetősége van feltölteni “.apk" formátumú alkalmazásokat, amelyeket a rendszer megvizsgál, és az eredményeket megjeleníti az érdeklődő számára.

A szerver oldalra megérkezett gyanús fájlokon először néhány statikus elemzési lépést hajtok végre. Ez szükséges előkészítés a későbbi vizsgálatok elvégzéséhez. Ezután létrehozok egy friss, emulált környezetet, ami biztosan nem tartalmaz semmilyen károsodást egy korábbi vizsgálat eredményeként. A környezetben elindítok különböző alkalmazásokat, és többféle felhasználói műveletet is szimulálok, hogy az egy valós eszköz állapotához közeli helyzetbe kerüljön. Megfelelő idő eltelte után telepítem a vizsgálandó alkalmazást, amelynek szintén felhasználói utasításokat küldök, ezzel is egy valós helyzetet szimulálva. A rendszert ebben az állapotban szintén tovább hagyom futni, hogy az alkalmazásnak legyen kellő ideje végrehajtani műveleteket. A várakozás után egy kernel modul segítségével elkészítek egy másolatot az emulált környezet memóriájának a tartalmáról. Az emulátort ekkor le is állítom, mivel a további vizsgálatok már a memória képen futnak majd.


A memória kép analízist a széles körben alkalmazott Volatility keretrendszer segítségével végzem, amit felhasználva különböző értékes információkhoz jutok a rendszer állapotával kapcsolatban. Így hozzá tudok jutni a vizsgált alkalmazás által végrehajtott változtatások listájához, illetve részletesebb képet kapok az alkalmazás viselkedéséről.

szerző

  • Gazdag András
    mérnökinformatikus
    nappali

konzulens

  • Dr. Buttyán Levente
    egyetemi tanár, Hálózati Rendszerek és Szolgáltatások Tanszék

helyezés

Neumann János Számítógép-tudományi Társaság I. helyezett