In de vorige blogpost hebben we gekeken naar hoe AsyncRAT zich bewoog binnen onze computer toen wij ons bewust lieten infecteren. We zagen dat de malware een verdacht bestand aanmaakte, met een PowerShell-script het aanwezige antivirusproduct probeerde te misleiden en probeerde te verbinden met een specifiek adres op het internet. In deze blogpost gaan we kijken naar het gedrag van ResolverRAT.
Wanneer we ons laten infecteren door ResolverRAT zien we even niets gebeuren. Ook is niet visueel zichtbaar dat er een programma wordt gestart. Alsof het even wacht en rondkijkt of het veilig is om te gaan bewegen. Vervolgens is achter de schermen te zien dat de rat het legitieme Windows-programma csc.exe uitvoert. Dit programma is de Visual C# Command Line Compiler. C# is een veelgebruikte programmeertaal om programma's mee te schrijven voor het Windows-besturingssysteem.
Compileren
Het proces waarbij programmacode (menselijk leesbaar) wordt omgezet naar iets wat een computer kan lezen en uitvoeren heet compileren. Het is goed mogelijk dat de rat tijdens het uitvoeren van deze malafide software aan de hand van in zichzelf verstopte programmacode een nieuw programma schrijft op de computer, dat vervolgens uitgevoerd kan worden.
Bestanden die vanaf het internet zijn gedownload, hebben veelal een 'Mark of the Web', waardoor de computer weet dat hij extra moet opletten bij het uitvoeren van zo'n bestand. Het komt immers van het internet, waar ook kwaadwillenden actief zijn. Door een nieuw programma te bouwen op de computer van het slachtoffer zal voor dit nieuwe kwaadaardige programma niet lijken alsof het van het internet afkomstig is. Daarmee oogt het weer een stukje minder verdacht.
Opstartlijstje
Maar hoe wordt dit nieuwe programma dan geactiveerd? Het is niet alsof het slachtoffer daar dan ook meteen op klikt, toch? Het slachtoffer hoeft namelijk niet eens te weten waar dat nieuwe programma verstopt zit op de computer of welke naam het heeft gekregen. Dit vertelt de aanvaller echter wel aan de computer zelf door in het opstartlijstje een extra regel toe te voegen waarin staat dat iedere keer wanneer de gebruiker inlogt, ook dit nieuwe programma opgestart moet worden. Zo zorgt de kwaadwillende ervoor dat de computer geïnfecteerd blijft, ook als het originele bestand waarmee de infectie begon wordt verwijderd.
Kloppen
Als we naar het internetverkeer van en naar de computer kijken wanneer de malware actief is, zien we ook iets bijzonders. Ten eerste probeert de malware verbinding te zoeken met niet één maar twee verschillende plekken op het internet. Eén locatie is geregistreerd in Vietnam en de andere in Roemenië. Stel dat één van deze locaties wordt geblokkeerd of niet meer beschikbaar is, dan heeft de aanvaller nog een back-uplocatie ingebouwd om de aanval voort te zetten.
Op welke deurtjes de aanvaller klopt bij deze twee locaties op het internet is ook bijzonder. Repetitief, in precies dezelfde volgorde: eerst drie keer op een hoog poortnummer, waarbij het nummer telkens één cijfer hoger is. Eerst 1, dan 2, dan 3. Daarna op een poortnummer waarvan is afgesproken dat het wordt gebruikt voor communicatie met een specifiek type apparaten.
Poort naar operationele technologie
Dat een stukje malware aanklopt bij meerdere deurtjes is niet vreemd. Aanvallers wisselen vaak van locaties op het internet om detectie en blokkades te voorkomen. Het is daarom handig om een zekere flexibiliteit in malware in te bouwen.
Dat deurtje waar de malware aanklopt is wel bijzonder. Het betreft een poort die gebruikt wordt voor communicatie met operationele technologie (ICS/SCADA), zoals systemen binnen het stroomnetwerk en fabrieken. Volgens openbare bronnen is ResolverRAT aangetroffen binnen de zorgsector en de farmaceutische industrie. Je weet wel, waar ze medicijnen maken: in fabrieken...
Hmm...
Iets om over na te denken tijdens de koffiepauze.
Deze blogreeks neemt even een pauze. Misschien tot na de zomer!