Varonis upptäckte ett kryptominerande virus: vår undersökning

Varonis upptäckte ett kryptominerande virus: vår undersökning

Vårt team för cybersäkerhetsutredningar undersökte nyligen ett nätverk som nästan helt var infekterat med ett kryptominerande virus hos ett medelstort företag. Analys
insamlade prover på skadlig programvara visade att en ny modifiering hade hittats
sådana virus, kallade Norman, med olika metoder för att dölja sin närvaro. Dessutom upptäcktes det interaktivt webbskal, vilket kan vara relevant för gruvoperatörer.

Studieöversikt

  • Varonis-företaget har identifierat en storskalig infektion med kryptominerare: nästan alla servrar och arbetsstationer i företaget var infekterade med sådan programvara
  • Sedan den första infektionen för mer än ett år sedan har antalet modifieringar och infekterade enheter stadigt ökat
  • Vi upptäckte en ny typ av Monero cryptominer (Norman) som använder olika metoder för att dölja den från analys av säkerhetsprogramvara för att undvika upptäckt
  • De flesta varianter av skadlig programvara använde DuckDNS (en gratis dynamisk DNS-tjänst) för att ansluta till kontrollcentret (C&C-servrar) och för att erhålla konfigurationsparametrar eller skicka nya data
  • Norman är en högpresterande Monero-kryptovalutagruvarbetare baserad på open source-gruvarbetaren - XMRig
  • Vi har ännu inte obestridliga bevis som länkar kryptominerare med ett interaktivt PHP-skal. Det finns dock goda skäl att tro att de kommer från samma angripare. Forskare samlar in ytterligare bevis för närvaron eller frånvaron av ett sådant samband.
  • I den här artikeln kan du bekanta dig med Varonis rekommendationer angående skydd mot fjärrwebbskal och kryptominerare

Undersökning

Utredningen började under nästa pilotprojekt plattform
cybersäkerhet Varonis
(Varonis Data Security Platform), som gjorde det möjligt att snabbt identifiera flera misstänkta avvikande händelser på nätverksnivå under Internetförfrågningar (via en webbproxy), associerade med onormala handlingar på filsystemet.
Kunden påpekade omedelbart att de enheter som identifierats av vår plattform
tillhörde samma användare som nyligen rapporterade programkrascher och nätverksavbrott.

Vårt team undersökte manuellt kundens miljö och flyttade från en infekterad station till en annan i enlighet med varningar genererade av Varonis-plattformen. Insatsteamet har tagit fram en särskild regel i DataAlert-modul för att upptäcka datorer som aktivt gruvdrift, vilket hjälpte till att snabbt eliminera hotet. Prover av den insamlade skadliga programvaran skickades till kriminaltekniska och utvecklingsteam, som meddelade att ytterligare undersökning av proverna var nödvändig.
Infekterade noder upptäcktes på grund av de samtal de ringde till DuckDNS, en dynamisk DNS-tjänst som låter sina användare skapa sina egna domännamn och snabbt mappa dem till ändrade IP-adresser. Som nämnts ovan fick det mesta av skadlig programvara i incidenten DuckDNS för att ansluta till kontrollcentret (C&C), medan andra fick åtkomst till konfigurationsparametrar eller skickade ny data.

Nästan alla servrar och datorer var infekterade med skadlig programvara. Främst använd
vanliga varianter av kryptominerare. Andra skadliga program inkluderade lösenordsdumpningsverktyg och PHP-skal, medan ett antal verktyg hade fungerat i flera år.

Vi lämnade resultaten till kunden, tog bort skadlig programvara från deras miljö och stoppade ytterligare infektioner.

Bland alla upptäckta prover på kryptominerare stack ett ut. Vi döpte honom Norman.

Träffa! Norman. Cryptominer

Norman är en högpresterande Monero-krypteringsminerare baserad på XMRig-kod. Till skillnad från andra gruvarbetarprover som hittats använder Norman tekniker för att dölja det från analys med säkerhetsprogramvara för att undvika upptäckt och förhindra ytterligare spridning.

Vid första anblicken är denna malware en vanlig gruvarbetare som gömmer sig under namnet svchost.exe. Studien fann dock att den använder mer intressanta metoder för att gömma sig från upptäckt och hålla saker igång.

Distributionsprocessen för denna skadliga programvara kan delas in i tre steg:

  • prestanda;
  • genomförande;
  • brytning.

Steg för steg analys

Steg 1. Utförande

Det första steget börjar med den körbara filen svchost.exe.

Skadlig programvara kompileras med NSIS (Nullsoft Scriptable Install System), vilket är ovanligt. NSIS är ett system med öppen källkod som används för att skapa Windows-installationsprogram. Precis som SFX skapar detta system ett arkiv med filer och en skriptfil som körs medan installationsprogrammet körs. Skriptfilen talar om för programmet vilka filer som ska köras och kan interagera med andra filer i arkivet.

Notera: För att få en NSIS-skriptfil från en körbar fil måste du använda 7zip version 9.38, eftersom senare versioner inte implementerar den här funktionen.

NSIS arkiverade skadliga program innehåller följande filer:

  • CallAnsiPlugin.dll, CLR.dll - NSIS-moduler för anrop av .NET DLL-funktioner;
  • 5zmjbxUIOVQ58qPR.dll - huvudsaklig nyttolast DLL;
  • 4jy4sobf.acz, es1qdxg2.5pk, OIM1iVhZ.txt - nyttolastfiler;
  • Retreat.mp3, Cropped_controller_config_controller_i_lb.png är bara filer som inte på något sätt är relaterade till ytterligare skadlig aktivitet.

Kommandot från NSIS-skriptfilen som kör nyttolasten ges nedan.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Skadlig programvara exekveras genom att anropa funktionen 5zmjbxUIOVQ58qPR.dll, som tar andra filer som parametrar.

Steg 2. Genomförande

Filen 5zmjbxUIOVQ58qPR.dll är den huvudsakliga nyttolasten, vilket kan ses från NSIS-skriptet ovan. En snabb analys av metadata avslöjade att DLL ursprungligen hette Norman.dll, så vi döpte den så.

DLL-filen är utvecklad i .NET och är skyddad från reverse engineering genom triple obfuscation
med den välkända kommersiella produkten Agile .NET Obfuscator.

Under utförandet är många operationer av självinjektion involverade i den egna processen, såväl som i andra processer. Beroende på OS-bitdjupet kommer skadlig programvara
välj olika sökvägar till systemmappar och starta olika processer.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Baserat på systemmappens sökväg kommer skadlig programvara att välja olika processer att köra.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Den injicerade nyttolasten har två huvudfunktioner: exekvera en kryptominerare och förhindra upptäckt.

Om operativsystemet är 64-bitars

När den ursprungliga svchosts.exe-filen (NSIS-fil) exekveras, skapar den en ny egen process och injicerar nyttolasten (1) i den. Strax efter startar den notepad.exe eller explorer.exe och injicerar kryptomineraren i den (2).

Varonis upptäckte ett kryptominerande virus: vår undersökning

Efter detta avslutas den ursprungliga svchost.exe-filen och den nya svchost.exe-filen används som ett program som övervakar minerprocessen.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Om operativsystemet är 32-bitars

När den ursprungliga svchosts.exe-filen (NSIS-filen) körs, duplicerar den sin egen process och injicerar nyttolasten i den, precis som 64-bitarsversionen.

I det här fallet injicerar skadlig programvara en nyttolast i användarens explorer.exe-process. Därifrån startar den skadliga koden en ny process (wuapp.exe eller vchost.exe) och injicerar en gruvarbetare i den.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Skadlig programvara döljer det faktum att den har injicerat sig själv i explorer.exe genom att skriva över den tidigare injicerade koden med sökvägen till wuapp.exe och tomma värden.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Som är fallet när man kör i en 64-bitarsmiljö avslutas den ursprungliga svchost.exe-processen, och den andra används för att återinjicera skadlig kod i explorer.exe om processen avslutas av användaren.

I slutet av exekveringsalgoritmen injicerar skadlig programvara alltid en kryptominerare i den legitima process som den startar.

Den är utformad för att förhindra upptäckt genom att avsluta gruvarbetaren när användaren startar Task Manager.

Observera att wuapp.exe-processen avslutas efter att ha startat Task Manager.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Efter att ha stängt aktivitetshanteraren startar skadlig programvara wuapp.exe-processen om och om igen
gruvarbetaren injicerar det i den.

Steg 3. Gruvarbetare

Tänk på XMRig-gruvarbetaren som nämns ovan.

Skadlig programvara injicerar en förtäckt UPX-version av gruvarbetaren i anteckningsblock, exe, explorer.exe,
svchost.exe eller wuapp.exe, beroende på OS-bitdjupet och exekveringsalgoritmens stadium.

PE-headern i miner har tagits bort och i skärmdumpen nedan kan vi se att den är maskerad med UPX.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Efter att ha skapat en dump och byggt om den körbara filen kunde vi köra den:

Varonis upptäckte ett kryptominerande virus: vår undersökning

Det bör noteras att åtkomst till XMR-målplatsen nekas, vilket effektivt neutraliserar denna gruvarbetare.

Miner-konfiguration:

"url": "pool.minexmr.com:5555","user":
"49WvfokdnuK6ojQePe6x2M3UCD59v3BQiBszkuTGE7wmNJuyAvHM9ojedgxMwNx9tZA33P84EeMLte7t6qZhxNHqHyfq9xA","pass":"x"

Mystiskt PHP-skal som skickar data till C&C

Under den här utredningen upptäckte vårt kriminaltekniska team en XSL-fil som fångade deras uppmärksamhet. Efter en djupgående analys av provet upptäcktes ett nytt PHP-skal som ständigt ansluter till kontrollcentret (C&C-servern).

En XSL-fil hittades på flera servrar i kundens miljö som lanserades av en känd Windows-körbar (mscorsv.exe) från en mapp i sysWOW64-katalogen.

Skadlig programvara kallades AutoRecover och innehöll flera filer:

  • XSL-fil: xml.XSL
  • nio DLL-filer

Körbara filer:

  • Mscorsv.exe
  • Wmiprvse.exe

Varonis upptäckte ett kryptominerande virus: vår undersökning

XSL-fil

XSL-filer är stilmallar, liknande de som används i CSS, som beskriver hur man visar ett XML-dokument.

Med hjälp av Notepad fastställde vi att det i själva verket inte var en XSL-fil, utan snarare PHP-kod som fördunklas av Zend Guard. Detta märkliga faktum antydde att det var det
nyttolast av skadlig programvara baserat på dess exekveringsalgoritm.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Nio DLL:er

Inledande analys av XSL-filen ledde till slutsatsen att närvaron av ett sådant nummer
DLL-filer har en viss betydelse. Huvudmappen innehåller en DLL som heter php.dll och tre andra bibliotek relaterade till SSL och MySQL. I undermapparna hittade experter fyra PHP-bibliotek och ett Zend Guard-bibliotek. Alla är legitima och erhålls från PHP-installationspaketet eller som externa dll-filer.

I detta skede antogs det att skadlig programvara skapades baserat på PHP och fördunklad av Zend Guard.

Körbara filer

Även i den här mappen fanns två körbara filer: Mscorsv.exe och Wmiprvse.exe.

Efter att ha analyserat filen mscorsv.exe fastställde vi att den inte var signerad av Microsoft, även om parametern ProductName var inställd på "Microsoft. Net Framework".
Först verkade det bara konstigt, men genom att analysera Wmiprvse.exe kunde vi bättre förstå situationen.

Filen Wmiprvse.exe var också osignerad, men innehöll en upphovsrättssymbol för PHP-gruppen och en PHP-ikon. En snabb titt på dess rader avslöjade kommandon från PHP-hjälpen. När den kördes med -version-växeln, upptäcktes det att det var en körbar fil designad för att köra Zend Guard.

Varonis upptäckte ett kryptominerande virus: vår undersökning

När mscorsv.exe startades på liknande sätt visades samma data på skärmen. Vi jämförde binära data för dessa två filer och såg att de är identiska, förutom metadata
Upphovsrätt och företagsnamn/produktnamn.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Baserat på detta drogs slutsatsen att XSL-filen innehöll PHP-kod som kördes med Zend Guards körbara fil, gömd under namnet mscorsv.exe.

Parsar XSL-filen

Med hjälp av en internetsökning fick specialister snabbt Zend Guard-deobfuskeringsverktyget och återställde det ursprungliga utseendet på filen xml.XSL:

Varonis upptäckte ett kryptominerande virus: vår undersökning

Det visade sig att skadlig programvara i sig är ett PHP-skal som ständigt är anslutet till kontrollcentret (C&C-servern).

De kommandon och utdata som den skickar och tar emot är krypterade. Eftersom vi hade källkoden hade vi både krypteringsnyckeln och kommandona.

Denna skadliga programvara innehåller följande inbyggda funktionalitet:

  • Eval - Används vanligtvis för att modifiera befintliga variabler i kod
  • Lokal filinspelning
  • Möjlighet att arbeta med databasen
  • Möjlighet att arbeta med PSEXEC
  • Dold utförande
  • Kartläggning av processer och tjänster

Följande variabel tyder på att skadlig programvara har flera versioner.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Vid insamling av prover upptäcktes följande versioner:

  • 0.5f
  • 0.4p
  • 0.4o

Den enda funktionen för att säkerställa den konstanta närvaron av skadlig programvara på systemet är att när den körs skapar den en tjänst som kör sig själv och dess namn
ändras från version till version.

Experter försökte hitta liknande prover på Internet och upptäckte skadlig programvara
som enligt deras uppfattning var en tidigare version av det befintliga urvalet. Innehållet i mappen var liknande, men XSL-filen var annorlunda och hade ett annat versionsnummer.

Parle-Vu Malware?

Skadlig programvara kan ha sitt ursprung i Frankrike eller ett annat fransktalande land: SFX-filen hade kommentarer på franska, vilket indikerar att författaren använde en fransk version av WinRAR för att skapa den.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Dessutom namngavs vissa variabler och funktioner i koden på franska.

Varonis upptäckte ett kryptominerande virus: vår undersökning

Varonis upptäckte ett kryptominerande virus: vår undersökning

Övervakar exekvering och väntar på nya kommandon

Experter modifierade skadlig kod och lanserade den redan modifierade på ett säkert sätt
version för att samla information om de kommandon den tog emot.

Varonis upptäckte ett kryptominerande virus: vår undersökning

I slutet av den första kommunikationssessionen såg experter att skadlig programvara fick ett kommando kodat med Base64 som argument för EVAL64-startnyckeln.
Detta kommando avkodas och körs. Den ändrar flera interna variabler (läs- och skrivbuffertstorlekar), varefter skadlig programvara går in i en arbetscykel och väntar på kommandon.

För tillfället har inga nya kommandon tagits emot.

Interaktivt PHP-skal och kryptominerare: är de relaterade?

Varonis-specialister är inte säkra på om Norman är associerad med ett PHP-skal, eftersom det finns starka argument både för och emot detta antagande:

Varför kan de vara släkt?

  • Inget av de skadliga programvaruproverna för kryptominering hade förmågan att självständigt spridas till andra system, även om de hittades på olika enheter i olika nätverkssegment. Det är möjligt att angriparen infekterade varje nod separat (kanske med samma attackvektor som när man infekterade Patient Zero), även om det skulle vara mer effektivt att använda ett PHP-skal för att spridas över hela nätverket som var målet för attacken.
  • Storskaliga, riktade automatiserade kampanjer riktade mot en specifik organisation lämnar ofta efter sig tekniska artefakter eller igenkännbara spår av cybersäkerhetshot. I det här fallet hittades inget sådant.
  • Både Norman och PHP-skalet använde DuckDNS-tjänsten.

Varför kanske de inte är släkt?

  • Det finns inga tekniska likheter mellan varianterna av kryptominerande skadlig kod och PHP-skalet. Den skadliga kryptomineraren skapas i C++, och skalet är i PHP. Dessutom finns det inga likheter i kodstrukturen och nätverksfunktionerna implementeras på olika sätt.
  • Det finns ingen direkt kommunikation mellan malware-varianterna och PHP-skalet för att utbyta data.
  • De delar inte utvecklarens kommentarer, filer, metadata eller digitala fingeravtryck.

Tre rekommendationer för skydd mot avlägsna skal

Skadlig programvara, som kräver kommandon från kontrollcentret (C&C-servrar) för att fungera, är inte som vanliga virus. Hans handlingar är inte så förutsägbara och kommer att likna handlingar av en hackare eller pentester som utförs utan automatiserade verktyg eller skript. Därför är det mer utmanande att upptäcka dessa attacker utan skadliga signaturer än vanlig antivirusskanning.

Nedan följer tre rekommendationer för att skydda företag från avlägsna skal:

  1. Håll all programvara uppdaterad
    Angripare använder ofta sårbarheter i programvara och operativsystem för att spridas över en organisations nätverk och söka efter data av intresse för att
    stöld. Patchning i rätt tid minskar risken för sådana hot avsevärt.
  2. Övervaka onormala dataåtkomsthändelser
    Troligtvis kommer angripare att försöka ta organisationens konfidentiella data utanför omkretsen. Övervakning av onormala åtkomsthändelser till dessa data kommer att tillåta
    upptäcka komprometterade användare och hela uppsättningen mappar och filer som faktiskt skulle kunna hamna i händerna på angripare, och inte bara betrakta all data som är tillgänglig för dessa användare.
  3. Övervaka nätverkstrafik
    Att använda en brandvägg och/eller proxyserver kan upptäcka och blockera skadliga anslutningar till kontrollcenter för skadlig programvara (C&C-servrar), vilket förhindrar angripare från att utföra kommandon och gör det svårare att
    omkretsdata.

Bekymrad över frågan om grå gruvdrift? Sex rekommendationer för skydd:

  1. Håll alla operativsystem uppdaterade
    Patchhantering är mycket viktigt för att förhindra missbruk av resurser och skadlig programvara.
  2. Kontrollera nätverkstrafik och webbproxyer
    Gör detta för att upptäcka vissa attacker, och för att förhindra vissa av dem kan du blockera trafik baserat på information om skadliga domäner eller begränsa onödiga dataöverföringskanaler.
  3. Använd och underhåll antiviruslösningar och slutpunktssäkerhetssystem (Men begränsa dig inte på något sätt till att bara använda detta skyddslager).
    Endpoint-produkter kan upptäcka välkända kryptominerare och förhindra infektioner innan de skadar systemets prestanda och energianvändning. Var medveten om att nya modifieringar eller nya metoder för att förhindra upptäckt kan göra att slutpunktssäkerhet misslyckas med att upptäcka nya versioner av samma skadliga program.
  4. Övervaka datorns CPU-aktivitet
    Vanligtvis använder kryptogruvarbetare en dators centrala processor för gruvdrift. Det är nödvändigt att analysera alla meddelanden om en minskning av prestanda ("Min dator har börjat sakta ner.").
  5. Övervaka DNS för ovanlig användning av dynamiska DNS-tjänster (som DuckDNS)

    Även om DuckDNS och andra dynamiska DNS-tjänster inte i sig är skadliga för systemet, gjorde användningen av DuckDNS av skadlig programvara det lättare för våra utredningsteam att upptäcka infekterade värdar.

  6. Utveckla en incidentresponsplan
    Se till att du har de nödvändiga rutinerna på plats för att sådana incidenter automatiskt ska upptäcka, innehålla och mildra hotet om grå kryptomining.

Notera till Varonis kunder.
Varonis DataAlert inkluderar hotmodeller som gör det möjligt att upptäcka kryptominerande skadlig kod. Kunder kan också skapa anpassade regler för att inrikta sig på programvarudetektering baserat på domäner som är kandidater för svartlistning. För att säkerställa att du kör den senaste versionen av DatAlert och använder rätt hotmodeller, kontakta din säljare eller Varonis Support.

Källa: will.com

Lägg en kommentar