A sandbox nem helyettesíti a víruskeresőt

Az automatikus sandbox-szolgáltatásokat nem szabad „víruskeresőként” kezelni a minták rosszindulatúságának megállapítására. Nem ez a rendeltetésük, és rosszul teljesítenek ebben a szerepkörben.

A kártevők viselkedését elemző szakértőként azt mondhatom, hogy egy sandbox (homokozó) nem tudja önmagában eldönteni, hogy egy minta valóban rosszindulatú-e. A sandboxrendszerek gyakran nem tartalmazzák a teljes környezetet, és rosszindulatúként címkézik fel a viselkedést, amely a legitim fájlokban is előfordul. Ezt túlzott magabiztossággal teszik, mert a víruskereső szoftverekkel ellentétben a tévedésnek nincsenek súlyos következményei.

Ahelyett, hogy a sandboxok „rosszindulatúnak” címkézik ezeket a mintákat, jobb lenne, ha inkább az „érdekes” jelzőt használnák. Példa erre, ha egy játék végrehajtható fájljait billentyűnaplózóként jelölik meg, mert ezeknek be kell olvasniuk azokat a leütéseket, amelyek lehetővé teszik számukra a karakterek vezérlését a játékban. Elemzőként mindig az a kérdés, hogy ez elvárt viselkedés egy ilyen alkalmazásnál, vagy eltér a megszokottól?

A sandbox jelentésekben szereplő számos következtetés szintén korlátozott értékű. Az igazán fontos ilyenkor annak megértése, hogy miért vonták le ezeket a következtetéseket, és milyen adatok támasztják alá őket. A „játék”-példát ismét felhasználva több mutatóból is levonható a „billentyűleütések naplózása” következtetés. Hogy néhányat említsünk:

  • olyan karakterláncokat tartalmaz, amelyeket jellemzően a billentyűzetfigyelők rögzíteni szoktak, például “[ENTER]”,
  • olyan importokat tartalmaz, amelyek a billentyűleütések figyelésére használhatók,
  • a minta olyan API-kat hív meg, amelyek a billentyűleütések felismeréséhez kapcsolódnak,
  • a mintában ismert, rosszindulatú keylogger kódmintája található,
  • a mintát az antivírus szkennerek keyloggerként észlelik,
  • a mintának van egy hibakeresési útvonala, amely tartalmazza a „keylogger” szót,
  • a minta kidobott egy billentyűleütéseket tartalmazó fájlt a sandbox futtatása során.

A fenti mutatók bármelyike jelezheti, hogy rosszindulatú kóddal van dolgunk. De nekem, mint kutatónak számít, ha a minta billentyűleütésekkel dobott ki egy szöveges fájlt, vagy csak olyan importot tartalmaz a fejlécében, amelyet esetleg soha nem fognak használni. Emiatt általában kihagyom a következtetéseket, és egyenesen a tényekre térek rá, amikor a sandbox-jelentéseket olvasom.

Hibára hajlamos minták

Néhány példa, amely általában helytelen ítéletekhez vezet az automatikus sandbox rendszerekben:

  • Olyan programok, amelyek nem futnak, mert előzetes beállítást igényelnek (vagy hiányoznak a sandbox-rendszer egyéb környezeti elemei) – a sandbox-rendszerek ezekben az esetekben nem tudnak sok hasznos információt kinyerni.
  • Az anti-sandbox technikák miatt nem futó rosszindulatú programok tisztának tűnhetnek.
  • Számítógép-javító szoftver, amely töröl, lekérdez, módosít bizonyos rendszerleíró kulcsokat és fájlokat – ez a viselkedés kontextusból kiragadva gyanúsnak tűnhet.
  • Biztonsági mentést végző szoftver, mivel viselkedése a zsarolóprogramokhoz hasonlít (nagyszámú fájlt módosít, és gyakran más néven menti el ezeket).
  • Tisztítsa meg a virtuális gépeket észlelő programokat – mivel a virtuálisgép-ellenes technikák jelenléte gyakran elegendő ahhoz, hogy rosszindulatúnak ítéljenek meg egy fájlt. 
  • Olyan szoftver, amely védelmi mechanizmusokat alkalmaz, mivel ezek rosszindulatú programnak vagy elrejtési technikáknak tekinthetők.
  • Olyan programok, amelyek eltávolítják a víruskereső szoftvereket, mivel összetéveszthetők a vírusvédelmet letiltó rosszindulatú programokkal.
  • Potenciálisan nemkívánatos programok (PUP) – a sandbox rendszerek gyakran nem tesznek különbséget a PUP és a rosszindulatú programok között, és ugyanazt jelzik.

Víruskeresők a homokozóban

Az automatikus sandbox rendszerek gyakran támaszkodnak a vírusvédelem észlelési arányaira, mint az általános pontszámuk fő tényezőjére. Gyakran ugyanazokat a jellemzőket értékelik, amelyek kezdetben befolyásolták a víruskeresők döntését.

Mindez nem könnyen beállítható, mert a víruskereső rendszerek fekete dobozok. A sandbox rendszerek nem tudják pontosan felmérni, hogy mikor rendelnek túl nagy súlyt bizonyos viselkedésekhez vagy indikátorokhoz, azért mert a víruskereső már használta őket, és nem tudják finomhangolni a saját viselkedésüket. A víruskeresők riasztási aránya inkább jelent megoldást a nem észlelt minták kezelésére.

Amiben ezek a sandbox-rendszerek kiválóak, az az osztályozás – a mutatók és a további elemzésre érdemes pontok listája összeállítása. Ezek azonban szakértők által használható rendszerek, ellentétben a víruskeresőkkel, amelyek a rosszindulatúság megállapításának elsődleges – nem szakértői – módszerei.

Az elfogultság elleni küzdelem

Szeretném, ha az automatikus sandboxig rendszerek felhagynának azzal, hogy úgy tesznek, mintha a pontszámuknak valódi jelentősége lenne, és ehelyett rendszereiket azokra a szakértőkre szabnák, akiknek szükségük van rájuk – ahelyett, hogy a víruskeresők helyettesítőjeként reklámoznák magukat. 

Sajnos azonban a sandbox-szállítók számára a nem szakértők szélesebb közönségének bevonása logikus üzleti szempontból, így ez valószínűleg nem fog változni.

Reálisabb kívánság a sandbox gyártókkal szemben a pontozás bevezetése, és az ítéletek és a következtetések letiltása. A nagy piros figyelmeztető színek és a „rosszindulatú” jelzőfények elfogultságot eredményeznek a rosszindulatú programok elemzőiben, különösen azokban, akik újak a területen. De még a tapasztaltabb elemzők esetében sem szabad alábecsülni a hatást.

Mivel én magam sem tudom kikapcsolni, aktívan igyekszem ellensúlyozni ezt az elfogultságot azzal, hogy kihívás elé állítom magam, hogy bizonyítékot találjak az ellenkező ítéletre. Néha belsőleg lefordítom a „rosszindulatú” szót „érdekes mutatók”-ra, a „tiszta” kifejezést pedig a „semmi érdekeset nem találtam”-ra, mert tapasztalataim szerint ezek pontosabbnak tűnnek.

A cikk szerzője:
Karsten Hahn, Principal Malware Researcher, G DATA CyberDefense AG.

A cikkhez a lap alján tud hozzászólni, és mások hozzászólásait is ott olvashatja.

Ha tetszett a cikk:


Ne felejtsen el feliratkozni hírlevelünkre:

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