Citat:
Alright, nu har jag analyserat ett bra tag. Jag vill först och främst tacka personen som delade med sig av detta virus och tack vare dig är virusets signaturer rapporterade via Virustotal så i nästa uppdatering av virusdatabasen kommer detta virus stoppas oavsett i vilken form den kommer i. Så gredz till dig!
Mailet innehåller ett RTF-dokument. Detta dokument innehåller ett objekt som är obfuskerat och att öppna själva dokumentet är ingen fara men att dubbel-klicka på "bestallning.cpl" är en riktigt dum idé. Men om du väl gör det så kommer en ny process att skapas. Namnet är alltid random och består av 8 chars(a-zA-Z0-9{8}), denna EXE lägger sig i TEMP.
Objektet i RTF-dokumentet är en körbar fil, detta fick jag reda på genom att inspektera headern och de magiska byte'n "MZ" innebär att det är en EXE. http://i.imgur.com/9iekJNe.png
När du väl startat denna EXE så droppar den i sin tur lite andra filer i ProgramData, t.ex denna BAT-fil:
http://i.imgur.com/zaaCDM3.png - Droppad EXE
Efter några sekunder så dyker det en ruta upp, den ser ut så här:
http://i.imgur.com/7KRsYuy.png, men innan den kom upp så varnade UAC mig: http://i.imgur.com/OiXPfqw.png
Vad som händer sen är att viruset droppar lite fler filer:
Vad är detta för filer?
För att summera så ser händelseflödet ut så här:
Sedan startar ABCdef12.exe(med ett annat PID) och läser in HELA exe-filen som finns i TEMP mha NtReadFile. Sedan skapas .BAT-filen och ABCdef12.exe lägger sig i C:\Documents and Settings\All Users\.
Sedan spawnas CMD.exe som kör igång BAT-filen. Det är den fil som ni ser ovanför. Den raderar alltså originalexe'n och startar den som lades i All Users. Ni ser även att CMD i sin tur spawnar PING.exe som alltså bara pingar Localhost och redirectar output till null.
Ni minns ju att CMD även startade ännu en instans av viruset, denna gång så lägger sig viruset i autorun genom att skriva i regedit(CurrentVersion\Run), vad som sedan händer är ju att viruset körs igång för sista gången och då händer intressanta saker.
Nu så börjar viruset skriva massor med saker i regedit. Den börjar med att skriva till massor med rootcertifikat. När den är klar med detta så gå den direkt till Firefox och kallar på funktioner så som CERT_ImportCerts, CERT_ChangeCertTrust och CERT_DestroyCertArray. Sedan flushas DNS-cachen och filerna som jag ovanför listade nollas ut. Sedan läses lite fler värden av från regedit och denna gång är det info från datorn, t.ex namnet, antal kärnor om Perl finns isntallerat osv.
Sedan skapas en pipe och den försöker hitta öppna shares och vad jag tror den försöker göra är att sprida sig, jag vet inte eftersom jag inte har några andra datorer i mitt nätverk. Men det är möjligt att det är en worm.
Viruset letar även efter .PBK-filer, och det är bara att läsa här så förstår ni varför.
--
Så vad är detta för skadlig kod då? Bra fråga och baserat på analysen så verkar det vara en slags remoteware som skapar giltiga certifikat så att man kan fjärransluta till datorn. Problemet är att absolut ingen nätverkstrafik ploppar upp och jag tror att en timer finns med i bilden(har inte kollat upp det). Men jag tror att viruset gör så att man kan ansluta till datorn utan att behöva verifiera massa saker. Sedan att den verkar nolla ut certifikat tror jag beror på att det ska vara möjligt att utföra en MITM. Detta skulle vara möjligt eftersom HSTS är beroende av att man anslutit minst en gång så det skulle alltså vara fullt möjligt att spoofa t.ex Paypal eller Facebook.
Ni kanske undrar varför den skapade nya filer av sig själv hela tiden? Detta är en klassisk metod för att undkomma detektering som faktiskt fungerar. Om du riktar dig in på en fil så kommer du ingen vart utan du måste hela tiden följa vad filen gör och startar den en ny process så måste du analysera den. Att debugga i t.ex Olly skulle bara stoppa dig, så därför behöver du se hela flödet och analysera fil för fil.
Jag har faktiskt inte utfört en minnesanalys öht, men kommer antagligen göra det och då kommer jag ha mer att gå på.
om ni har några frågor/funderingar/godis så bara shoot
~Chloë
Mailet innehåller ett RTF-dokument. Detta dokument innehåller ett objekt som är obfuskerat och att öppna själva dokumentet är ingen fara men att dubbel-klicka på "bestallning.cpl" är en riktigt dum idé. Men om du väl gör det så kommer en ny process att skapas. Namnet är alltid random och består av 8 chars(a-zA-Z0-9{8}), denna EXE lägger sig i TEMP.
Objektet i RTF-dokumentet är en körbar fil, detta fick jag reda på genom att inspektera headern och de magiska byte'n "MZ" innebär att det är en EXE. http://i.imgur.com/9iekJNe.png
När du väl startat denna EXE så droppar den i sin tur lite andra filer i ProgramData, t.ex denna BAT-fil:
Kod:
Om ni undrar varför den skriver ut alnum(a-zA-Z0-9) så är det för att bestämma namn.ping -n 1 localhost > nul echo "01356789ABCDFGJLMOPQSTWXYZabcdeghijlmoprtuwxyz" start "" /B "C:\Documents and Settings\All Users\1HPdkpxz.exe" del "C:\DOCUME~1\User\LOCALS~1\Temp\1HPdkpxz.exe" echo "01356789ABCDFGJLMOPQSTWXYZabcdeghijlmoprtuwxyz" del "C:\Documents and Settings\All Users\1HPdkpxz.bat" echo "01356789ABCDFGJLMOPQSTWXYZabcdeghijlmoprtuwxyz"
http://i.imgur.com/zaaCDM3.png - Droppad EXE
Efter några sekunder så dyker det en ruta upp, den ser ut så här:
http://i.imgur.com/7KRsYuy.png, men innan den kom upp så varnade UAC mig: http://i.imgur.com/OiXPfqw.png
Vad som händer sen är att viruset droppar lite fler filer:
- secmod.db - Security module database
- key3.db - Key database
- cert8.db - Security certificates
Vad är detta för filer?
Kod:
C:\Documents and Settings\chloe\Application Data\Mozilla\Firefox\Profiles\vglnv7s6.default\secmod.db C:\Documents and Settings\chloe\Application Data\Mozilla\Firefox\Profiles\vglnv7s6.default\cert8.db C:\Documents and Settings\chloe\ApplicationData\Mozilla\Firefox\Profiles\vglnv7s6.default\key3.db
För att summera så ser händelseflödet ut så här:
Kod:
Krångligt va? Men vad som händer är att det skapas en process med alnum{8} som namn och lägger sig i TEMP. Denna fil verkar injektera eller helt enkelt skapa sig själv då den använder NtFreeVirtualMemory och WriteProcessMemory.ABCdef12.exe | v ABCdef12.exe | v CMD.exe | v ABCdef12.exe | v ABCdef12.exe
Sedan startar ABCdef12.exe(med ett annat PID) och läser in HELA exe-filen som finns i TEMP mha NtReadFile. Sedan skapas .BAT-filen och ABCdef12.exe lägger sig i C:\Documents and Settings\All Users\.
Sedan spawnas CMD.exe som kör igång BAT-filen. Det är den fil som ni ser ovanför. Den raderar alltså originalexe'n och startar den som lades i All Users. Ni ser även att CMD i sin tur spawnar PING.exe som alltså bara pingar Localhost och redirectar output till null.
Ni minns ju att CMD även startade ännu en instans av viruset, denna gång så lägger sig viruset i autorun genom att skriva i regedit(CurrentVersion\Run), vad som sedan händer är ju att viruset körs igång för sista gången och då händer intressanta saker.
Nu så börjar viruset skriva massor med saker i regedit. Den börjar med att skriva till massor med rootcertifikat. När den är klar med detta så gå den direkt till Firefox och kallar på funktioner så som CERT_ImportCerts, CERT_ChangeCertTrust och CERT_DestroyCertArray. Sedan flushas DNS-cachen och filerna som jag ovanför listade nollas ut. Sedan läses lite fler värden av från regedit och denna gång är det info från datorn, t.ex namnet, antal kärnor om Perl finns isntallerat osv.
Sedan skapas en pipe och den försöker hitta öppna shares och vad jag tror den försöker göra är att sprida sig, jag vet inte eftersom jag inte har några andra datorer i mitt nätverk. Men det är möjligt att det är en worm.
Viruset letar även efter .PBK-filer, och det är bara att läsa här så förstår ni varför.
--
Så vad är detta för skadlig kod då? Bra fråga och baserat på analysen så verkar det vara en slags remoteware som skapar giltiga certifikat så att man kan fjärransluta till datorn. Problemet är att absolut ingen nätverkstrafik ploppar upp och jag tror att en timer finns med i bilden(har inte kollat upp det). Men jag tror att viruset gör så att man kan ansluta till datorn utan att behöva verifiera massa saker. Sedan att den verkar nolla ut certifikat tror jag beror på att det ska vara möjligt att utföra en MITM. Detta skulle vara möjligt eftersom HSTS är beroende av att man anslutit minst en gång så det skulle alltså vara fullt möjligt att spoofa t.ex Paypal eller Facebook.
Ni kanske undrar varför den skapade nya filer av sig själv hela tiden? Detta är en klassisk metod för att undkomma detektering som faktiskt fungerar. Om du riktar dig in på en fil så kommer du ingen vart utan du måste hela tiden följa vad filen gör och startar den en ny process så måste du analysera den. Att debugga i t.ex Olly skulle bara stoppa dig, så därför behöver du se hela flödet och analysera fil för fil.
Jag har faktiskt inte utfört en minnesanalys öht, men kommer antagligen göra det och då kommer jag ha mer att gå på.
om ni har några frågor/funderingar/godis så bara shoot
~Chloë
Alltså, vilket mästerligt inlägg Chloe! Wow, kan inte mycket alls om någonting såntdär, egentligen...men du får ju en att förstå. Du talar med passion.
Offtopic, men ändå, måste säga det!