The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

Ez a cikk a Fileless Malware sorozat része. A sorozat összes többi része:

Az oldal rajongója vagyok hibrid elemzés (hibrid analízis, a továbbiakban HA). Ez egyfajta malware állatkert, ahol biztonságos távolságból, támadás nélkül, biztonságosan megfigyelheti a vadon élő „ragadozókat”. A HA rosszindulatú programokat futtat biztonságos környezetben, rögzíti a rendszerhívásokat, a létrehozott fájlokat és az internetes forgalmat, és mindezeket az eredményeket minden elemzett mintánál megadja. Így nem kell időt és energiát pazarolnia arra, hogy saját maga kitalálja a zavaró kódot, hanem azonnal megértheti a hackerek szándékait.

A figyelmemet felkeltő HA-példák vagy kódolt JavaScript- vagy Visual Basic for Applications (VBA) szkripteket használnak, amelyek makróként vannak beágyazva Word- vagy Excel-dokumentumokban, és adathalász e-mailekhez csatolva. Megnyitáskor ezek a makrók PowerShell-munkamenetet indítanak el az áldozat számítógépén. A hackerek általában Base64 kódolású parancsfolyamot küldenek a PowerShellnek. Mindez azért történik, hogy bizonyos kulcsszavakra reagáló webszűrők és víruskereső szoftverek nehezen észleljék a támadást.
Szerencsére a HA automatikusan dekódolja a Base64-et, és mindent azonnal olvasható formátumban megjelenít. Lényegében nem kell ezeknek a szkripteknek a működésére összpontosítania, mert a futó folyamatok teljes parancskimenetét láthatja a HA megfelelő szakaszában. Lásd az alábbi példát:

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

A hibrid elemzés elfogja a PowerShellnek küldött Base64 kódolású parancsokat:

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

...majd dekódolja őket neked. #varázslatosan

В előző poszt Létrehoztam saját, kissé homályos JavaScript-tárolómat a PowerShell-munkamenet futtatásához. A szkriptem, mint sok PowerShell-alapú rosszindulatú program, ezután letölti a következő PowerShell-szkriptet egy távoli webhelyről. Aztán példaként betöltöttem egy ártalmatlan PS-t, ami üzenetet nyomtatott a képernyőre. De az idők változnak, és most azt javaslom, hogy bonyolítsuk a forgatókönyvet.

PowerShell Empire és Reverse Shell

Ennek a gyakorlatnak az egyik célja annak bemutatása, hogy egy hacker milyen (viszonylag) könnyen megkerülheti a klasszikus peremvédelmet és vírusirtót. Ha egy programozási ismeretekkel nem rendelkező IT-blogger, mint én, pár este alatt meg tudja csinálni észlelhetetlen rosszindulatú programokat hozhat létre (teljesen észrevétlen, FUD), képzeld el egy fiatal hacker képességeit, akiket ez érdekel!

És ha Ön informatikai biztonsági szolgáltató, de a menedzsere nincs tisztában e fenyegetések lehetséges következményeivel, csak mutassa meg neki ezt a cikket.

A hackerek arról álmodoznak, hogy közvetlen hozzáférést kapjanak az áldozat laptopjához vagy szerveréhez. Ez nagyon egyszerű: a hackernek csak néhány bizalmas fájlt kell tennie a vezérigazgató laptopjára.

Valahogy én már írtam a PowerShell Empire utómunkálati futási idejéről. Emlékezzünk, mi az.

Ez lényegében egy PowerShell-alapú penetrációs tesztelő eszköz, amely sok egyéb szolgáltatás mellett lehetővé teszi a fordított shell egyszerű futtatását. Részletesebben tanulmányozhatja a címen PSE kezdőlap.

Végezzünk egy kis kísérletet. Beállítottam egy biztonságos malware-tesztelési környezetet az Amazon Web Services felhőben. Kövesse a példámat, hogy gyorsan és biztonságosan megmutassa ennek a sérülékenységnek a működő példáját (és ne kapjon kirúgást, ha vírusok futnak a vállalat területén).

Ha elindítja a PowerShell Empire konzolt, valami ilyesmit fog látni:

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

Először indítsa el a figyelő folyamatot a hacker számítógépén. Írja be a "listener" parancsot, és adja meg a rendszer IP-címét a "set Host" segítségével. Ezután indítsa el a figyelő folyamatot az "execute" paranccsal (lent). Így az Ön részéről elkezd várni a hálózati kapcsolatra a távoli héjból:

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

A másik oldalhoz ügynökkódot kell generálnia a "launcher" parancs beírásával (lásd alább). Ez PowerShell-kódot generál a távoli ügynök számára. Vegye figyelembe, hogy a Base64-ben van kódolva, és a hasznos terhelés második fázisát képviseli. Más szóval, a JavaScript-kódom most lehívja ezt az ügynököt a PowerShell futtatására, ahelyett, hogy ártalmatlanul szöveget nyomtatna a képernyőre, és csatlakozik távoli PSE-kiszolgálónkhoz, hogy egy fordított shellt futtasson.

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek
A fordított shell varázsa. Ez a kódolt PowerShell-parancs csatlakozik a hallgatómhoz, és elindít egy távoli parancsértelmezőt.

Hogy megmutassam ezt a kísérletet, felvállaltam az ártatlan áldozat szerepét, és megnyitottam az Evil.doc-ot, ezzel elindítva a JavaScriptünket. Emlékszel az első részre? A PowerShell úgy lett beállítva, hogy megakadályozza az ablak felbukkanását, így az áldozat nem fog semmi szokatlant észrevenni. Ha azonban megnyitja a Windows Feladatkezelőt, egy olyan háttérben futó PowerShell-folyamatot fog látni, amely a legtöbb ember számára egyébként sem okoz riasztást. Mert ez csak egy rendes PowerShell, nem?

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

Most az Evil.doc futtatásakor egy rejtett háttérfolyamat csatlakozik a PowerShell Empire-t futtató kiszolgálóhoz. Felvettem fehér pentester hacker sapkámat, visszatértem a PowerShell Empire konzolhoz, és most egy üzenetet látok, hogy a távoli ügynököm aktív.

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

Ezután beírtam az "interact" parancsot egy shell megnyitásához a PSE-ben - és ott voltam! Röviden: feltörtem a Taco szervert, amelyet egyszer magam állítottam be.

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek

Amit most bemutattam, nem igényel sok munkát a részedről. Mindezt könnyedén megteheti az egy-két órás ebédszünetben, hogy javítsa információbiztonsági ismereteit. Ez egy nagyszerű módja annak, hogy megértse, hogyan kerülik ki a hackerek a külső biztonsági határt, és hogyan jutnak be a rendszerbe.

Azok az informatikai vezetők, akik azt hiszik, hogy áthatolhatatlan védelmet építettek ki bármilyen behatolás ellen, valószínűleg szintén tanulságosnak fogják találni – vagyis ha sikerül rávenni őket, hogy elég sokáig üljenek melletted.

Térjünk vissza a valóságba

Ahogy vártam, egy igazi, az átlagos felhasználó számára láthatatlan hack egyszerűen egy változata annak, amit az imént leírtam. Hogy anyagot gyűjtsek a következő publikációhoz, elkezdtem keresni egy mintát a HA-ról, amely ugyanúgy működik, mint az általam kitalált példám. És nem kellett sokáig keresnem - sok lehetőség van hasonló támadási technikára az oldalon.

A rosszindulatú program, amelyet végül a HA-n találtam, egy VBA-szkript volt, amelyet egy Word dokumentumba ágyaztak be. Vagyis nem is kell hamisítanom a doc kiterjesztést, ez a kártevő tényleg egy normális kinézetű Microsoft Word dokumentum. Ha érdekel, ezt a mintát választottam rfq.doc.

Gyorsan megtanultam, hogy gyakran nem lehet közvetlenül kihúzni a rosszindulatú VBA-szkripteket egy dokumentumból. A hackerek tömörítik és elrejtik őket, így nem láthatók a Word beépített makróeszközeiben. Az eltávolításához speciális szerszámra lesz szüksége. Szerencsére ráakadtam egy szkennerre OfficeMalScanner Frank Baldwin. Köszönöm, Frank.

Ezzel az eszközzel sikerült kihúznom az erősen homályos VBA-kódot. Valahogy így nézett ki:

The Adventures of Elusive Malware, II. rész: Titkos VBA-szkriptek
A homályosítást szakterületük szakemberei végezték. Nagy hatással volt rám!

A támadók nagyon jók a kód elhomályosításában, nem úgy, mint az én erőfeszítéseim az Evil.doc létrehozásában. Oké, a következő részben kivesszük a VBA hibakeresőinket, kicsit mélyebbre merülünk ebbe a kódba, és összehasonlítjuk elemzésünket a HA-eredményekkel.

Forrás: will.com

Hozzászólás