Ipinagpapatuloy namin ang aming serye ng mga artikulo na nakatuon sa pagsusuri ng malware. SA
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.
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
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:
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:
Ang header ng liham ay may pangkalahatang anyo: / . Ang mga nilalaman ng liham, pati na rin ang mga kalakip nito, ay hindi naka-encrypt.
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.
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:
- ang pangalan ng programa ay hinahanap sa mga pamagat ng window
- 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:
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:
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.
Pagkatapos nito, ang teksto ay ipinasok sa log:
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.
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