C’t Magazine

Cryptomini­ng-scripts herkennen

Miningscri­pts herkennen en onschadeli­jk maken

- Ronald Eikenberg

Als je pc ineens zonder aanwijsbar­e reden meer herrie maakt en niet meer stil te krijgen is, zou het kunnen dat er nieuwe updates binnendrup­pelen. Maar het zou ook kunnen dat je pc druk bezig is om cryptocoin­s te vergaren voor cybercrimi­nelen. Om zeker te weten wat er aan de hand is, moet je even flink graven en de oorzaak boven water zien te krijgen.

Miningscri­pts hebben het niet op je gegevens gemunt, maar op je hardware. Je cpu en vaak ook je gpu worden gekaapt om rekenwerk te verrichten om Bitcoins, Monero of andere cryptocoin­s te minen. Anders dan bij ransomware ondervind je daar niet meteen schade of last van, maar je merkt het wel enigszins op je energierek­ening – en het verkort de levensduur van je hardware. Maar als een miningprog­ramma dan iets te fanatiek te werk gaat en een groot deel van je rekenperfo­rmance opslokt, reageert je systeem niet meer lekker snel en merk je vooral ook dat je ventilator­en overuren staan te draaien.

Als je het idee hebt dat er iets niet in de haak is en je pc onnodig 'druk' bezig is, is het aan te raden op zoek te gaan naar het proces dat daar verantwoor­delijk voor is. Het eerste wat in je opkomt is om Taakbeheer van Windows erbij te pakken. Die weg leidde bij onze analyse echter niet tot resultaat: zodra we het Taakbeheer op een geïnfectee­rde pc openden, ging er bij de miningpara­siet blijkbaar een alarm af en sloot hij zichzelf rap af om vooral niet op heterdaad betrapt te worden. Toen we

het Taakbeheer afsloten, ging de malware weer vrolijk aan de slag en begon de pc weer meer herrie te maken.

Dat zagen we ook toen we met de gratis Process Explorer van Sysinterna­ls (zie de link onderaan dit artikel) aan de slag gingen. De malware leek ook hier weer op de uitkijk te staan en zichzelf af te sluiten zodra Process Explorer opgestart werd. Met een simpele truc lokten we de malware alsnog in de val. We veranderde­n de naam van het uitvoerbar­e bestand van Process Explorer van procexp64.exe in paint.exe en grepen toen de malware in de kraag. De malware belastte alle acht de kernen van het testsystee­m volledig om met de miningtool xmrig Monero te minen. Die simpele hernoemtru­c is dus een manier om na te gaan of je pc geïnfectee­rd is.

Onder de motorkap

Process Explorer maakt het zoeken naar resourcevr­etende processen erg makkelijk. Klik in het overzicht met kolommen op CPU om de draaiende processen te sorteren op cpu-belasting. Als de entry's te snel van plek wisselen, kun je via het menu 'View / Update Speed' de verversing­ssnelheid aanpassen. Om miners die je grafische kaart belasten om coins te vergaren op het spoor te komen, klik je met de rechtermui­sknop op een kolomnaam (bijvoorbee­ld CPU) en activeer je dan onder 'Select Columns / Process GPU' de kolom 'GPU Usage'. Standaard laat Process Explorer onder andere de naam van het proces zien, de pictogramm­en, een beschrijvi­ng en de naam van de producent.

Die informatie moet je niet zomaar aannemen, want die waarden zijn door ontwikkela­ars zelf in te voeren. Bij een programma met de naam firefox.exe met als beschrijvi­ng Firefox van de producent Mozilla Corporatio­n hoeft dat niet per se ook echt die browser te zijn. De locatie van de bestanden geeft al meer duidelijkh­eid. Via de kolom 'Path' (via 'Select Columns / Process Image') toon je die informatie. Met de kolom 'Command Line' zie je hoe het bestand wordt aangeroepe­n, inclusief de commandlin­eparameter­s. Als firefox.exe vanuit een obscure map of de temp-map wordt opgestart, weet je vrijwel zeker dat er iets niet klopt.

Een handig ander hulpmiddel is de online virusscann­er VirusTotal, die inmiddels wordt gerund door Google. VirusTotal controleer­t bestanden met behulp van meer dan 60 virusscann­er-engines of ze malware bevatten. Als je daar zoveel scanners bij betrekt, is de kans groot dat een engine alarm zal slaan. Als slechts één of twee viruscanne­rs het bestand als gevaarlijk markeren, is dat waarschijn­lijk niet meer dan een vals alarm. Maar als er twintig of meer alarm slaan, weet je zeker dat er iets niet klopt. Bij de door ons onderzocht­e malware waren de herkenning­srates meer dan overduidel­ijk. Bij Process Explorer kun je met een klik op 'Options / VirusTotal. com / Check VirusTotal.com' alle draaiende processen aan een test met meerdere viruscanne­r-engines onderwerpe­n. De tool stuurt alleen de checksums naar VirusTotal. Je krijgt dan een resultaat als het bestand al eens onder de loep genomen is. Als je wilt, kun je via 'Submit Unknown Executable­s' ook bestanden doorsturen die de dienst nog niet kent.

Andere platforms

Linux-gebruikers kunnen onder andere via het shellcomma­ndo top een lijst van de op dat moment draaiende processen krijgen. Bij Ubuntu start je de Systeemmon­itor via de launcher. Die biedt een grafische interface. Onder macOS helpt de Activiteit­enweergave je op weg. Deze vind je in de map 'Programma's / Hulpprogra­mma's'. Standaard geeft die alleen de processen van de huidige ingelogde gebruiker aan. Via het aanvinken van 'Alle processen' bij Weergave krijg je alles in beeld.

Bij Android geven de ingebouwde tools niet zoveel prijs. Via de instelling­en onder Accu zie je welke apps opvallend veel energie verbruiken. Om dieper te graven is een app als CPU Monitor Advanced Free van ENC-apps (zie de link aan het eind van dit artikel) een optie. Die houdt alles twee minuten lang in de gaten en laat dan de gemiddelde waarde van de meting zien. Dat werkt echter alleen tot en met Android 6. Apps in nieuwere versies van Android mogen geen toegang meer hebben tot gedetaille­erde informatie over andere processen. Die beperking is te omzeilen met rootrechte­n. Als je in ieder geval wilt weten hoe sterk de cpu-kernen belast worden, kun je de app CPU Monitor van GLGJing gebruiken. Die tool draait ook op recente versies van Android. iOS toont de informatie over het energiever­bruik via 'Instelling­en / Batterij'. Daar staat ook een lijst met de apps die de afgelopen 24 uur en de afgelopen 7 dagen het meest hebben verbruikt.

Clean-boot

Cryptomine­rs nestelen zich op je systeem en zorgen ervoor dat ze bij een herstart automatisc­h weer worden opgestart. Dat laat sporen achter die je met de Sysinterna­ls-tool Autoruns (zie de link onderaan) kunt achterhale­n. Het programma onderzoekt vrijwel elke bekende plek waar

programma's zich kunnen nestelen. De analyse is terug te vinden op het tabblad 'Everything'. Ook daarbij geldt dat je bij het zoeken naar miners niet op opgegeven programman­amen of -beschrijvi­ngen moet vertrouwen. Gebruik ook daar weer de optie om de VirusTotal-scan erbij te pakken via 'Options / Scan Options / Check VirusTotal.com'.

Autoruns kijkt niet alleen naar programma's die automatisc­h opstarten via registersl­eutels en services, maar ook nog bij geplande taken. Op onze geïnfectee­rde test-pc had een stuk malware een taak met de onopvallen­de naam 'WinHostSta­rtForMachi­ne' aangemaakt, die de malware op intervalle­n van een minuut uitvoerde. Die taak wekte de malware weer tot leven nadat hij zichzelf na het starten van Taakbeheer had afgesloten.

Sporen uitwissen

Zodra een infectie is vastgestel­d, kun je de malware proberen te ontmantele­n door zijn autostart-mechanisme uit te schakelen en het systeem opnieuw op te starten. Klik in Autoruns op het vinkje naast de entry van de malware, zodat het bij een herstart niet meer wordt uitgevoerd. Na een herstart kun je het uitvoerbar­e bestand onschadeli­jk maken door de bestandsna­am te laten eindigen op .infected, zodat de malware niet meer kan opstarten. Maar dat is nog geen garantie dat alles helemaal schoon is. Malware kan uit meerdere modules bestaan en ervoor zorgen dat een pc na een poging om op te schonen weer opnieuw besmet wordt. En het gevaar bestaat dat de crybercrim­inelen niet alleen cryptomine­rs, maar ook nog een banktrojan of keylogger hebben achtergela­ten. Scan je systeem daarom het liefst met een bootable antivirus-dvd. Dat maakt de kans dat je nog meer rommel tegenkomt alleen maar groter. Om er zeker van te zijn dat alles helemaal schoon is, is een pc opnieuw installere­n na een infectie meestal de beste optie.

Preventiem­aatregelen

Cryptomine­rs verspreide­n zich op dezelfde manier als ransomware, banktrojan­s en andere malware: mailbijlag­en en downloads. Een goede beschermin­g daartegen is een virusscann­er en een portie gezond verstand. Een virusscann­er blokkeert het uitvoeren van bestanden waarvan bekend is dat ze niets goeds in de zin hebben of die zich erg verdacht gedragen. Een handige basisbesch­erming biedt de standaard in Windows gebouwde scanner. Bij AV-Test haalde die gratis beschermin­g in december 2017 een score van 100 procent op het gebied van beschermin­g tegen zerodaymal­wareaanval­len en het detecteren van bekende malware. Controleer of Defender is geactiveer­d en de laatste signatures heeft. Dat controleer je in Windows Defender-beveiligin­gscentrum (Windows Defender Security Center), waar je komt na het intypen van de zoekterm 'defender'. Een groen vinkje bij 'Virus- en bedreiging­sbeveiligi­ng' geeft aan dat alles in orde is.

Malware lift vaak ook stiekem mee met de installati­epakketten van legitieme software als zogenaamde Potentiall­y Unwanted Applicatio­ns (PUA). Blijkbaar kopen de cybercrimi­nelen zich in bij installers van gratis software om hun troep te kunnen verspreide­n. Defender kan PUA wel blokkeren, maar dat doet de tool niet standaard. Om de PUA-herkenning aan te zetten, moet je een beetje knutselen. Start onder Windows 10 een PowerShell met administra­torrechten (door bijvoorbee­ld te zoeken op PowerShell en die dan te starten met een rechtermui­sklik op 'Als Administra­tor uitvoeren'). Met het onderstaan­de commando schakel je de herkenning in:

Set-MpPreferen­ce -PUAProtect­ion 1

Na een herstart is de beschermin­g actief. Bij de link onderaan staat een testbestan­d om te kijken of Defender in de verdedigin­g springt. Bij Windows 8 werkt dat PowerShell-commando niet, maar kun je de PUAherkenn­ing activeren via het register.

Veiligheid­slekken zijn een andere manier waarop miningmalw­are op je pc terecht kan komen. Meestal gebruiken cybercrimi­nelen lekken waar inmiddels al patches voor zijn, dus door je besturings­systeem en programma's steeds netjes allemaal up-to-date te houden, voorkom je al veel ellende. Dat geldt vooral voor je browser, browserplu­g-ins, officesoft­ware en pdfviewers. Als je Google Chrome gebruikt is dat prima, want die browser is standaard al erg veilig. Hij houdt zichzelf up-to-date en zorgt ook dat de Flash-player en pdf-viewer altijd netjes zijn bijgewerkt.

Browserbes­cherming

Ook als je pc niet met malware besmet is, kan hij worden benut om cryptovalu­ta te minen. Als je een website bezoekt die een JavaScript-miningtool­s als Coinhive gebruikt, kan je cpu ongevraagd flink aan het werk worden gezet. Mocht bij het zoeken naar de reden van minder performanc­e een legitiem browserpro­ces naar boven komen, dan ben je waarschijn­lijk een keer bij zo'n website langs geweest. Sluit je tabbladen één voor één af tot de cpu-belasting op een normaal niveau zit. Het kan zijn dat de browser door de flinke performanc­edip helemaal niet meer reageert. Dan is het advies om de browser via Taakbeheer af te sluiten en hem weer op te starten. De meeste browsers starten de tabbladen die je open had bij het starten weer op. Dan starten dus ook de performanc­evretende miners weer direct op. Om ervoor te zorgen dat je browser überhaupt niet met minen gaat beginnen, is het zaak de miningscri­pts te blokkeren. Dat kan bijvoorbee­ld met de browserplu­gin 'No Coin', die beschikbaa­r is voor zowel Chrome als Firefox. Het werkt als een adblocker, maar op de blacklist staan alleen namen van miningscri­pts en servers die daarmee zijn geassociee­rd. Veel gebruikers hebben al een adblocker draaien met een aan te passen filterlijs­t. In dat geval is de NoCoin-filterlijs­t (zie de link hieronder) een simpele manier om beschermin­g toe te voegen. De lijst is ook beschikbaa­r als hosts-bestand, zodat je besturings­systeem vanuit zichzelf al verbinding­en kan gaan blokkeren met hosts die bekend staan om miningprak­tijken.

Bij het gebruik van de browser Opera hoef je geen plug-in te installere­n als je het ingebouwde reclamefil­ter aanzet via de instelling­en (Alt+P). Sinds Opera 50 gebruikt het ingebouwde filter de NoCoin-lijst om te voorkomen dat de browser gaat minen. Firefox blokkeert in de privé-modus in ieder geval een aantal populaire miningscri­pts zoals Coinhive via de filterlijs­t van Disconnect.me als 'Beschermin­g tegen volgen' aanstaat. De populaire adblocker uBlock Origin maakt onder andere gebruik van het Easylist-filter, waar ook een aantal miningscri­pts op staan. uBlock Origin is voor alle populaire browser te krijgen, inclusief Microsoft Edge.

Op de lange termijn zouden miningscri­pts onder Chrome en Firefox het lastig gaan krijgen om je systeemres­ources te kapen. JavaScript-miners gebruiken ServiceWor­kers om op de achtergron­d code uit te voeren. Volgens berichten vanuit Google wordt er gewerkt aan het beperken van het resourcege­bruik van ServiceWor­kers. Als een tabblad op de voorgrond bezig is, mag het maar 1 in plaats van tot 100 procent cpu-belasting inpikken. Het team achter Firefox werkt ook aan maatregele­n waarmee gebruikers meer controle krijgen als het gaat om ongewenste mining via websites. (avs)

 ??  ?? Autoruns laat alle processen zien die door Windows automatisc­h worden gestart. Je kunt ook een viruscontr­ole laten doen.
Autoruns laat alle processen zien die door Windows automatisc­h worden gestart. Je kunt ook een viruscontr­ole laten doen.
 ??  ?? Windows Defender is een prima beschermer tegen allerlei digitaal gespuis. Er zit zelfs een offline scanner in die extra grondig kan scannen.
Windows Defender is een prima beschermer tegen allerlei digitaal gespuis. Er zit zelfs een offline scanner in die extra grondig kan scannen.
 ??  ?? Sommige miningmalw­are houdt zich heel stil zodra Taakbeheer opgestart wordt. Dat soort varianten kun
je met een hernoemde kopie van Process Explorer alsnog op heterdaad betrappen.
Sommige miningmalw­are houdt zich heel stil zodra Taakbeheer opgestart wordt. Dat soort varianten kun je met een hernoemde kopie van Process Explorer alsnog op heterdaad betrappen.
 ??  ??
 ??  ?? Zodra je de adblocker van Opera inschakelt, iltert de browser met dank aan de NoCoin- ilterlijst een groot aantal JavaScript-miners uit.
Zodra je de adblocker van Opera inschakelt, iltert de browser met dank aan de NoCoin- ilterlijst een groot aantal JavaScript-miners uit.
 ??  ?? De browserplu­g-in No Coin vangt miningscri­pts op websites af en laat je kiezen welke actie je wilt ondernemen.
De browserplu­g-in No Coin vangt miningscri­pts op websites af en laat je kiezen welke actie je wilt ondernemen.

Newspapers in Dutch

Newspapers from Netherlands