Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Kohët e fundit, një prodhues evropian i pajisjeve të instalimeve elektrike kontaktoi Group-IB - punonjësi i tij mori një letër të dyshimtë me një bashkëngjitje me qëllim të keq në postë. Ilya Pomerantsev, një specialist i analizës së malware në CERT Group-IB, kreu një analizë të detajuar të këtij skedari, zbuloi atje softuerin spiun AgentTesla dhe tregoi se çfarë të prisni nga një malware i tillë dhe sa është i rrezikshëm.

Me këtë postim ne po hapim një seri artikujsh se si të analizojmë skedarë të tillë potencialisht të rrezikshëm dhe presim më kuriozët më 5 dhjetor për një webinar falas interaktiv mbi këtë temë. "Analiza e malware: Analiza e rasteve reale". Të gjitha detajet janë nën prerje.

Mekanizmi i shpërndarjes

Ne e dimë se malware arriti në makinën e viktimës përmes emaileve të phishing. Marrësi i letrës me siguri ishte BCC.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Analiza e titujve tregon se dërguesi i letrës ishte i falsifikuar. Në fakt, letra u largua me vps56[.]oneworldhosting[.]com.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Shtojca e emailit përmban një arkiv WinRar qoute_jpeg56a.r15 me një skedar të ekzekutueshëm me qëllim të keq QOUTE_JPEG56A.exe brenda

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Ekosistemi i malware

Tani le të shohim se si duket ekosistemi i malware në studim. Diagrami më poshtë tregon strukturën e tij dhe drejtimet e ndërveprimit të komponentëve.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Tani le të shohim më në detaje secilin nga komponentët e malware.

Ngarkues

Skedar origjinal QOUTE_JPEG56A.exe është një përpiluar AutoIt v3 skenar.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Për të errësuar skenarin origjinal, një errësues me të ngjashme PELock AutoIT-Obfuscator karakteristikat.
Deobfuzimi kryhet në tre faza:

  1. Heqja e turbullimit Për-Nëse

    Hapi i parë është të rivendosni rrjedhën e kontrollit të skriptit. Rrafshimi i rrjedhës së kontrollit është një nga mënyrat më të zakonshme për të mbrojtur kodin binar të aplikacionit nga analiza. Transformimet konfuze rrisin në mënyrë dramatike kompleksitetin e nxjerrjes dhe njohjes së algoritmeve dhe strukturave të të dhënave.

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  2. Rikuperimi i rreshtit

    Dy funksione përdoren për të enkriptuar vargjet:

    • gdorizabegkvfca - Kryen dekodim të ngjashëm me Base64

      Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

    • xgacyukcyzxz - bajt i thjeshtë XOR i vargut të parë me gjatësinë e të dytit

      Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  3. Heqja e turbullimit BinaryToString и zbatoj

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Ngarkesa kryesore ruhet në një formë të ndarë në drejtori Fonts seksionet e burimeve të skedarit.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Rendi i ngjitjes është si më poshtë: TIEQHCXWFG, IKE, SPDGUHIMPV, KQJMWQQAQTKTFXTUOSW, AOCHKRWWSKWO, JSHMSJPS, NHHWXJBMTTSPXVN, BFUTIFWWXVE, HWJHO, AVZOUMVFRDWFLWU.

Funksioni WinAPI përdoret për të deshifruar të dhënat e nxjerra CryptDecrypt, dhe çelësi i sesionit i krijuar në bazë të vlerës përdoret si çelës fZgFiZlJDxvuWatFRgRXZqmNCIyQgMYc.

Skedari i ekzekutueshëm i deshifruar dërgohet në hyrjen e funksionit RunPE, e cila realizon ProcessInject в RegAsm.exe duke përdorur të integruar ShellCode (i njohur edhe si RunPE ShellCode). Autorësia i përket përdoruesit të forumit spanjoll të pazbulueshme[.]net me pseudonimin Wardow.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Vlen gjithashtu të theksohet se në një nga temat e këtij forumi, një pengues për Në çati me veti të ngjashme të identifikuara gjatë analizës së mostrës.

Vetë ShellCode mjaft e thjeshtë dhe tërheq vëmendjen e huazuar vetëm nga grupi i hakerëve AnunakCarbanak. Funksioni i hashimit të thirrjeve API.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Jemi në dijeni edhe për rastet e përdorimit Shellcode franceze versione të ndryshme.
Përveç funksionalitetit të përshkruar, ne identifikuam gjithashtu funksione joaktive:

  • Bllokimi i përfundimit manual të procesit në menaxherin e detyrave

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Rinisja e një procesi fëmijësh kur ai përfundon

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Anashkaloni UAC

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Ruajtja e ngarkesës në një skedar

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Demonstrimi i dritareve modale

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Në pritje të ndryshimit të pozicionit të kursorit të miut

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • AntiVM dhe AntiSandbox

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Vetë shkatërrim

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  • Pompimi i ngarkesës nga rrjeti

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Ne e dimë se një funksionalitet i tillë është tipik për mbrojtësin CypherIT, i cili, me sa duket, është bootloader në fjalë.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Moduli kryesor i softuerit

Më tej, ne do të përshkruajmë shkurtimisht modulin kryesor të malware dhe do ta shqyrtojmë më në detaje në artikullin e dytë. Në këtë rast, bëhet fjalë për një aplikim në . NET.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Gjatë analizës, ne zbuluam se ishte përdorur një obfuscator ConfuserEX.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

IELibrary.dll

Biblioteka ruhet si një burim i modulit kryesor dhe është një shtojcë e njohur për të Agjenti Tesla, i cili ofron funksionalitet për nxjerrjen e informacioneve të ndryshme nga shfletuesit Internet Explorer dhe Edge.

Agent Tesla është një softuer modular spiunimi i shpërndarë duke përdorur një model malware-si-shërbim nën maskën e një produkti legjitim të keylogger. Agjenti Tesla është i aftë të nxjerrë dhe transmetojë kredencialet e përdoruesve nga shfletuesit, klientët e postës elektronike dhe klientët FTP te serveri te sulmuesit, të regjistrojë të dhënat e clipboard-it dhe të kapë ekranin e pajisjes. Në kohën e analizës, faqja zyrtare e zhvilluesve nuk ishte e disponueshme.

Pika hyrëse është funksioni GetSavedPasswords Klasa InternetExplorer.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1
Në përgjithësi, ekzekutimi i kodit është linear dhe nuk përmban asnjë mbrojtje kundër analizës. Vetëm funksioni i parealizuar meriton vëmendje GetSavedCookies. Me sa duket, funksionaliteti i shtojcës supozohej të zgjerohej, por kjo nuk u bë kurrë.

Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

Bashkëngjitja e ngarkuesit në sistem

Le të studiojmë se si bootloader është bashkangjitur në sistem. Mostra në studim nuk kryen ankorimin, por në ngjarje të ngjashme ndodh sipas skemës së mëposhtme:

  1. Në dosje C: Përdoruesit Publik është krijuar skenari Visual Basic

    Shembull i skenarit:

    Pjesëmarrja dështoi: le ta ekspozojmë AgentTesla në ujë të pastër. Pjesa 1

  2. Përmbajtja e skedarit të ngarkuesit mbushet me një karakter null dhe ruhet në dosje %Temp%<Emri i personalizuar i dosjes <Emri i skedarit>
  3. Një çelës autorun krijohet në regjistër për skedarin e skriptit HKCUSoftwareMicrosoftWindowsCurrentVersionRun<Emri i skriptit>

Pra, bazuar në rezultatet e pjesës së parë të analizës, ne ishim në gjendje të përcaktonim emrat e familjeve të të gjithë përbërësve të malware në studim, të analizonim modelin e infeksionit dhe gjithashtu të merrnim objekte për të shkruar nënshkrime. Ne do të vazhdojmë analizën tonë të këtij objekti në artikullin vijues, ku do të shohim më në detaje modulin kryesor Agjenti Tesla. Mos humbasë!

Nga rruga, më 5 dhjetor ftojmë të gjithë lexuesit në një webinar interaktiv falas me temën "Analiza e malware: analiza e rasteve reale", ku autori i këtij artikulli, një specialist CERT-GIB, do të tregojë në internet fazën e parë të Analiza e malware - shpaketimi gjysmë automatik i mostrave duke përdorur shembullin e tre mini-rasteve reale nga praktika, dhe ju mund të merrni pjesë në analizë. Webinari është i përshtatshëm për specialistë që tashmë kanë përvojë në analizimin e skedarëve me qëllim të keq. Regjistrimi bëhet rreptësisht nga emaili i korporatës: regjistrohu tani. Duke pritur për ju!

Yara

rule AgentTesla_clean{
meta:
    author = "Group-IB"
    file = "78566E3FC49C291CB117C3D955FA34B9A9F3EEFEFAE3DE3D0212432EB18D2EAD"
    scoring = 5
    family = "AgentTesla"
strings:
    $string_format_AT = {74 00 79 00 70 00 65 00 3D 00 7B 00 30 00 7D 00 0D 00 0A 00 68 00 77 00 69 00 64 00 3D 00 7B 00 31 00 7D 00 0D 00 0A 00 74 00 69 00 6D 00 65 00 3D 00 7B 00 32 00 7D 00 0D 00 0A 00 70 00 63 00 6E 00 61 00 6D 00 65 00 3D 00 7B 00 33 00 7D 00 0D 00 0A 00 6C 00 6F 00 67 00 64 00 61 00 74 00 61 00 3D 00 7B 00 34 00 7D 00 0D 00 0A 00 73 00 63 00 72 00 65 00 65 00 6E 00 3D 00 7B 00 35 00 7D 00 0D 00 0A 00 69 00 70 00 61 00 64 00 64 00 3D 00 7B 00 36 00 7D 00 0D 00 0A 00 77 00 65 00 62 00 63 00 61 00 6D 00 5F 00 6C 00 69 00 6E 00 6B 00 3D 00 7B 00 37 00 7D 00 0D 00 0A 00 73 00 63 00 72 00 65 00 65 00 6E 00 5F 00 6C 00 69 00 6E 00 6B 00 3D 00 7B 00 38 00 7D 00 0D 00 0A 00 5B 00 70 00 61 00 73 00 73 00 77 00 6F 00 72 00 64 00 73 00 5D 00}
    $web_panel_format_string = {63 00 6C 00 69 00 65 00 6E 00 74 00 5B 00 5D 00 3D 00 7B 00 30 00 7D 00 0D 00 0A 00 6C 00 69 00 6E 00 6B 00 5B 00 5D 00 3D 00 7B 00 31 00 7D 00 0D 00 0A 00 75 00 73 00 65 00 72 00 6E 00 61 00 6D 00 65 00 5B 00 5D 00 3D 00 7B 00 32 00 7D 00 0D 00 0A 00 70 00 61 00 73 00 73 00 77 00 6F 00 72 00 64 00 5B 00 5D 00 3D 00 7B 00 33 00 7D 00 00 15 55 00 52 00 4C 00 3A 00 20 00 20 00 20 00 20 00 20 00 20 00 00 15 55 00 73 00 65 00 72 00 6E 00 61 00 6D 00 65 00 3A 00 20 00 00 15 50 00 61 00 73 00 73 00 77 00 6F 00 72 00 64 00 3A 00}
condition:
     all of them
}

rule  AgentTesla_obfuscated {
meta:
    author = "Group-IB"
    file = "41DC0D5459F25E2FDCF8797948A7B315D3CB075398D808D1772CACCC726AF6E9"
    scoring = 5
    family = "AgentTesla"
strings:
    $first_names = {61 66 6B 00 61 66 6D 00 61 66 6F 00 61 66 76 00 61 66 79 00 61 66 78 00 61 66 77 00 61 67 6A 00 61 67 6B 00 61 67 6C 00 61 67 70 00 61 67 72 00 61 67 73 00 61 67 75 00}
    $second_names = "IELibrary.resources"
condition:
     all of them
}

rule AgentTesla_module_for_IE{
meta:
    author = "Group-IB"
    file = "D55800A825792F55999ABDAD199DFA54F3184417215A298910F2C12CD9CC31EE"
    scoring = 5
    family = "AgentTesla_module_for_IE"
strings:
    $s0 = "ByteArrayToStructure" 
    $s1 = "CryptAcquireContext" 
    $s2 = "CryptCreateHash" 
    $s3 = "CryptDestroyHash" 
    $s4 = "CryptGetHashParam" 
    $s5 = "CryptHashData"
    $s6 = "CryptReleaseContext" 
    $s7 = "DecryptIePassword" 
    $s8 = "DoesURLMatchWithHash" 
    $s9 = "GetSavedCookies" 
    $s10 = "GetSavedPasswords" 
    $s11 = "GetURLHashString"  
condition:
     all of them
}

rule RunPE_shellcode {
meta:
    author = "Group-IB"
    file = "37A1961361073BEA6C6EACE6A8601F646C5B6ECD9D625E049AD02075BA996918"
    scoring = 5
    family = "RunPE_shellcode"
strings:
    $malcode = {
      C7 [2-5] EE 38 83 0C // mov     dword ptr [ebp-0A0h], 0C8338EEh
      C7 [2-5] 57 64 E1 01 // mov     dword ptr [ebp-9Ch], 1E16457h
      C7 [2-5] 18 E4 CA 08 // mov     dword ptr [ebp-98h], 8CAE418h
      C7 [2-5] E3 CA D8 03 // mov     dword ptr [ebp-94h], 3D8CAE3h
      C7 [2-5] 99 B0 48 06 // mov     dword ptr [ebp-90h], 648B099h
      C7 [2-5] 93 BA 94 03 // mov     dword ptr [ebp-8Ch], 394BA93h
      C7 [2-5] E4 C7 B9 04 // mov     dword ptr [ebp-88h], 4B9C7E4h
      C7 [2-5] E4 87 B8 04 // mov     dword ptr [ebp-84h], 4B887E4h
      C7 [2-5] A9 2D D7 01 // mov     dword ptr [ebp-80h], 1D72DA9h
      C7 [2-5] 05 D1 3D 0B // mov     dword ptr [ebp-7Ch], 0B3DD105h
      C7 [2-5] 44 27 23 0F // mov     dword ptr [ebp-78h], 0F232744h
      C7 [2-5] E8 6F 18 0D // mov     dword ptr [ebp-74h], 0D186FE8h
      }
condition:
    $malcode 
}

rule AgentTesla_AutoIT_module{
meta:
    author = "Group-IB"
    file = "49F94293F2EBD8CEFF180EDDD58FA50B30DC0F08C05B5E3BD36FD52668D196AF"
    scoring = 5
    family = "AgentTesla"
strings:                                    
    $packedexeau = {55 ED F5 9F 92 03 04 44 7E 16 6D 1F 8C D7 38 E6 29 E4 C8 CF DA 2C C4 E1 F3 65 48 25 B8 93 9D 66 A4 AD 3C 39 50 00 B9 60 66 19 8D FC 20 0A A0 56 52 8B 9F 15 D7 62 30 0D 5C C3 24 FE F8 FC 39 08 DF 87 2A B2 1C E9 F7 06 A8 53 B2 69 C3 3C D4 5E D4 74 91 6E 9D 9A A0 96 FD DB 1F 5E 09 D7 0F 25 FB 46 4E 74 15 BB AB DB 17 EE E7 64 33 D6 79 02 E4 85 79 14 6B 59 F9 43 3C 81 68 A8 B5 32 BC E6}
condition:
     all of them
}

Hashe

Emër qoute_jpeg56a.r15
MD5 53BE8F9B978062D4411F71010F49209E
SHA1 A8C2765B3D655BA23886D663D22BDD8EF6E8E894
SHA256 2641DAFB452562A0A92631C2849B8B9CE880F0F8F

890E643316E9276156EDC8A

Tipi Arkivi WinRAR
Masat 823014
Emër QOUTE_JPEG56A.exe
MD5 329F6769CF21B660D5C3F5048CE30F17
SHA1 8010CC2AF398F9F951555F7D481CE13DF60BBECF
SHA256 49F94293F2EBD8CEFF180EDDD58FA50B30DC0F08

C05B5E3BD36FD52668D196AF

Tipi PE (Skript i përpiluar AutoIt)
Masat 1327616
Emri origjinal I panjohur
Vula e datës 15.07.2019
Lidhës Microsoft Linker (12.0)[EXE32]
MD5 C2743AEDDADACC012EF4A632598C00C0
SHA1 79B445DE923C92BF378B19D12A309C0E9C5851BF
SHA256 37A1961361073BEA6C6EACE6A8601F646C5B6ECD

9D625E049AD02075BA996918

Tipi ShellCode
Masat 1474

Burimi: www.habr.com

Shto një koment