De werking van en bescherming tegen fileless malware

© PXimport

De werking van en bescherming tegen fileless malware

Geplaatst: 3 januari 2020 - 09:13

Aangepast: 17 november 2022 - 08:59

Tijs Hofmans

In de strijd om systemen te infecteren met malware bedenken criminelen steeds vernuftigere methodes waarmee ze de digitale beveiliging om de tuin hopen te leiden. Eén zo’n wapenfeit is het ontwikkelen van zogeheten fileless malware. Wat moet je daarover weten?

Malware evolueert. Criminelen proberen steeds nieuwe methodes te vinden waarop zij virussen kunnen verspreiden, en daarbij lijken zij zeker in de afgelopen jaren een interessante nieuwe manier te hebben ontdekt: malware zonder bestanden, waarbij virussen worden verspreid zonder sporen achter te laten en die alleen werken in het werkgeheugen van een computer. Het is een effectieve methode; om een virus doeltreffend te verspreiden, moet je namelijk vaak beveiligingssoftware zoals antivirus weten te omzeilen. Malware-zonder-bestanden is daar heel erg geschikt voor. ‘Fileless malware’ voert code uit binnen bestaande, vertrouwde computerprocessen, waardoor virusscanners ze al snel als legitiem aanmerken.

Traditionele malware is niet voor niets traditioneel. Al jaren is het de meest gebruikte methode voor de verspreiding van malware om een computersysteem binnen te dringen en een malafide bestand zoals een .dll of .exe te installeren. Dat zet vervolgens een virus op de computer, bijvoorbeeld omdat het een ‘payload’ bevat met daarin de kwaadaardige code die bestanden versleutelt (ransomware) of die persoonlijke gegevens steelt (trojans).

Antivirus wordt echter steeds geavanceerder en kan zulke bestanden steeds makkelijker herkennen. Virusscanners detecteren virussen op basis van handtekeningen (‘signatures’), die worden samengesteld uit een combinatie van factoren zoals gedrag, afkomst of grootte van het bestand, en uit een grote database van bekende malware. Ziet een antivirusprogramma verdachte activiteit met zo’n handtekening, dan wordt die geblokkeerd.

Daarom wordt bestandsloze malware steeds interessanter voor criminelen. Bij deze vorm van malware wordt juist geen bestand op de harde schijf geplaatst, maar verspreidt het virus zich via bestaande systeemfuncties. Een voorbeeld van hoe dat werkt: een slachtoffer krijgt een geïnfecteerd document binnen en schakelt macro’s in. Bij traditionele malware is dat het moment dat een bestand zich op het systeem nestelt en direct code uitvoert, bijvoorbeeld ransomware die bestanden versleutelt.

Als de crimineel in kwestie echter gebruikmaakt van een bestandsloos virus, dan gaat de code op zoek naar bestaande applicaties op het systeem (zoals PowerShell of de commandoprompt) en gebruikt die applicatie om code uit te voeren. Die blijft dan vervolgens alleen in het werkgeheugen van de computer draaien. Vanaf dat moment kan er van alles gebeuren: de malware kan inloggegevens van de computer naar een server sturen, of juist een virus (zoals ransomware) downloaden of zelfs vanaf een andere server uitvoeren.

Volledig en gedeeltelijk

Juist dat laatste aspect maakt het lastig om één enkele definitie op te stellen voor bestandsloze malware, zegt Christiaan Beek. Hij is beveiligingsonderzoeker bij McAfee Security en ziet inderdaad dat deze vorm van cybercrime in opkomst is. Hij wil het graag uitleggen, “maar dan moeten we wel eerst helder hebben wat je onder bestandsloos verstaat”, zegt hij.

Je kunt bijvoorbeeld stellen dat bestandsloze malware überhaupt geen bestanden achterlaat op de harde schijf, maar er zijn vormen van deze malware die dat juist wel doen. Er zijn ook virussen die zelf geen bestanden naar de schijf schrijven, maar die wel bestaande bestanden indirect gebruiken. “Aan het begin van de eeuw verstonden we onder fileless nog ‘alles wat in het geheugen van computers’ draait”, zegt Beek. “Tegenwoordig bedoelen we daarmee meestal malafide bestanden die een script uitvoeren via het werkgeheugen en daarom zelf geen bestanden direct op de computer plaatsen.”

In veel gevallen gaat het bijvoorbeeld om een tussenweg. Dan draait het virus zelf weliswaar via het werkgeheugen, maar wordt de harde schijf op een of andere manier alsnog ingezet. Beek: “Er wordt bijvoorbeeld een tijdelijk bestand gedownload, soms maar heel kort, dat zichzelf automatisch weer verwijdert. Dan zie je dus wel even kort diskactiviteit.” Ook als er met zo’n aanval een payload wordt gedownload met daarin het daadwerkelijke virus, wordt dat alsnog bestandsloos genoemd. Immers, de malware draait volledig in een door Windows vertrouwd proces, en bevat uit zichzelf geen payload.

Media has no description

© PXimport

Via die scripts wordt gebruikgemaakt van bestaande processen, programma’s en bestanden die al op de computer staan. Ze installeren dus zelf niks, maar voeren de code uit via bijvoorbeeld PowerShell of Windows Management Instrumentation (WMI), een andere tool die veel rechten heeft binnen Windows. In de beveiligingswereld wordt dat proces ook wel ‘living off the land’ genoemd; gebruikmaken van wat er beschikbaar is, in dit geval op een systeem. Om die reden kan bestandsloze malware heel klein zijn. “Soms gaat het om slechts vijf of zes regels code die in een macro verstopt zit. Het is niet echt raketwetenschap”, zegt Beek.

De ironie is dat bestandsloze malware alleen actief is en schade kan veroorzaken zolang een computer draait. Start je het systeem opnieuw op, dan wordt het werkgeheugen gewist en daarmee ook de malware. Dus ook om deze vorm van malware tegen te gaan, werkt het bekende ‘Have you tried turning it off and on again’ perfect. “Het probleem is alleen dat bijna niemand zijn computer tegenwoordig nog opnieuw opstart”, zegt Beek. Hij ziet dat vaak gebeuren in bijvoorbeeld bedrijven waar het dikwijls makkelijker is om een computer in de slaapstand te zetten dan helemaal opnieuw op te starten.

Oud probleem

De aanvalsmethode is niet bepaald zo oud als de weg naar Rome, maar gaat in de geschiedenis van computers wél erg lang terug. Maar de laatste jaren ziet Beek de trend van bestandsloze malware sterk opkomen, met name in het bedrijfsleven. “Er is een grote stijging te zien, zeker in het afgelopen jaar. Dat is begonnen in de hoek van landen die hackaanvallen uitvoeren.” Inmiddels, zegt hij, gebruiken ook ‘gewone’ criminelen de methode.

Dat komt doordat bestandsloze malware geen op zichzelf staande categorie malware is. Het is slechts een van de vele methodes waarop digitale criminelen hun zaken doen en waarmee zij hopen onopgemerkt te blijven. En als zo’n methode effectief blijkt, wordt die steeds vaker gebruikt. Daarom komt bestandsloze malware over het hele spectrum van cybercrime voor: in ransomwareaanvallen, cryptojacking, trojans die logins stelen en in overheidshacks.

Daarom ziet Beek wat veel andere beveiligingsbedrijven ook zien. Sinds 2017 is een duidelijke trend zichtbaar, waarbij steeds meer slachtoffers vallen. Onderzoek van het Ponemon Institute naar 665 ict-bedrijven toonde bijvoorbeeld een stijging van 30 procent aan in het aantal besmettingen met bestandsloze malware in 2018 ten opzichte van het jaar daarvoor. Ook Microsoft waarschuwde in 2018 voor de opkomst van de nieuwe vorm van infectie en kondigde nieuwe veranderingen aan voor Windows Defender om daarmee om te gaan. Cijfers verschillen per rapport, omdat verschillende bedrijven verschillende metingen doen. Maar één ding is duidelijk: de lijn stijgt.

Opvallend is dat het voornamelijk bedrijven zijn die getroffen worden door bestandsloze malware. “De impact voor consumenten is veel lager”, zegt Beek. “Als je een exploit hebt ontdekt, kun je in een bedrijfsomgeving veel meer bereiken met een infectie. Je kunt dan veel meer computers tegelijkertijd bereiken.”

PowerShell en WMI

Er zijn meerdere methodes om een bestandsloze aanval uit te voeren, zoals Beek eerder al uitlegde. Maar wat je vaak ziet, is dat een bestaand onderdeel van Windows wordt misbruikt om die code uit te voeren. Eén tool komt daarbij heel prominent naar voren in de strijd tegen bestandsloze malware. “PowerShell-aanvallen komen heel vaak voor”, zegt Beek. “Een aanval bestaat dan vaak uit een Base64-decode. Of er wordt een spatie geplaatst in een http-string in de code, zodat die niet opvalt als hyperlink.” Op die manier verhult de code voor virusscanners wat er precies gebeurt. Als PowerShell ineens contact legt met een server is dat namelijk al snel vreemd en verdacht, maar als je die code eerst verbergt valt dat wel mee.

Media has no description

© PXimport

Naast PowerShell is ook Windows Management Instrumentation (WMI) populair. Het zijn tools die toegang hebben tot diepgaande onderdelen van het Windows-ecosysteem en die dus veel zwakheden in het OS kunnen misbruiken. En, ook handig, het zijn tools die op elke Windows-computer staan. Dat maakt het überhaupt al heel makkelijk om zulke virussen in elkaar te knutselen, want ze kunnen op vrijwel elke geïnfecteerde pc toeslaan. Voor PowerShell geldt bovendien dat het in het bedrijfsleven nagenoeg onmisbaar is, voegt Beek toe.

Macro’s in Word-documenten

Het mag allemaal best geavanceerd klinken, maar zo geraffineerd hoeft een aanval niet te zijn om een systeem te infecteren. In de meeste gevallen gaat het om behoorlijk generieke aanvallen, zegt Beek. “Dat zijn aanvallen die gewoon via een document met een macro worden uitgevoerd.”

Voor wie op de hoogte is van cybercrime zal de aanvalsmethode bekend voorkomen. Een aanvaller stuurt een document per e-mail naar een potentieel slachtoffer. Als die het document opent lijkt het leeg, maar, zo staat er, de tekst wordt leesbaar als er macro’s worden ingeschakeld. Het virus zit in die macro’s en kan dan al snel toeslaan. De methode is effectief. “Hele volksstammen klikken erop”, zegt Beek. “Ik vermoed dat het in 80 tot 90 procent van de aanvallen om zo’n aanval met een document met macro’s gaat.”

Wel zien beveiligingsbedrijven tegelijkertijd een toename in aanvallen via RDP (Remote Desktop Protocol). Daarmee kunnen computers op afstand worden bestuurd, wat vooral in bedrijven veel voorkomt.

Naast macro-aanvallen via phishing volgt de opkomst van bestandsloze malware ook andere trends op het gebied van malwareontwikkeling. Malvertising is bijvoorbeeld een methode die nog af en toe wordt gespot. Daarbij wordt malware verspreid via een geïnfecteerd advertentienetwerk. Malvertising komt wel steeds minder voor, omdat steeds meer internetgebruikers een adblocker gebruiken en omdat websites in toenemende mate beter toezicht houden op de websites die zij tonen.

Media has no description

© PXimport

Ransomware en cryptojacking

Bestandsloze infecties komen voor over het hele spectrum van cybercrime. Het is niet voorbehouden aan één soort virus, dus het wordt niet alleen gebruikt om bijvoorbeeld ransomware te versturen. Beek: “Je ziet dat fileless malware in het begin vooral groot was bij wat we ‘nation states’ noemen, staatshackers die namens een land ergens een aanval uitvoeren. Aanvankelijk gebeurde dat voor spionage, inmiddels ook steeds vaker voor sabotage.” WannaCry en (Not)Petya zijn voorbeelden van zulke sabotagemalware, al is het niet zeker dat in al die gevallen bestandsloze malware werd gebruikt.

Er zijn wel gevallen bekend van ransomwareaanvallen waarbij een bestandsloze infectie de oorzaak was. Begin dit jaar ontdekten beveiligingsbedrijven zoals McAfee bijvoorbeeld de Anatova-ransomware die de methode inzette, en in 2017 en 2018 werd een dergelijke infectie ook al gebruikt om een cryptominingaanval op te zetten tegen bedrijven. Maar de aanvallen gaan nog langer terug: in 2003 werd de Slammer-worm ontdekt die SQL-injecties via het werkgeheugen uitvoerde.

Een ander bekend voorbeeld is Kovter, een zogenaamd scareware-politievirus. Het virus begon als een grote pop-up die werd geactiveerd als een gebruiker bestanden downloadde. De pop-up leek afkomstig van de politie en maande gebruikers een boete te betalen voor het downloaden, meestal in bitcoins of cadeaukaarten. Het lijkt qua werking veel op het Ukash-politievirus dat in 2012 en 2013 rondging. Onderzoekers van Trend Micro ontdekten dat de malware een paar jaar geleden evolueerde en bestandsloos werd. Beek: “Bestandsloze virussen zijn slechts een manier om een aanval te maskeren.” Wat voor aanval dat dan precies is, is minder belangrijk; het kan alles zijn waarvoor je een virus zou inzetten.

Opsporen

Dat maakt het veel lastiger om zulke malware te detecteren. Traditionele antivirus probeert malware tegen te houden op basis van inhoud: wat zit er in een bestand of een datapakketje, en is dat bekend of verdacht? Bij bestandsloze malware is het veel belangrijker naar gedrag te kijken, zegt Beek. “Je stelt dan de vraag: ‘Klopt dit gedrag wel? Is dit logisch?’ Als je bijvoorbeeld ziet dat iemand een e-mail opent, dat een minuut later PowerShell wordt geopend en daarna internetverkeer naar buiten gaat, dan is dat natuurlijk verdacht.” Beveiligingsbedrijven zien veel heil in machine learning, dat steeds beter wordt in het detecteren van zulk verdacht gedrag.

Bestandsloze malware brengt een extra probleem met zich mee. Omdat er niets op de harde schijf wordt geplaatst, is het in veel gevallen ook lastig om achteraf aan opsporing en identificatie te doen.

“Het is sowieso al een probleem dat een computer aan moet blijven staan, voordat je die gaat onderzoeken”, zegt Beek. En hoewel veel gewone gebruikers hun computers lang niet altijd afsluiten, is dat wel een van de eerste dingen die een systeembeheerder doet als hij verdachte activiteit spot.

Dat maakt het volgens Beek ook heel moeilijk om specifieke daders aan te wijzen. “Attributie, zoals we dat noemen, is soms erg lastig. Zeker als iemand alleen scripts uitvoert via PowerShell, dan is het heel moeilijk te achterhalen wie zo’n aanval heeft uitgevoerd. Misschien kun je wel wat sporen vinden op de machine zelf, zoals event logs, maar je bent altijd afhankelijk van de context.” Daarmee doelt hij vooral op andere activiteit op de machine die mogelijk iets kan zeggen over een aanval of over andere apparaten op het netwerk waar meer informatie te vinden is over een aanval.

Net zoals bij andere soorten malware spelen hackers ook in dit geval een kat-en-muisspel met onderzoekers en malwarebestrijders. “Criminelen doen steeds meer moeite om lagen van obfuscatie toe te voegen, manieren om malware te verbergen voor scanners. Op die manier kunnen ook nieuwe technologieën zoals machine learning ze niet zomaar meer detecteren. Het blijft een spel.” Ondertussen blijft het advies van kracht dat beveiligingsexperts bij elke nieuwe dreiging herhalen: update systemen, open geen vreemde links of documenten, en denk logisch na voor je iets opent.

Deel dit artikel
Voeg toe aan favorieten