Meestal is het bestrijden van malware een verloren spel. Malware criminelen creëren hun code, distribueren payloads naar slachtoffers via verschillende methoden, en tegen de tijd dat beveiligingsbedrijven hun achterstand inhalen, brengen aanvallers kleine wijzigingen aan in hun code om snel hun voordeel in geheimhouding te herwinnen.
Het is zo geweest sinds eind jaren 80, toen malware voor het eerst op het toneel verscheen, en ondanks de beweringen van de meeste beveiligingsfirma's, zal het in de nabije toekomst zo blijven.
Af en toe krijgen we goed nieuws van veiligheidsonderzoekers of wetshandhavingsinstanties. Malware schrijvers kunnen een foutje maken en worden gearresteerd, of grootschalige gecoördineerde inspanningen slagen erin grotere botnets neer te halen.
Maar dit lukt helaas niet altijd. Sommige cybercriminelen wonen ofwel in landen die hun burgers niet uitleveren of hebben een gedegen kennis van wat ze doen.
Emotet Bende
Emotet is een van de bendes die beide vakjes aanvinken. Emotet, dat vermoedelijk opereert vanuit het grondgebied van de voormalige Sovjetstaten, is ook een van de meest bekwame malware groepen van dit moment, omdat het het infect-and-rent-access-programma (Caas) als geen andere groep heeft geperfectioneerd.
De malware, die voor het eerst werd gezien in 2014, evolueerde van een onbelangrijke trojan voor bankieren tot een 'malware-Zwitsers zakmes' dat zodra het slachtoffers infecteert, zich lateraal over hun hele netwerk verspreidt, gevoelige gegevens doorgeeft en toegang verhuurt tot de geïnfecteerde hosts naar andere criminele groepen.
Tegenwoordig maakt Emotet IT-afdelingen bij bedrijven over de hele wereld bang en heeft het de hele cyberbeveiligingsindustrie enorme kopzorgen bezorgd.
Maar onder de motorkap is Emotet slechts een stukje software, net als alle andere malware. Dus Emotet heeft ook foutjes (bugs).
In de cyber beveiligingsindustrie is er een zeer gevaarlijke morele lijn als het gaat om het misbruiken van bugs in malware, een lijn die veel beveiligingsbedrijven niet zullen overschrijden, uit angst dat ze de geïnfecteerde computers per ongeluk zouden kunnen beschadigen.
Er kan echter soms een zeldzame bug verschijnen die zowel veilig is om te misbruiken als verwoestende gevolgen heeft voor de malware zelf.
Een van deze bugs kwam eerder dit jaar aan het licht, ontdekt door James Quinn , een malware-analist die werkt voor Binary Defense .
Het feit dat Quinn de bug ontdekte, was geen ongeluk. De afgelopen jaren is Quinn's primaire taak geweest om op Emotet te jagen en de activiteiten ervan in de gaten te houden, maar ook, als persoonlijke hobby, om het bewustzijn te vergroten over deze bedreiging van de Cryptolaemus-groep.
Tijdens het doorzoeken van de dagelijkse Emotet-updates in februari, zag Quinn een verandering in de Emotet-code - in een van de recente payloads was het Emotet-botnet massaal aan het spammen op internet.
De verandering zat in het "persistentie mechanisme" van Emotet, het deel van de code waarmee de malware het opnieuw opstarten van de pc kan overleven. Quinn merkte dat Emotet een Windows-registersleutel aan het maken was en daarin een XOR-codesleutel opsloeg.
Maar deze registersleutel werd niet alleen gebruikt voor persistentie, legde Quinn uit in een rapport. De sleutel maakte ook deel uit van vele andere codecontroles van Emotet, inclusief de routine vóór infectie.
Met vallen en opstaan en dankzij daaropvolgende Emotet-updates die de werking van het nieuwe persistentie mechanisme verfijnden, was Quinn in staat om een klein PowerShell-script samen te stellen dat gebruik maakte van het registersleutel mechanisme om Emotet zelf te laten crashen.
Het script
Het script, met de slimme naam EmoCrash, heeft de computer van een gebruiker effectief gescand en een correcte, maar verkeerd gevormde registersleutel voor Emotet gegenereerd.
Toen Quinn opzettelijk probeerde een schone computer met Emotet te infecteren, veroorzaakte de verkeerd ingedeelde registersleutel een bufferoverloop in de code van Emotet en crashte de malware, waardoor gebruikers effectief niet geïnfecteerd konden raken.
Wanneer Quinn EmoCrash uitvoerde op computers die al met Emotet waren geïnfecteerd, zou het script de goede registersleutel vervangen door de verkeerd gevormde, en wanneer Emotet de registersleutel opnieuw zou controleren, crashte de malware ook, waardoor geïnfecteerde hosts niet konden communiceren met de Emotet. command-and-control-server.
In feite had Quinn tegelijkertijd een Emotet-vaccin en een kill-switch gecreëerd. Maar de onderzoeker zei dat het beste deel gebeurde na de crashes.
"Er zouden twee crashlogs verschijnen met gebeurtenis-ID 1000 en 1001, die kunnen worden gebruikt om eindpunten met uitgeschakelde en dode Emotet-binaries te identificeren", zei Quinn.
Met andere woorden, als EmoCrash over een netwerk zou worden geïmplementeerd, zou het systeembeheerders in staat kunnen stellen om deze twee loggebeurtenis-ID's te scannen of waarschuwingen in te stellen en onmiddellijk te ontdekken wanneer en of Emotet hun netwerken heeft geïnfecteerd.
EmoCrash
Het 'Binary Defense-team' realiseerde zich al snel dat nieuws over deze ontdekking volledig geheim moest worden gehouden om te voorkomen dat de Emotet-bende de code repareerde, maar ze begrepen dat EmoCrash ook zijn weg naar bedrijven over de hele wereld moest vinden.
Vergeleken met veel van de grote cyber beveiligingsbedrijven van vandaag, die allemaal een decennialange geschiedenis achter de rug hebben, werd 'Binary Defense' opgericht in 2014 en ondanks dat het een van de nieuwkomers in de branche is, heeft het nog niet de invloed en connecties om dit voor elkaar te krijgen zonder dat het nieuws over zijn ontdekking lekte, hetzij per ongeluk, hetzij vanwege een jaloerse rivaal.
Om dit voor elkaar te krijgen, werkte Binary Defense samen met 'Team CYMRU' , een bedrijf met een decennialange geschiedenis van het organiseren van en deelnemen aan het verwijderen van botnets.
Team CYMRU werkte achter de schermen en zorgde ervoor dat EmoCrash in handen kwam van nationale Computer Emergency Response Teams (CERT's), die het vervolgens verspreidden naar de bedrijven in hun respectievelijke jurisdicties.
Team CYMRU
Volgens James Shank, hoofdarchitect voor Team CYMRU, heeft het bedrijf contacten met meer dan 125 nationale en regionale CERT-teams en beheert het ook een mailinglijst waarmee het gevoelige informatie naar meer dan 6000 leden verspreidt. Bovendien leidt Team CYMRU ook een tweewekelijkse groep die zich toelegt op het omgaan met de nieuwste streken van Emotet.
Deze brede en goed georkestreerde inspanning heeft EmoCrash geholpen de afgelopen zes maanden de wereld rond te reizen.
In een telefonisch interview op 14 augustus zei Randy Pargman, senior directeur van Binary Defense, dat de tool met opzet geen telemetriemodule bevatte om bedrijven er niet van te weerhouden deze op hun netwerken te installeren.
Binary Defense weet misschien nooit hoeveel bedrijven EmoCrash hebben geïnstalleerd, maar Pargman zei dat ze veel berichten hebben ontvangen van bedrijven die aanvallen hebben voorkomen of aanhoudende incidenten hebben ontdekt.
Zowel Pargman als Quinn zijn echter van mening dat de tool op zijn minst enige invloed had op de Emotet-operaties, omdat de tool het aantal geïnfecteerde bots dat beschikbaar is voor Emotet-operators heeft verminderd.
Binary Defense gelooft niet dat de Emotet-bende ooit te weten is gekomen over hun tool, maar de bende wist hoogstwaarschijnlijk dat er iets mis was. Sinds februari en de daaropvolgende maanden heeft Emotet verschillende nieuwe versies en wijzigingen in de code doorlopen. Geen van hen heeft het probleem opgelost.
Ofwel per ongeluk of door erachter te komen dat er iets mis was in het persistentie mechanisme veranderde de Emotet-bende uiteindelijk het hele persistentie mechanisme op 6 augustus, precies zes maanden nadat Quinn zijn eerste ontdekking deed.
EmoCrash is misschien voor niemand meer nuttig, maar zes maanden lang hielp dit kleine PowerShell-script organisaties om malware-operaties voor te blijven, een echt zeldzaam verschijnsel op het gebied van cyberbeveiliging van vandaag.
En aangezien het altijd grappig is wanneer beveiligingsonderzoekers malware-operators trollen, probeerde Quinn ook een CVE voor de bufferoverloopbug van Emotet te bemachtigen van MITRE, de organisatie die beveiligingsfouten in softwareprogramma's opspoort.
Helaas weigerde MITRE om een CVE toe te wijzen aan Emotet, waardoor het de eerste malware-soort met een eigen CVE-ID zou zijn geworden.
Bron: binarydefense.com, zdnet.com, team-cymru.com