Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Ipinagpapatuloy namin ang aming serye ng mga artikulo na nakatuon sa pagsusuri ng malware. SA una Sa bahagi, sinabi namin kung paano si Ilya Pomerantsev, isang espesyalista sa pagsusuri ng malware sa CERT Group-IB, ay nagsagawa ng isang detalyadong pagsusuri ng isang file na natanggap sa pamamagitan ng koreo mula sa isa sa mga kumpanya sa Europa at natuklasan ang spyware doon. AhenteTesla. Sa artikulong ito, ibinibigay ni Ilya ang mga resulta ng isang hakbang-hakbang na pagsusuri ng pangunahing module AhenteTesla.

Ang Agent Tesla ay isang modular spying software na ipinamahagi gamit ang malware-as-a-service na modelo sa ilalim ng pagkukunwari ng isang lehitimong produkto ng keylogger. Ang Agent Tesla ay may kakayahang mag-extract at mag-transmit ng mga kredensyal ng user mula sa mga browser, email client at FTP client patungo sa server sa mga umaatake, mag-record ng data ng clipboard, at makuha ang screen ng device. Sa oras ng pagsusuri, ang opisyal na website ng mga developer ay hindi magagamit.

File ng configuration

Inililista ng talahanayan sa ibaba kung aling functionality ang nalalapat sa sample na iyong ginagamit:

Описание Halaga
Flag ng paggamit ng KeyLogger totoo
Flag ng paggamit ng ScreenLogger hindi totoo
KeyLogger log pagpapadala ng pagitan sa ilang minuto 20
Ang pagitan ng pagpapadala ng log ng ScreenLogger sa ilang minuto 20
Flag ng backspace key handling. Mali – pag-log lamang. Tama – binubura ang nakaraang key hindi totoo
Uri ng CNC. Mga Pagpipilian: smtp, webpanel, ftp SMTP
Flag ng pag-activate ng thread para sa pagwawakas ng mga proseso mula sa listahang "%filter_list%" hindi totoo
I-disable ng UAC ang flag hindi totoo
Task manager huwag paganahin ang flag hindi totoo
CMD huwag paganahin ang flag hindi totoo
Patakbuhin ang window disable flag hindi totoo
Registry Viewer I-disable ang Flag hindi totoo
I-disable ang flag ng system restore point totoo
Control panel huwag paganahin ang flag hindi totoo
MSCONFIG huwag paganahin ang bandila hindi totoo
I-flag upang huwag paganahin ang menu ng konteksto sa Explorer hindi totoo
I-pin ang bandila hindi totoo
Path para sa pagkopya ng pangunahing module kapag pini-pin ito sa system %startupfolder% %infolder%%insname%
I-flag para sa pagtatakda ng "System" at "Nakatago" na mga katangian para sa pangunahing module na nakatalaga sa system hindi totoo
I-flag para magsagawa ng pag-restart kapag naka-pin sa system hindi totoo
I-flag para sa paglipat ng pangunahing module sa isang pansamantalang folder hindi totoo
UAC bypass flag hindi totoo
Format ng petsa at oras para sa pag-log yyyy-MM-dd HH:mm:ss
I-flag para sa paggamit ng filter ng programa para sa KeyLogger totoo
Uri ng pagsasala ng programa.
1 - ang pangalan ng programa ay hinanap sa mga pamagat ng window
2 – hinahanap ang pangalan ng program sa pangalan ng proseso ng window
1
Filter ng programa "facebook"
"twitter"
"gmail"
"instagram"
"pelikula"
"skype"
"porno"
"hack"
"whatsapp"
"discord"

Pag-attach ng pangunahing module sa system

Kung nakatakda ang kaukulang bandila, ang pangunahing module ay makokopya sa path na tinukoy sa config bilang path na itatalaga sa system.

Depende sa halaga mula sa config, ang file ay binibigyan ng mga katangian na "Nakatago" at "System".
Ang Autorun ay ibinibigay ng dalawang sangay ng pagpapatala:

  • HKCU SoftwareMicrosoftWindowsCurrentVersionRun%insregname%
  • HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedRun %insregname%

Dahil ang bootloader ay nag-inject sa proseso RegAsm, ang pagtatakda ng patuloy na bandila para sa pangunahing module ay humahantong sa medyo kawili-wiling mga kahihinatnan. Sa halip na kopyahin ang sarili nito, ikinakabit ng malware ang orihinal na file sa system RegAsm.exe, kung saan isinagawa ang iniksyon.

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2

Pakikipag-ugnayan sa C&C

Anuman ang paraan na ginamit, ang komunikasyon sa network ay nagsisimula sa pagkuha ng panlabas na IP ng biktima gamit ang mapagkukunan checkip[.]amazonaws[.]com/.
Ang sumusunod ay naglalarawan sa mga pamamaraan ng pakikipag-ugnayan sa network na ipinakita sa software.

webpanel

Nagaganap ang pakikipag-ugnayan sa pamamagitan ng HTTP protocol. Ang malware ay nagpapatupad ng isang POST na kahilingan gamit ang mga sumusunod na header:

  • Ahente ng Gumagamit: Mozilla/5.0 (Windows U Windows NT 6.1 ru rv:1.9.2.3) Tuko/20100401 Firefox/4.0 (.NET CLR 3.5.30729)
  • Koneksyon: Keep-Alive
  • Uri ng Nilalaman: application / x-www-form-urlencoded

Ang address ng server ay tinukoy ng halaga %PostURL%. Ang naka-encrypt na mensahe ay ipinadala sa parameter «P». Ang mekanismo ng pag-encrypt ay inilarawan sa seksyon "Mga Algorithm ng Pag-encrypt" (Paraan 2).

Ang ipinadalang mensahe ay ganito ang hitsura:

type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nclient={8}nlink={9}nusername={10}npassword={11}nscreen_link={12}

Parametro uri ay nagpapahiwatig ng uri ng mensahe:

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
hwid — Ang isang MD5 hash ay naitala mula sa mga halaga ng motherboard serial number at processor ID. Malamang na ginamit bilang User ID.
oras — nagsisilbing magpadala ng kasalukuyang oras at petsa.
pcname - tinukoy bilang /.
logdata — log data.

Kapag nagpapadala ng mga password, ang mensahe ay mukhang:

type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nscreen_link={8}n[passwords]

Ang mga sumusunod ay mga paglalarawan ng ninakaw na data sa format nclient[]={0}nlink[]={1}nusername[]={2}npassword[]={3}.

SMTP

Nagaganap ang pakikipag-ugnayan sa pamamagitan ng SMTP protocol. Ang ipinadalang sulat ay nasa HTML na format. Parameter BODY parang:

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Ang header ng liham ay may pangkalahatang anyo: / . Ang mga nilalaman ng liham, pati na rin ang mga kalakip nito, ay hindi naka-encrypt.

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Nagaganap ang pakikipag-ugnayan sa pamamagitan ng FTP protocol. Ang isang file na may pangalan ay inilipat sa tinukoy na server _-_.html. Ang mga nilalaman ng file ay hindi naka-encrypt.

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2

Mga algorithm ng pag-encrypt

Ang kasong ito ay gumagamit ng mga sumusunod na paraan ng pag-encrypt:

Ang pamamaraan ng 1

Ang pamamaraang ito ay ginagamit upang i-encrypt ang mga string sa pangunahing module. Ang algorithm na ginamit para sa pag-encrypt ay AES.

Ang input ay isang anim na digit na decimal na numero. Ang sumusunod na pagbabago ay isinasagawa dito:

f(x) = (((x >> 2 - 31059) ^ 6380) - 1363) >> 3

Ang resultang halaga ay ang index para sa naka-embed na array ng data.

Ang bawat elemento ng array ay isang sequence DWORD. Kapag nagsasama DWORD isang hanay ng mga byte ang nakuha: ang unang 32 byte ay ang encryption key, na sinusundan ng 16 byte ng initialization vector, at ang natitirang mga byte ay ang naka-encrypt na data.

Ang pamamaraan ng 2

Algorithm ang ginamit 3DES sa mode ECB na may padding sa buong bytes (PKCS7).

Ang susi ay tinukoy ng parameter %urlkey%, gayunpaman, ginagamit ng encryption ang MD5 hash nito.

Nakakahamak na functionality

Ginagamit ng sample na pinag-aaralan ang mga sumusunod na programa para ipatupad ang malisyosong function nito:

Keylogger

Kung mayroong katumbas na flag ng malware gamit ang function na WinAPI Itakda angWindowsHookEx nagtatalaga ng sarili nitong handler para sa mga event ng keypress sa keyboard. Ang handler function ay nagsisimula sa pagkuha ng pamagat ng aktibong window.

Kung nakatakda ang flag ng pag-filter ng application, isasagawa ang pag-filter depende sa tinukoy na uri:

  1. ang pangalan ng programa ay hinahanap sa mga pamagat ng window
  2. ang pangalan ng programa ay hinahanap sa pangalan ng proseso ng window

Susunod, ang isang tala ay idinagdag sa log na may impormasyon tungkol sa aktibong window sa format:

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Pagkatapos ay itatala ang impormasyon tungkol sa pinindot na key:

Key Talaan
Backspace Depende sa flag ng pagproseso ng Backspace key: False – {BACK}
Tama – binubura ang nakaraang key
CAPSLOCK {CAPSLOCK}
ESC {ESC}
PahinaUp {PageUp}
Pababa
ALISIN {DEL}
" "
F5 {F5}
& &
F10 {F10}
TAB {TAB}
< <
> >
Space
F8 {F8}
F12 {F12}
F9 {F9}
ALT + TAB {ALT+TAB}
END {END}
F4 {F4}
F2 {F2}
CTRL {CTRL}
F6 {F6}
karapatan
Up
F1 {F1}
Kaliwa
PageDown {PageDown}
Isingit {Insert}
Manalo {Manalo}
Numlock {NumLock}
F11 {F11}
F3 {F3}
HOME {HOME}
ENTER {ENTER}
ALT + F4 {ALT+F4}
F7 {F7}
Iba pang susi Ang character ay nasa upper o lower case depende sa mga posisyon ng CapsLock at Shift key

Sa isang tinukoy na dalas, ang nakolektang log ay ipinadala sa server. Kung ang paglipat ay hindi matagumpay, ang log ay nai-save sa isang file %TEMP%log.tmp sa format:

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Kapag nagpagana ang timer, ililipat ang file sa server.

ScreenLogger

Sa isang tinukoy na dalas, lumilikha ang malware ng screenshot sa format Jpeg may kahulugan kalidad katumbas ng 50 at ini-save ito sa isang file %APPDATA %.jpg. Pagkatapos ng paglipat, ang file ay tatanggalin.

ClipboardLogger

Kung ang naaangkop na bandila ay nakatakda, ang mga pagpapalit ay gagawin sa naharang na teksto ayon sa talahanayan sa ibaba.

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Pagkatapos nito, ang teksto ay ipinasok sa log:

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2

PasswordStealer

Maaaring mag-download ang malware ng mga password mula sa mga sumusunod na application:

Mga Browser Mga mail client Mga kliyente ng FTP
kromo Tanawan Filezilla
Firefox ibong kulog WS_FTP
IE/Edge Foxmail WinSCP
ekspedisyon ng pamamaril Opera Mail CoreFTP
Opera browser IncrediMail FTP Navigator
Yandex Pocomail FlashFXP
Comodo Eudora SmartFTP
ChromePlus Ang paniki FTPCommander
Kromo Post box
Tanglaw ClawsMail
7Star
Amigo
BraveSoftware Mga kliyente ng Jabber Mga kliyente ng VPN
CentBrowser Psi/Psi+ Buksan ang VPN
Chedot
CocCoc
Browser ng Elemento Mga Tagapamahala ng Pag-download
Epic Privacy Browser Internet Download Manager
Kometa JDownloader
orbitum
Isputnik
uCozMedia
Vivaldi
SeaMonkey
Flock Browser
UC Browser
Itim na lawin
Cyber ​​​​Fox
K-meleon
pusang yelo
Icedragon
PaleMoon
waterfox
Falcon Browser

Pagsalungat sa dinamikong pagsusuri

  • Paggamit ng function Matulog. Binibigyang-daan kang i-bypass ang ilang sandbox sa pamamagitan ng timeout
  • Pagsira ng thread Lugar.Kilalanin. Pinapayagan kang itago ang katotohanan ng pag-download ng isang file mula sa Internet
  • Sa parameter %filter_list% tumutukoy sa isang listahan ng mga proseso na wawakasan ng malware sa pagitan ng isang segundo
  • Nagdidiskonekta UAC
  • Hindi pagpapagana ng task manager
  • Nagdidiskonekta CMD
  • Hindi pagpapagana ng bintana "Tumakbo"
  • Hindi pagpapagana ng Control Panel
  • Hindi pagpapagana ng tool RegEdit
  • Hindi pagpapagana ng system restore point
  • Huwag paganahin ang menu ng konteksto sa Explorer
  • Nagdidiskonekta MSCONFIG
  • Bypass UAC:

Hindi aktibong mga tampok ng pangunahing module

Sa panahon ng pagsusuri ng pangunahing module, natukoy ang mga function na responsable sa pagkalat sa network at pagsubaybay sa posisyon ng mouse.

Uod

Ang mga kaganapan para sa pagkonekta ng naaalis na media ay sinusubaybayan sa isang hiwalay na thread. Kapag nakakonekta, ang malware na may pangalan ay kinokopya sa ugat ng file system scr.exe, pagkatapos nito ay naghahanap ng mga file na may extension lnk. Ang pangkat ng lahat lnk mga pagbabago sa cmd.exe /c simulan ang scr.exe&simulan ang & lumabas.

Ang bawat direktoryo sa ugat ng media ay binibigyan ng katangian "Nakatago" at ang isang file ay nilikha gamit ang extension lnk na may pangalan ng nakatagong direktoryo at ang utos cmd.exe /c simulan ang scr.exe&explorer /root,"%CD%" at lumabas.

MouseTracker

Ang paraan para sa pagsasagawa ng pagharang ay katulad ng ginamit para sa keyboard. Ang pag-andar na ito ay nasa ilalim pa rin ng pag-unlad.

Aktibidad ng file

Путь Описание
%Temp%temp.tmp Naglalaman ng counter para sa mga pagtatangka ng UAC bypass
%startupfolder%%infolder%%insname% Path na itatalaga sa HPE system
%Temp%tmpG{Kasalukuyang oras sa milliseconds}.tmp Path para sa backup ng pangunahing module
%Temp%log.tmp Log file
%AppData%{Isang arbitrary na pagkakasunud-sunod ng 10 character}.jpeg Screenshot
C:UsersPublic{Isang arbitrary na pagkakasunud-sunod ng 10 character}.vbs Path sa isang vbs file na magagamit ng bootloader para i-attach sa system
%Temp%{Custom na pangalan ng folder}{File name} Path na ginagamit ng bootloader para i-attach ang sarili nito sa system

Profile ng attacker

Salamat sa hardcoded authentication data, nakakuha kami ng access sa command center.

Nabigo ang turnout: ilantad natin si AgentTesla sa malinis na tubig. Bahagi 2
Nagbigay-daan ito sa amin na matukoy ang huling email ng mga umaatake:

junaid[.]sa***@gmail[.]com.

Ang domain name ng command center ay nakarehistro sa mail sg***@gmail[.]com.

Konklusyon

Sa isang detalyadong pagsusuri ng malware na ginamit sa pag-atake, nagawa naming itatag ang functionality nito at makuha ang pinakakumpletong listahan ng mga indicator ng kompromiso na nauugnay sa kasong ito. Ang pag-unawa sa mga mekanismo ng pakikipag-ugnayan ng network sa pagitan ng malware ay naging posible na magbigay ng mga rekomendasyon para sa pagsasaayos ng pagpapatakbo ng mga tool sa seguridad ng impormasyon, pati na rin ang pagsulat ng mga stable na panuntunan sa IDS.

Pangunahing panganib AhenteTesla tulad ng DataStealer na hindi nito kailangang mag-commit sa system o maghintay para sa isang control command upang maisagawa ang mga gawain nito. Kapag nasa makina, agad itong magsisimulang mangolekta ng pribadong impormasyon at ilipat ito sa CnC. Ang agresibong pag-uugali na ito ay sa ilang mga paraan ay katulad ng pag-uugali ng ransomware, na ang pagkakaiba lamang ay ang huli ay hindi nangangailangan ng koneksyon sa network. Kung nakatagpo mo ang pamilyang ito, pagkatapos na linisin ang nahawaang system mula sa malware mismo, dapat mo talagang baguhin ang lahat ng mga password na maaaring, kahit man lang sa teorya, ay ma-save sa isa sa mga application na nakalista sa itaas.

Sa hinaharap, sabihin nating nagpapadala ang mga umaatake AhenteTesla, ang paunang boot loader ay madalas na binago. Nagbibigay-daan ito sa iyo na manatiling hindi napapansin ng mga static scanner at heuristic analyzer sa oras ng pag-atake. At ang ugali ng pamilyang ito na agad na simulan ang kanilang mga aktibidad ay ginagawang walang silbi ang mga monitor ng system. Ang pinakamahusay na paraan upang labanan ang AgentTesla ay ang paunang pagsusuri sa isang sandbox.

Sa ikatlong artikulo ng seryeng ito titingnan natin ang iba pang mga bootloader na ginamit AhenteTesla, at pag-aralan din ang proseso ng kanilang semi-awtomatikong pag-unpack. Huwag palampasin!

Sumira

SHA1
A8C2765B3D655BA23886D663D22BDD8EF6E8E894
8010CC2AF398F9F951555F7D481CE13DF60BBECF
79B445DE923C92BF378B19D12A309C0E9C5851BF
15839B7AB0417FA35F2858722F0BD47BDF840D62
1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD

C&C

URL
sina-c0m[.]icu
smtp[.]sina-c0m[.]icu

RegKey

pagpapatala
HKCUSoftwareMicrosoftWindowsCurrentVersionRun{Script name}
HKCUSoftwareMicrosoftWindowsCurrentVersionRun%insregname%
HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedRun%insregname%

mga mutex

Walang mga tagapagpahiwatig.

File

Aktibidad ng file
%Temp%temp.tmp
%startupfolder%%infolder%%insname%
%Temp%tmpG{Kasalukuyang oras sa milliseconds}.tmp
%Temp%log.tmp
%AppData%{Isang arbitrary na pagkakasunud-sunod ng 10 character}.jpeg
C:UsersPublic{Isang arbitrary na pagkakasunud-sunod ng 10 character}.vbs
%Temp%{Custom na pangalan ng folder}{File name}

Mga Sample na Impormasyon

Pangalan Hindi kilala
MD5 F7722DD8660B261EA13B710062B59C43
SHA1 15839B7AB0417FA35F2858722F0BD47BDF840D62
SHA256 41DC0D5459F25E2FDCF8797948A7B315D3CB0753
98D808D1772CACCC726AF6E9
uri PE (.NET)
laki 327680
Orihinal na Pangalan AZZRIDKGGSLTYFUUBCCRRCUMRKTOXFVPDKGAGPUZI_20190701133545943.exe
DateStamp 01.07.2019
tagatala VB.NET

Pangalan IELlibrary.dll
MD5 BFB160A89F4A607A60464631ED3ED9FD
SHA1 1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD
SHA256 D55800A825792F55999ABDAD199DFA54F3184417
215A298910F2C12CD9CC31EE
uri PE (.NET DLL)
laki 16896
Orihinal na Pangalan IELlibrary.dll
DateStamp 11.10.2016
tagatala Microsoft Linker(48.0*)

Pinagmulan: www.habr.com

Magdagdag ng komento