ProHoster > blog > internetnieuws > Opkomst mislukt: laten we AgentTesla blootstellen aan schoon water. Deel 1
Opkomst mislukt: laten we AgentTesla blootstellen aan schoon water. Deel 1
Onlangs nam een Europese fabrikant van elektrische installatieapparatuur contact op met Group-IB - zijn medewerker ontving een verdachte brief met een kwaadaardige bijlage per post. Ilja Pomerantsev, een malware-analysespecialist bij CERT Group-IB, voerde een gedetailleerde analyse uit van dit bestand, ontdekte daar de AgentTesla-spyware en vertelde wat hij van dergelijke malware kon verwachten en hoe gevaarlijk deze is.
Met dit bericht openen we een reeks artikelen over het analyseren van dergelijke potentieel gevaarlijke bestanden, en we wachten op de meest nieuwsgierigen op 5 december voor een gratis interactief webinar over dit onderwerp “Malware-analyse: analyse van echte gevallen”. Alle details zijn onder de snit.
Distributiemechanisme
We weten dat de malware de machine van het slachtoffer heeft bereikt via phishing-e-mails. De ontvanger van de brief was waarschijnlijk BCC-gebaseerd.
Uit analyse van de headers blijkt dat de afzender van de brief vervalst was. In feite is de brief achtergelaten vps56[.]oneworldhosting[.]com.
De e-mailbijlage bevat een WinRar-archief qoute_jpeg56a.r15 met een kwaadaardig uitvoerbaar bestand QOUTE_JPEG56A.exe binnenkant.
Malware-ecosysteem
Laten we nu eens kijken hoe het ecosysteem van de onderzochte malware eruit ziet. Het onderstaande diagram toont de structuur en de interactierichtingen van de componenten.
Laten we nu elk van de malwarecomponenten in meer detail bekijken.
Lader
Origineel bestand QOUTE_JPEG56A.exe is een samengesteld AutoIt v3 script.
Om het originele script te verdoezelen, een obfuscator met soortgelijke PELock AutoIT-Obfuscator kenmerken.
Deobfuscatie wordt in drie fasen uitgevoerd:
Verduistering verwijderen Voor als
De eerste stap is het herstellen van de controlestroom van het script. Control Flow Flattening is een van de meest gebruikelijke manieren om binaire code van applicaties tegen analyse te beschermen. Verwarrende transformaties vergroten de complexiteit van het extraheren en herkennen van algoritmen en datastructuren dramatisch.
Rij herstel
Er worden twee functies gebruikt om tekenreeksen te coderen:
gdorizabegkvfca - Voert Base64-achtige decodering uit
xgacyukcyzxz - eenvoudige byte-byte XOR van de eerste string met de lengte van de tweede
Verduistering verwijderen BinaryToString и Uitvoeren
De hoofdbelasting wordt in verdeelde vorm in de directory opgeslagen fonts bronsecties van het bestand.
De lijmvolgorde is als volgt: TIEQHCXWFG, IME, SPDGUHIMPV, KQJMWQQAQTKTFXTUOSW, AOCCHKRWWSKWO, JSHMSJPS, NHHWXJBMTTSPXVN, BFUTIFWWXVE, HWJHO, AVZOUMVFRDWFLWU.
De WinAPI-functie wordt gebruikt om de geëxtraheerde gegevens te decoderen CryptDecrypten de op basis van de waarde gegenereerde sessiesleutel wordt als sleutel gebruikt fZgFiZlJDxvuWatFRgRXZqmNCIyQgMYc.
Het gedecodeerde uitvoerbare bestand wordt naar de functie-invoer verzonden Voer PE uit, die uitvoert ProcesInject в RegAsm.exe gebruik van ingebouwd ShellCode (ook gekend als Voer PE ShellCode uit). Het auteurschap behoort toe aan de gebruiker van het Spaanse forum indetecteerbaar[.]net onder de bijnaam Wardow.
Het is ook de moeite waard om op te merken dat er in een van de discussies op dit forum een obfuscator voor staat AutoIt met vergelijkbare eigenschappen geïdentificeerd tijdens monsteranalyse.
Zichzelf ShellCode vrij eenvoudig en trekt de aandacht die alleen is geleend van de hackergroep AnunakCarbanak. Hashing-functie voor API-aanroepen.
Ook zijn wij op de hoogte van use cases Franse Shellcode verschillende versies.
Naast de beschreven functionaliteit hebben we ook inactieve functies geïdentificeerd:
Handmatige procesbeëindiging blokkeren in Taakbeheer
Een onderliggend proces opnieuw starten wanneer het wordt beëindigd
Omzeil UAC
De payload opslaan in een bestand
Demonstratie van modale vensters
Wachten tot de positie van de muiscursor verandert
AntiVM en AntiSandbox
Zelfvernietiging
Nuttige lading uit het netwerk pompen
We weten dat een dergelijke functionaliteit typisch is voor de beschermer CypherIT, wat blijkbaar de bootloader in kwestie is.
Hoofdmodule van software
Vervolgens zullen we de hoofdmodule van de malware kort beschrijven en er in het tweede artikel dieper op ingaan. In dit geval is het een applicatie op . NET.
Tijdens de analyse ontdekten we dat er een obfuscator werd gebruikt ConfuserEX.
IELibrary.dll
De bibliotheek wordt opgeslagen als hoofdmodulebron en is een bekende plug-in voor Agent Tesla, dat functionaliteit biedt voor het extraheren van verschillende informatie uit Internet Explorer en Edge-browsers.
Agent Tesla is modulaire spionagesoftware die wordt gedistribueerd met behulp van een malware-as-a-service-model onder het mom van een legitiem keylogger-product. Agent Tesla kan gebruikersgegevens uit browsers, e-mailclients en FTP-clients extraheren en naar de server verzenden naar aanvallers, klembordgegevens opnemen en het scherm van het apparaat vastleggen. Op het moment van analyse was de officiële website van de ontwikkelaars niet beschikbaar.
Het startpunt is de functie GetSavedPasswords klasse InternetExplorer.
Over het algemeen is de uitvoering van code lineair en biedt deze geen enkele bescherming tegen analyse. Alleen de ongerealiseerde functie verdient aandacht Ontvang opgeslagen cookies. Blijkbaar zou de functionaliteit van de plug-in worden uitgebreid, maar dit is nooit gebeurd.
De bootloader aan het systeem koppelen
Laten we bestuderen hoe de bootloader aan het systeem is gekoppeld. Het onderzochte exemplaar verankert niet, maar bij soortgelijke gebeurtenissen gebeurt het volgens het volgende schema:
In map C:Gebruikersopenbaar schrift is gemaakt Visual Basic
Scriptvoorbeeld:
De inhoud van het bootloaderbestand wordt opgevuld met een null-teken en opgeslagen in de map %Temp%
Er wordt een autorun-sleutel gemaakt in het register voor het scriptbestand HKCUSoftwareMicrosoftWindowsCurrentVersionRun
Op basis van de resultaten van het eerste deel van de analyse konden we dus de namen van de families van alle componenten van de onderzochte malware vaststellen, het infectiepatroon analyseren en ook objecten verkrijgen voor het schrijven van handtekeningen. We zullen onze analyse van dit object voortzetten in het volgende artikel, waar we de hoofdmodule in meer detail zullen bekijken Agent Tesla. Mis niet!
Trouwens, op 5 december nodigen we alle lezers uit voor een gratis interactief webinar over het onderwerp “Analyse van malware: analyse van echte gevallen”, waar de auteur van dit artikel, een CERT-GIB-specialist, online de eerste fase van malware-analyse - semi-automatisch uitpakken van monsters aan de hand van het voorbeeld van drie echte mini-cases uit de praktijk, en u kunt deelnemen aan de analyse. Het webinar is geschikt voor specialisten die al ervaring hebben met het analyseren van kwaadaardige bestanden. Registratie vindt uitsluitend plaats via zakelijke e-mail: зарегистрируйтесь. Ik wacht op jou!