Sandbox-elemzés: mi történik egy gyanús melléklettel

Miért nem elég a szignatúra-alapú keresés, mit figyel a sandbox a fájl futtatása közben, és hogyan próbál a kártevő kitérni az elemzés elől.

Téma
IT-biztonság
Szerző
ARLITECH szakértői csapat
Megjelent

Egy számlának látszó PDF vagy egy táblázat érkezik a beszállító nevében, a levél szövege rövid és hihető. A levélszűrő ilyenkor először azt nézi, ismeri-e már a fájlt. Ha igen, gyorsan dönt. Ha a fájl még sehol nem fordult elő, a döntéshez meg kell nézni, mit csinál, amikor valaki megnyitja.

A sandbox erre való: egy elszigetelt, eldobható gépen megnyitja a fájlt, és a viselkedéséből ítél. Az alábbiakban végigkövetjük, mi történik a melléklettel a beérkezéstől az ítéletig, hogyan próbálja a kártevő kijátszani az elemzést, és mit nem lát a sandbox akkor sem, ha jól van beállítva.

Miért nem elég a szignatúra-alapú víruskeresés

A szignatúra egy már ismert kártevő ujjlenyomata: a teljes fájl kivonata (hash), egy jellemző bájtsorozat vagy egy mintára illeszkedő szabály. Ha a beérkező fájl egyezik vele, a döntés egyszerű és gyors. A módszer gyengesége is ebből következik, mert csak azt ismeri fel, amit valaki már látott, elemzett és felvett az adatbázisba.

Ugyanazt a kártevőt ezért újracsomagolják vagy titkosítják, így minden kampányban, sokszor minden címzettnél más lesz a hash. A polimorf kártevő minden új példánynál más alakot ölt: másik kulccsal titkosítja magát, és a visszafejtő kódrésze is változik. A célzott támadásnál használt fájl pedig jellemzően sehol máshol nem bukkan fel, ezért szignatúra sem készülhet róla időben.

Gyakori az is, hogy a melléklet maga szinte ártalmatlan. Egy makrós dokumentum vagy egy parancsfájl csak letöltő: megnyitáskor elér egy távoli címet, és onnan húzza le a valódi kártevőt. A fájl statikus vizsgálatakor ebből annyi látszik, hogy van benne egy rövid, esetleg elrejtett kódrészlet. A heurisztikus keresés gyanús szerkezeteket is jelezhet, de hogy a kód futás közben mit tölt le és mit indít, az csak futtatáskor derül ki.

Mit figyel a sandbox a fájl futtatása közben

A sandbox egy elszigetelt elemzőkörnyezet, általában virtuális gép, amely egy hétköznapi munkaállomást utánoz. Az elemzés két szakaszban zajlik.

Statikus előszűrés

Először a fájlt megnyitás nélkül vizsgálja: a valódi fájltípust (a kiterjesztés hazudhat), a beágyazott objektumokat, a makrókat, a csomagolás nyomait és a hivatkozásokat. Ami egyértelműen ismert, jó vagy rossz, itt már eldől. A többi továbbmegy futtatásra.

Dinamikus futtatás

A fájl a típusának megfelelő programmal nyílik meg: a dokumentum szövegszerkesztővel, a PDF olvasóval, a futtatható állomány közvetlenül. Az elemző eközben rögzíti, mi történik a gépen:

  • milyen folyamatokat indít, például ha egy szövegszerkesztő parancsértelmezőt vagy szkriptfuttatót hív meg, ami egy számla megnyitásakor nem szokás;
  • milyen fájlokat hoz létre, módosít vagy töröl, és elkezd-e tömegesen fájlokat átírni, ami zsarolóvírusra utal;
  • beír-e magát az automatikusan induló programok közé, vagy ütemezett feladatot hoz-e létre, hogy újraindítás után is fusson;
  • milyen domainneveket kérdez le és milyen címekre kapcsolódik, mert ebből derülhet ki az irányító szerver;
  • beinjektál-e kódot egy másik, megbízható folyamat memóriájába, vagy hozzányúl-e a tárolt jelszavakhoz.

Az eredmény

Az elemzés végén a sandbox ítéletet ad, általában kockázati pontszámmal és egy jelentéssel arról, mit látott. A jelentés hasznos része az IoC-lista: a fájl és a letöltött további fájlok hash-ei, a megkeresett domainek és IP-címek. Sok termék a megfigyelt viselkedést a MITRE ATT&CK technikáihoz rendeli, így az incidenskezelő egy közös szótárban látja, mire készült a kártevő.

Kitérési technikák: hogyan próbál a kártevő rejtve maradni

A kártevők írói is ismerik a sandboxot, és sok minta megpróbálja észrevenni, hogy elemzőkörnyezetben fut. Ha erre jut, nem csinál semmit, vagy ártalmatlan programnak adja ki magát, és tiszta ítéletet kap. A MITRE ATT&CK ezt külön technikaként tartja nyilván (T1497, Virtualization/Sandbox Evasion). A leggyakoribb fogások a következők.

A környezet vizsgálata

A minta megnézi, virtuális gépen fut-e: keresi a virtualizációs illesztőprogramokat és szolgáltatásokat, a hálózati kártya gyártói előtagját, a jellemző registry-kulcsokat. Gyanús neki az egy processzormag, a kevés memória, a kicsi lemez és az is, ha a gépnek nincs tartományi tagsága vagy a nyelvi beállítás nem az, amire a támadó számít.

A felhasználó hiánya

Egy valódi gépen mozog az egér, görgetnek a dokumentumban, a böngészőnek van előzménye, a Dokumentumok mappában vannak fájlok. Egy frissen indított elemzőgépen mindez hiányzik. Van olyan dokumentum, amelyben a kód csak akkor indul, ha a felhasználó a második oldalig görget, vagy rákattint egy képre.

Időzítés

Az elemzés néhány percig tart. A kártevő ezért kivár: hosszan alszik, vagy csak a következő újraindítás után, egy adott napon aktiválódik. A sandboxok erre úgy válaszolnak, hogy felgyorsítják az alvó hívásokat, mire a minta a valódi eltelt időt méri, és észreveszi a különbséget.

A rakomány máshol van

Ha a fájl csak letöltő, a valódi kártevőt kiszolgáló szerver dönthet úgy, hogy az elemzőkörnyezet címére ártalmatlan választ küld, vagy csak egy adott ország, egy adott cég címtartományából érkező kérésre ad rakományt. Hasonló megkerülés a jelszóval védett tömörített fájl, amelynek jelszava a levél szövegében áll. Sok levélszűrő kipróbálja a levélben talált jelszavakat, de ha a rendszer nem találja meg vagy nem próbálja ki a jelszót, az archívum tartalmába nem lát bele.

Az elemzőkörnyezetek ezekre valósághű gépképpel, szimulált felhasználói tevékenységgel, hosszabb futtatással és a vendég rendszeren kívülről, a hipervizor szintjéről végzett megfigyeléssel felelnek. Egyes megoldások valódi hardveren is futtatnak, mert ott a virtualizáció nyomai hiányoznak. A versenyfutás ettől nem ér véget, ezért a sandbox ítéletét a többi jelzéssel együtt érdemes kezelni.

Visszatartás vagy azonnali kézbesítés

A dinamikus elemzés időbe telik, egy levélnél jellemzően perceket. Az üzemeltetőnek el kell döntenie, mi történjen a levéllel addig.

Visszatartás az ítéletig

A levél csak a tiszta ítélet után kerül a postafiókba. Ez a biztonságosabb mód, a felhasználó viszont késve kapja meg a mellékletet, és ha sürgős számláról vagy ajánlatról van szó, ezt hamar szóvá teszi. A késést enyhíti, hogy a már elemzett fájlok ítélete gyorsítótárban marad, így ugyanannak a fájlnak a második példánya azonnal átmegy.

Kézbesítés és utólagos visszavonás

A levél azonnal megérkezik, az elemzés a háttérben fut. Ha az ítélet rossz, a rendszer kiveszi a levelet a postafiókból, és riaszt. Ez csak akkor működik, ha a levélszűrő a beérkezés után is hozzáfér a postafiókhoz, és a riasztást valaki kezeli, mert addigra a felhasználó már meg is nyithatta a fájlt.

Tisztított másolat

Köztes megoldás a tartalom-hatástalanítás (Content Disarm and Reconstruction, CDR). A rendszer a dokumentumból eltávolítja az aktív részeket, például a makrókat és a beágyazott objektumokat, és a felhasználó azonnal megkapja az újraépített, tisztított változatot. Az eredeti a sandbox ítélete után kérhető ki.

A gyakorlatban a három mód keveredik: a futtatható fájlok és makrós dokumentumok visszatartást kapnak, a tiszta PDF-ek azonnal mennek, a pénzügyön dolgozók szigorúbb szabályt kapnak, mint a többiek. Webes letöltésnél ugyanez a kérdés: a böngésző vár az ítéletre, vagy a fájl átmegy, és az ítélet a végpontra érkezik.

Az ítélet útja: tűzfal, e-mail-védelem, végpont

Egy sandbox, amely csak jelentést ír, keveset ér. A haszna abból jön, hogy az ítélete visszajut azokra a pontokra, ahol a fájl a hálózatba léphet.

E-mail-védelem

A levélszűrő küldi be a mellékleteket, és sok megoldás a levélben szereplő hivatkozásokat is megnyitja az elemzőkörnyezetben. A hivatkozás mögötti oldal a kézbesítés után is megváltozhat, ezért hasznos a kattintáskori újraellenőrzés: a link átírt formában érkezik, és a rendszer a kattintás pillanatában újra megnézi, hová vezet. Hogy a mellékleten túl mi árulkodik egy adathalász levélről, azt az adathalászatról szóló cikk részletezi.

Tűzfal

A tűzfal a webes és fájlátviteli forgalomból emeli ki a letöltött fájlokat. A forgalom nagy része titkosított, ezért ehhez a tűzfalnak bontania kell a TLS-kapcsolatot, különben a fájlt nem látja. Rossz ítélet után a fájl hash-e tiltólistára kerül, a jelentésben szereplő irányító szerverek címét pedig a tűzfal letilthatja, így egy már fertőzött gép sem tud hazatelefonálni.

Végpont

A végpontvédelem, például egy EDR, két irányban kapcsolódik. Beküldheti a gépen megjelenő ismeretlen fájlt, és fogadja az ítéletet: karanténba teszi a fájlt, és megkeresi azokat a gépeket, ahol a fájl vagy a hozzá tartozó IoC már előfordult. Ez a lépés zárja be a kézbesítés utáni visszavonás hézagát, mert megmutatja, ki nyitotta meg a fájlt, mielőtt az ítélet megszületett.

Amit a sandbox egyszer kiértékelt, azt így a levélszűrő, a tűzfal és a végpont is ismeri, akármelyiken érkezik legközelebb. Érdemes az ítéleteket a SIEM-be is továbbítani, hogy egy incidensvizsgálatnál a fájl útja egy helyen látsszon.

A sandbox korlátai

A sandbox fájlokat és hivatkozásokat vizsgál. Ami ezen kívül esik, azt nem látja, és vannak fájlok, amelyekkel ő sem boldogul.

  • A melléklet nélküli támadások. Egy hamis bejelentkezőoldalra mutató link még elkapható, de a csaló utalási kérés, amely csak szöveg, kívül esik a sandbox látókörén.
  • A fájl nélküli kártevők. Ha a támadó a gépen már meglévő eszközöket használ, például parancssori szkriptet futtat közvetlenül a memóriából, nincs mit beküldeni. Ezt a végponti viselkedésfigyelés látja.
  • A méret- és típuskorlátok. A nagy fájlokat és a nem támogatott formátumokat a rendszerek jellemzően elemzés nélkül engedik át vagy blokkolják. Hogy melyik történik, az beállítás kérdése, és érdemes tudni róla.
  • A célzott kitérés. Egy kifejezetten egy szervezetre írt kártevő a fenti technikákkal tiszta ítéletet kaphat.
  • Az adatok útja. A felhős sandbox a beküldött dokumentumot a szervezeten kívül elemzi. Szerződéseknél, személyes adatoknál el kell dönteni, mely fájltípusok és feladók mehetnek felhőbe, és hol kell helyi elemzés.

A téves riasztás is üzemeltetési teher. Egy belső fejlesztésű makró vagy egy szokatlanul viselkedő telepítő könnyen rossz ítéletet kap, és ha a kivételeket senki nem kezeli, a felhasználók megtanulják, hogyan kerüljék meg a szűrést.

Gyors önteszt: nézze meg a levélszűrő naplójában, hány melléklet ment át az elmúlt hónapban elemzés nélkül, mert nem tudta kibontani, túl nagy volt, vagy a formátumát a rendszer nem ismerte. Ezek azok a fájlok, amelyekről a sandbox nem mondott semmit.

Kapcsolódó szolgáltatás: Fejlett fenyegetésvédelem (sandbox) →

Kapcsolat

Készen áll a kritikus rendszerei védelmére?

Szakértőink felmérik biztonsági helyzetét, és egy szervezetéhez illő útitervet dolgoznak ki.

Az ARLITECH gödöllői irodája

Látogasson meg minket

Gödöllői irodánkban személyesen is várjuk.

Cím
Centrum Irodaház, 2100 Gödöllő, Dózsa György út 13, 3. emelet 309
Helyi ügyfélfogadás
H–P 9:00–17:00
Útvonaltervezés (új lapon nyílik)