The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Ang artikulong ito ay bahagi ng serye ng Fileless Malware. Lahat ng iba pang bahagi ng serye:

Ako ay isang tagahanga ng site hybrid analysis (hybrid analysis, pagkatapos nito HA). Ito ay isang uri ng malware zoo kung saan maaari mong ligtas na obserbahan ang mga ligaw na "mga mandaragit" mula sa isang ligtas na distansya nang hindi inaatake. Ang HA ay nagpapatakbo ng malware sa mga secure na kapaligiran, nagtatala ng mga tawag sa system, gumawa ng mga file at trapiko sa Internet, at binibigyan ka ng lahat ng mga resultang ito para sa bawat sample na sinusuri nito. Sa ganitong paraan, hindi mo kailangang mag-aksaya ng iyong oras at lakas sa pagsubok na alamin ang nakalilitong code sa iyong sarili, ngunit maaari mong agad na maunawaan ang lahat ng mga intensyon ng mga hacker.

Ang mga halimbawa ng HA na nakakuha ng aking pansin ay gumagamit ng alinman sa naka-code na JavaScript o Visual Basic for Applications (VBA) na mga script na naka-embed bilang mga macro sa Word o Excel na mga dokumento at naka-attach sa mga phishing na email. Kapag binuksan, ang mga macro na ito ay magsisimula ng PowerShell session sa computer ng biktima. Karaniwang nagpapadala ang mga hacker ng Base64 na naka-encode na stream ng mga command sa PowerShell. Ginagawa ang lahat para gawin ang pag-atake na mahirap matukoy ng mga web filter at antivirus software na tumutugon sa ilang partikular na keyword.
Sa kabutihang palad, ang HA ay awtomatikong nagde-decode ng Base64 at ipinapakita ang lahat sa isang nababasang format kaagad. Sa pangkalahatan, hindi mo kailangang tumuon sa kung paano gumagana ang mga script na ito dahil makikita mo ang buong output ng command para sa mga tumatakbong proseso sa kaukulang seksyon ng HA. Tingnan ang halimbawa sa ibaba:

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Hinaharang ng Hybrid analysis ang mga command na naka-encode ng Base64 na ipinadala sa PowerShell:

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

...at pagkatapos ay i-decode ang mga ito para sa iyo. #magically

Π’ Nakaraang post Gumawa ako ng sarili kong bahagyang na-obfuscated na lalagyan ng JavaScript para magpatakbo ng PowerShell session. Ang aking script, tulad ng maraming malware na nakabatay sa PowerShell, pagkatapos ay dina-download ang sumusunod na PowerShell script mula sa isang malayong website. Pagkatapos, bilang halimbawa, nag-load ako ng hindi nakakapinsalang PS na nag-print ng mensahe sa screen. Ngunit nagbabago ang mga panahon, at ngayon ay ipinapanukala kong gawing kumplikado ang sitwasyon.

PowerShell Empire at Reverse Shell

Isa sa mga layunin ng pagsasanay na ito ay ipakita kung paano (medyo) madaling ma-bypass ng isang hacker ang mga klasikong panlaban sa perimeter at mga antivirus. Kung ang isang IT blogger na walang kasanayan sa programming, tulad ko, ay magagawa ito sa loob ng ilang gabi lumikha ng hindi matukoy na malware (ganap na hindi natukoy, FUD), isipin ang mga kakayahan ng isang batang hacker na interesado dito!

At kung isa kang IT security provider, ngunit hindi alam ng iyong manager ang mga posibleng kahihinatnan ng mga banta na ito, ipakita lamang sa kanya ang artikulong ito.

Ang mga hacker ay nangangarap na makakuha ng direktang access sa laptop o server ng biktima. Napakasimpleng gawin nito: ang kailangan lang gawin ng hacker ay kumuha ng ilang kumpidensyal na file sa laptop ng CEO.

Kahit papaano ako na ako wrote tungkol sa PowerShell Empire post-production runtime. Tandaan natin kung ano ito.

Ito ay mahalagang tool sa pagsubok ng penetration na batay sa PowerShell na, bukod sa maraming iba pang feature, ay nagbibigay-daan sa iyong madaling magpatakbo ng reverse shell. Maaari mo itong pag-aralan nang mas detalyado sa PSE home site.

Gumawa tayo ng isang maliit na eksperimento. Nag-set up ako ng ligtas na kapaligiran sa pagsubok ng malware sa cloud ng Amazon Web Services. Maaari mong sundin ang aking halimbawa upang mabilis at ligtas na magpakita ng gumaganang halimbawa ng kahinaang ito (at hindi matanggal sa trabaho dahil sa pagpapatakbo ng mga virus sa loob ng perimeter ng enterprise).

Kung ilulunsad mo ang PowerShell Empire console, makakakita ka ng ganito:

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Una mong simulan ang proseso ng tagapakinig sa iyong hacker computer. Ipasok ang command na "tagapakinig", at tukuyin ang IP address ng iyong system gamit ang "set Host". Pagkatapos ay simulan ang proseso ng tagapakinig gamit ang "execute" command (sa ibaba). Kaya, sa iyong bahagi, magsisimula kang maghintay para sa isang koneksyon sa network mula sa remote shell:

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Para sa kabilang panig, kakailanganin mong bumuo ng isang code ng ahente sa pamamagitan ng pagpasok ng command na "launcher" (tingnan sa ibaba). Bubuo ito ng PowerShell code para sa remote na ahente. Tandaan na ito ay naka-encode sa Base64, at kumakatawan sa ikalawang yugto ng payload. Sa madaling salita, hihilahin na ngayon ng aking JavaScript code ang ahente na ito para patakbuhin ang PowerShell sa halip na mag-print ng text sa screen nang hindi nakapipinsala, at kumonekta sa aming remote na PSE server upang magpatakbo ng reverse shell.

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts
Ang magic ng reverse shell. Ikokonekta ang naka-code na PowerShell command na ito sa aking tagapakinig at maglulunsad ng remote na shell.

Upang ipakita sa iyo ang eksperimentong ito, kinuha ko ang papel ng inosenteng biktima at binuksan ang Evil.doc, sa gayon ay inilunsad ang aming JavaScript. Tandaan ang unang bahagi? Na-configure ang PowerShell upang pigilan ang pag-pop up ng window nito, kaya hindi mapapansin ng biktima ang anumang kakaiba. Gayunpaman, kung bubuksan mo ang Windows Task Manager, makakakita ka ng background na proseso ng PowerShell na hindi magsasanhi ng anumang alarma sa karamihan ng mga tao. Dahil ito ay regular na PowerShell lamang, hindi ba?

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Ngayon kapag nagpatakbo ka ng Evil.doc, isang nakatagong proseso sa background ang magkokonekta sa server na nagpapatakbo ng PowerShell Empire. Isinuot ang aking puting pentester hacker na sumbrero, bumalik ako sa PowerShell Empire console at ngayon ay nakakita ng mensahe na ang aking remote na ahente ay aktibo.

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Pagkatapos ay ipinasok ko ang command na "interact" upang magbukas ng shell sa PSE - at naroon ako! Sa madaling salita, na-hack ko ang Taco server na minsan kong na-set up.

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts

Ang ipinakita ko lang ay hindi nangangailangan ng ganoong karaming trabaho sa iyong bahagi. Madali mong magagawa ang lahat ng ito sa iyong lunch break sa loob ng isa o dalawang oras upang mapabuti ang iyong kaalaman sa seguridad ng impormasyon. Ito rin ay isang mahusay na paraan upang maunawaan kung paano nilalalampasan ng mga hacker ang iyong panlabas na perimeter ng seguridad at nakapasok sa loob ng iyong mga system.

Ang mga tagapamahala ng IT na nag-iisip na nakagawa sila ng hindi malalampasan na depensa laban sa anumang panghihimasok ay malamang na masusumpungan din ito na pang-edukasyon - iyon ay, kung maaari mong kumbinsihin silang umupo sa iyo ng sapat na katagalan.

Balik tayo sa realidad

Tulad ng inaasahan ko, ang isang tunay na hack, na hindi nakikita ng karaniwang gumagamit, ay isang pagkakaiba-iba lamang ng inilarawan ko. Upang mangolekta ng materyal para sa susunod na publikasyon, nagsimula akong maghanap ng sample sa HA na gumagana sa parehong paraan tulad ng aking naimbentong halimbawa. At hindi ko na kailangang hanapin ito nang matagal - maraming mga pagpipilian para sa isang katulad na diskarte sa pag-atake sa site.

Ang malware na nakita ko sa HA ay isang VBA script na naka-embed sa isang Word document. Iyon ay, hindi ko na kailangan pang pekein ang extension ng doc, ang malware na ito ay talagang isang normal na hitsura ng Microsoft Word na dokumento. Kung interesado ka, pinili ko itong sample na tinatawag rfq.doc.

Mabilis kong nalaman na madalas ay hindi mo direktang makuha ang mga nakakahamak na VBA script mula sa isang dokumento. Ini-compress at itinago ng mga hacker ang mga ito para hindi makita sa mga built-in na macro tool ng Word. Kakailanganin mo ng isang espesyal na tool upang alisin ito. Buti na lang may nakita akong scanner OfficeMalScanner Frank Baldwin. Salamat, Frank.

Gamit ang tool na ito, na-pull out ko ang napaka-obfuscated na VBA code. Ito ay mukhang ganito:

The Adventures of Elusive Malware, Part II: Secretive VBA Scripts
Ang obfuscation ay ginawa ng mga propesyonal sa kanilang larangan. Ako ay impressed!

Ang mga attacker ay talagang mahusay sa pag-obfuscating ng code, hindi tulad ng aking mga pagsisikap sa paglikha ng Evil.doc. Okay, sa susunod na bahagi ay aalisin namin ang aming mga VBA debugger, sumisid ng kaunti sa code na ito at ihambing ang aming pagsusuri sa mga resulta ng HA.

Pinagmulan: www.habr.com

Magdagdag ng komento