Seqrite Labs APT-Team heeft onlangs een campagne ontdekt die gericht is op Tsjechië. De campagne richt zich op overheids- en militaire functionarissen met diverse lokmiddelen die de relatie tussen de NAVO en Tsjechië ondermijnen. malware ecosysteem is betrokken bij deze campagne, beginnend bij de loader tot een bekend Command-and-Control-framework bekend als HavocC2 en Freeze geprogrammeerd in Rust, een lucratieve,gecompileerde programmeertaal die op grote schaal door kwaadwillende actoren in het wild wordt gebruikt.
Deze blog onderzoekt de verfijning en technische details van de campagne die we tijdens onze analyse tegenkwamen. We zullen de verschillende fasen van deze campagne onderzoeken, te beginnen met een diepgaande analyse van de decoy-documenten en vervolgens de schadelijke batch- en LNK-payloads, die de rust-loader verder helpen bij het injecteren van schadelijke DLL's. We sluiten af met een laatste overzicht van de campagne.
Eerste bevindingen
Op 4 augustus 2024 ontdekte ons team een kwaadaardig ZIP-bestand dat op verschillende websites zoals VirusTotal was verschenen en daar als eerste infectiebron werd gebruikt. Het bestand bevatte verschillende lokbestanden met de extensies PDF en LNK. Hetzelfde bestand werd de volgende dag al door andere cybersecurityonderzoekers gevonden.
Het ZIP-bestand bevat een kwaadaardig LNK-bestand met de naam " The importance of and outlook for the Czech Republic in NATO.pdf.lnk ", dat verantwoordelijk is voor het uitvoeren van een ander kwaadaardig batchscript met de naam " AdobeAcrobatReader.bat ". Dit script genereert het lokdocument " Postup_zmeny_hesla_z_IMO.pdf " en hernoemt vervolgens een vermomd PDF-bestand met de naam " NatoDoc.PDF " naar een uitvoerbaar bestand. Dit bestand wordt bij uitvoering naar de opstartmap gekopieerd en dient als mechanisme voor de persistentie van de kwaadaardige payload. Laten we de twee lokdocumenten eens nader bekijken.
Kijkend naar het afleidingsdocument – ik
Bij het openen van het eerste document, Postup_zmeny_hesla_z_IMO.pdf, zien we dat de titel in het Tsjechisch is geschreven, wat in het Engels vertaald kan worden als "Wachtwoordwijziging van het interne netwerk van het Ministerie van Defensie (IMO)".


De eerste pagina van de lokvogel beschrijft de stappen om naar de URL hxxps://x.army.cz te navigeren, waar je je wachtwoord kunt wijzigen. De afbeelding op de andere pagina beschrijft manieren om wachtwoorden te wijzigen door je aan specifieke richtlijnen te houden, zoals de juiste wachtwoordlengte en andere artefacten, zoals het vermijden van wachtwoorden die makkelijk te raden zijn.

De laatste pagina van dit afleidingsdocument bevat een bericht dat vertaald kan worden als "Informatie voor lokale beheerders: Om toegang te krijgen tot de pagina hxxps://x[.]army[.]cz, moet een uitzondering worden ingesteld", met handleidingen voor het instellen van een correct proxynetwerk. Dit afleidingsdocument dient als lokkertje voor het doelwit om onmiddellijk zijn wachtwoord te wijzigen en biedt richtlijnen hiervoor, wat volledig irrelevant is voor de naam van het oorspronkelijke ZIP-bestand.
Kijken naar het lokdocument – II
Net als het vorige document hebben we nog een ander lokdocument: Het belang van en de vooruitzichten voor Tsjechië binnen de NAVO. Dit document noemt duidelijk verschillende redenen voor het belang van de betrekkingen tussen Tsjechië en de NAVO, evenals diverse aspecten van geopolitieke voordelen en geschiedenis.


De volgende pagina vermeldt de huidige veiligheidskwesties en bespreekt de versterking van de relaties tussen alle NAVO-landen ten behoeve van welvaart, groei en modernisering. Dit document bespreekt de relaties en doelstellingen tussen de NAVO en Tsjechië, wat dit document relevant maakt voor de naam van het oorspronkelijke ZIP-bestand.
Infectieketen

Technische Analyse
We zullen de analyse opsplitsen in vier verschillende delen.
Fase 1 – Kwaadaardige batch- en LNK-script.
Het ZIP-bestand bevat een schadelijk LNK-bestand genaamd 1.The importance of and outlook for the Czech Republic in NATO.pdf.lnk. Als we de inhoud ervan bekijken, zien we dat het enige doel ervan is om een ander schadelijk batch-script te genereren, genaamd AdobeAcrobatReader.bat.

Na analyse van het schadelijke batch-script ontdekten we het volgende:
① In eerste instantie genereert het batchscript het eerste lokdocument op het scherm.
② Vervolgens worden de attributen gewijzigd voor het tweede lokdocument en de gemaskeerde PDF, die een uitvoerbaar bestand is.
③ Vervolgens wordt de vermomde PDF hernoemd naar AdobeReader.exe en met behulp van xcopy naar de opstartmap gekopieerd om te worden uitgevoerd.
④ Ten slotte worden de bestandseigenschappen aangepast om de snelkoppeling en de payloadbestanden als verborgen, alleen-lezen en systeembestanden in te stellen. Dit zorgt ervoor dat het kwaadaardige LNK-bestand en de bijbehorende payload verborgen blijven voor de gemiddelde gebruiker en beschermd zijn tegen ongeautoriseerde wijziging of verwijdering.

In het volgende gedeelte bekijken we de schadelijke payload. Vanaf deze eerste fase is het duidelijk dat het batchscript en de LNK verantwoordelijk waren voor de implementatie van de payload.
Fase 2 – Kwaadaardige roestlader.
Er bevindt zich een schadelijke x64 uitvoerbare payload in het ZIP-bestand.

Tijdens de eerste analyse ontdekten we dat de payload in feite een op Rust gebaseerde loader is, genaamd Freeze . Onderzoekers van Optiv hebben deze ontwijkende toolkit ontwikkeld voor red-team-emulatieoefeningen, zoals het omzeilen van EDR's met behulp van opgeschorte processen, directe systeemaanroepen, enzovoort. Vervolgens hebben we het bestand naar IDA, een binaire analysetool, overgezet voor verdere reverse engineering en het extraheren van de payload.


Als we naar de code kijken, zien we dat de loader ETW Patching, omdat dit een van de functies is die Freeze ondersteunt.

Vervolgens start de loader het proces notepad.exe in een onderbroken modus en ontkoppelt vervolgens de DLL door een nieuwe kopie van NTDLL uit het geheugen te laden en de gekoppelde .text-sectie te vervangen door de nieuwe kopie van de .text-sectie van de ontkoppelde NTDLL.

Nadat de verbinding is verbroken, wordt de ETW opnieuw gepatcht.

Tot slot wordt de gecomprimeerde en gecodeerde shellcode verkregen via Base64-decodering en LZMA-decompressie.

Nadat de shellcode is gedecodeerd, worden crypto-algoritmen zoals AES/RC4 gebruikt om deze te decoderen. Zodra de shellcode is gedecodeerd met behulp van NTAPI's, wordt deze in het geheugen geschreven.

Vervolgens hebben we een breekpunt op de NTAPI's geplaatst om de shellcode uit de loader te halen. De shellcode bleek een schadelijke Havoc DLL te zijn, die we in de volgende sectie zullen bekijken.
Fase 3 – Kwaadaardige Havoc-demon.
Uit een eerste analyse van dit DLL-bestand blijkt dat het om Demon DLL gaat, een payload die deel uitmaakt van het post-exploitatie-framework genaamd Havoc.

Na analyse hebben we vastgesteld dat de DLL-payload vier belangrijke subroutines bevat (voor het gemak hernoemd op IDA). Deze subroutines zijn verantwoordelijk voor het faciliteren van de activiteiten van de payload, namelijk:
① DemonInit.
② DemonConfig.
③ DemonMetadata.
④ DemonRoutine.

Laten we nu dieper ingaan op elke functie en enkele belangrijke aspecten ervan bekijken.

De functie DemonInit is verantwoordelijk voor het laden van modules zoals ntdll.dll en kernel32.dll via PEB (Process-Environment Block). Vervolgens lost deze functie de functies op uit deze geladen modules en roept ten slotte een andere subroutine aan, DemonConfig.



Geëxtraheerde configuratie:
Paaien:
– x86: C:\Windows\SysWOW64\notepad.exe
– x64: C:\Windows\System32\notepad.exe
Methode: POST
Host[Commando & Controle] : 206.188.197.113
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, zoals Gecko) Chrome/96.0.4664.110 Safari/537.36
De functie DemonConfig analyseert de configuratie die is opgeslagen in de sectie .data. Na analyse wordt deze verder gebruikt in het programma. De functie DemonConfig bevat tevens meerdere functies die gericht zijn op het analyseren van configuratiegegevens.


De functie DemonMetadata genereert unieke metadata voor de demon-payload, die artefacten bevat zoals demon-ID, gebruikersnaam, procesarchitectuur, besturingssysteeminformatie, domeininformatie en soortgelijke gegevens.

De laatste DemonRoutine-functie maakt gebruik van diverse andere zaken, zoals het verbinden met de Command and Control Server, wat gebeurt via de PackageTransmitNow-functie, die vervolgens de gegevens decodeert met AES-codering. Daarna gebruikt de functie de CommandDispatcher-routine om de taakuitvoering uit te voeren en ten slotte gebruikt de functie Sleep Obfuscation, waarbij verschillende technieken zoals Ekko, Zilean en WaitForSingleObjectEx worden toegepast.
Jacht en infrastructuur
Na analyse van de loader-payload vonden we een uniek PDB-pad gekoppeld aan het binaire bestand C:\TOOL\Freeze.rs-main\target\release\AdobeReader\target\release\deps\AdobeReader.pdb, wat ons hielp bij het zoeken naar vergelijkbare loaders die door dezelfde bedreigingsactor werden gebruikt. Na het zoeken vonden we dus twee vergelijkbare samples.
- Bestandsnaam: vihu.exe
- PDB-pad: C:\TOOL\Freeze.rs-main\target\release\vihu\target\release\deps\vihu.pdb
- Tijdstempel: 2024-07-24
- Bestandsnaam: gnobya.exe
- PDB-pad: C:\TOOL\Freeze.rs-main\target\release\gnobya\target\release\deps\gnobya.pdb
- Tijdstempel: 2024-05-22
Nadat we de shellcode uit beide loaders hadden geëxtraheerd, bleek de geëxtraheerde shellcode een vergelijkbaar demon.x64.dll-bestand te zijn als in het eerste bestand, vihu.exe. De shellcode uit het tweede bestand bleek echter een URL te zijn, waarmee een aangepaste Sliver Stager gedownload kon worden . De C2-server en de User-Agent die in deze Havoc Demon werden gevonden, zijn:
C2: 195.123.225.88
Gebruikersagent: Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_5 zoals Mac OS X) AppleWebKit/531.2 (KHTML, zoals Gecko) CriOS/52.0.879.0 Mobile/29C842 Safari/531.2
Het ZIP-archief is ingediend vanuit Tsjechië, terwijl de laatste twee payloads die via het PDB-pad zijn gevonden, zijn geüpload vanuit Rusland. De informatieve details van Havoc C2:
| IP | ASN | Geolocation |
| 206.188.197.113 | AS399629 (BL Networks) | Nederland |
| 195.123.225.88 | AS59729 (Green Floid LLC) | Bulgarije |
"Gezien het veelvuldige gebruik van post-exploitatie-frameworks zoals Havoc, Sliver en Freeze, en rekening houdend met de aanhoudende geopolitieke spanningen met betrekking tot de Russische belangen in de Tsjechische regio, schatten we met een gemiddelde mate van zekerheid dat de dreigingsacteur mogelijk van Russische oorsprong is ."
Conclusie
We hebben ontdekt dat een dreigingsactor het Tsjechische leger aanvalt met behulp van een lokaas met een NAVO-thema. Ze zijn sterk afhankelijk van open-source aanvalstools, variërend van de Rust-gebaseerde loader tot de uiteindelijke DLL-payload. Door de algehele campagne en TTP's van de dreigingsactor te analyseren, kunnen we concluderen dat de dreigingsactor enkele maanden geleden, in mei 2024, is begonnen met aanvallen.
Seqrite Bescherming
- FreezeL
- Verwoesting.S33863897
- CRCampaign.49004.GC
IOCs
| Hashes[SHA-256] | Bestandsnaam | |
| 9549d3d2b8e8b4e8f163a8b9fa3b02b8a28d78e4b583baccb6210ef267559c6e | CZ_leger_NAVO_samenwerking.zip | |
| 436994d4a5c8d54acb2b521d0847d77e6af6c2c0e40468248b1dd019c6dafa84 | 1. Het belang en de vooruitzichten voor Tsjechië in de NAVO.pdf.lnk | |
| ace33243994a9da0797601bdd4191e25967a1da2644f0d0b530e26c71854d5d9 | AdobeAcrobatReader.bat | |
| a05d053174b52a9b158a5ec841c1a7633b9368c4ac2da371a11a9364f8a8dc60 | NatoDoc.pdf | |
| 1dbcade04333b9dc81ba0746bc604d12489da49b9b65fcb5b1f61d139dc5949c | vihu.exe | |
| 38da8d1576bdd0a03e649e8e6543594b35a423aa5b0a0c4081fc477c8e487e09 | gnobya.exe | |
| b29ed89e0428ba476459adabb5630c8d29f7fee5905c5de10d792fe3a02e52a6 | x64.demon.dll | |
| 6e0d12cd0252599fd1dec7aa460cae7a12a1b2e322b6664e64c773c23627d1b4 | x64.demon.dll | |
| ed6775184051ef36c3049e24167471ab42bd4301e99631c8423d4d753cdad455 | Inter-Regular.woff | |
| PDB-paden | ||
| · C:\TOOL\Freeze.rs-main\target\release\vihu\target\release\deps\vihu.pdb | ||
| · C:\TOOL\Freeze.rs-main\target\release\gnobya\target\release\deps\gnobya.pdb | ||
| · C:\TOOL\Freeze.rs-main\doel\release\AdobeReader\doel\release\deps\AdobeReader.pdb | ||
| IP-adressen | ||
| · hxxps://206.188.197.113/ | ||
| · hxxps://195.123.225.88/ | ||
| Hashes [SHA-256] | Bestandsnaam [Lure-document] | |
| fda71a7de6d473826465bb83210107501e66a5d96e533772444b3b24806286fd | Het belang en de vooruitzichten voor Tsjechië in de NAVO.pdf | |
| 8820e0c249305ffa3d38e72a7f27c0e2195bc739d08f5d270884be6237eea500 | Postup_zmeny_hesla_z_IMO.pdf | |
MITRE TTP's
| Tactiek | Techniek-ID | Naam |
| Eerste toegang | T1566.001 | Phishing: Spear phishing Bijlage
|
| Uitvoering | T1204.002
T1059.005 |
Uitvoering door gebruiker: kwaadaardig bestand
Opdracht- en scriptinterpreter: Visual Basic |
| Volharding | T1547.001 | Register Run-sleutels / Opstartmap |
| verdediging ontduiking | T1562.001
T1562.006 T1055 T1055.002 T1140 T1027.007 |
Afweer tegengaan: Tools uitschakelen of wijzigen
Indicatorblokkering. Procesinjectie. Procesinjectie: draagbare uitvoerbare injectie Bestanden of informatie decoderen/decoderen Versluierde bestanden of informatie: dynamische API-resolutie |
| De reis van mijn leven | T1033 | Systeemeigenaar/gebruiker detectie |
auteurs
- Sathwik Ram Prakki
- Subhajeet Singha



