銀行木馬QakBot分析
QakBot,也稱為QBot、QuackBot和Pinkslipbot,是一款已存在了十多年的銀行木馬。它于2007年在野外被發(fā)現(xiàn),此后一直在維護(hù)和發(fā)展,它的主要目的是竊取銀行憑證。時至今日,QakBot在功能方面仍在不斷發(fā)展,擁有更多的功能,如鍵盤記錄、后門功能和逃避檢測功能。它還能夠竊取電子郵件,以便攻擊者利用這些信息向受害者發(fā)送有針對性的郵件,引誘受害者打開這些電子郵件。
QakBot感染鏈
QakBot主要通過垃圾郵件感染受害者,電子郵件附件包含Microsoft Office文檔(Word、Excel)或帶有密碼保護(hù)的壓縮文件。包含宏的文檔會提示受害者打開附件,在某些情況下,電子郵件中包含指向傳播惡意文檔的網(wǎng)頁的鏈接。它還可以通過已感染機(jī)器將QakBot有效負(fù)載傳播到受害者的機(jī)器。
最近QakBot版本(2020-2021變體)的感染鏈如下:
(1) 用戶收到一封帶有ZIP附件的釣魚電子郵件,其中包含一份帶有嵌入宏的Office文檔或惡意鏈接。
(2) 用戶打開惡意附件/鏈接,并被誘導(dǎo)單擊“啟用內(nèi)容”。
(3) 執(zhí)行惡意宏。一些變體通過“GET”請求“PNG”,但該文件實際上是一個二進(jìn)制文件。
(4) 加載的有效負(fù)載(stager)包括加密資源模塊。其中一個加密資源具有DLL二進(jìn)制文件(加載器),該文件在運行時解密。
(5) “Stager”將“Loader”加載到內(nèi)存中,內(nèi)存在運行時解密并運行有效負(fù)載。
(6) 有效負(fù)載與C2服務(wù)器通信。
典型的QakBot具有如下功能:收集主機(jī)信息;創(chuàng)建計劃任務(wù);證書獲取:憑證轉(zhuǎn)儲;密碼竊取;
網(wǎng)絡(luò)注入;密碼暴力破解;修改注冊表;創(chuàng)建副本;注入進(jìn)程。
C2通信
QakBot惡意軟件的資源中包含150個硬編碼IP地址列表,其中大多數(shù)屬于其他受感染的系統(tǒng),這些系統(tǒng)被用作向其他代理或realС2轉(zhuǎn)發(fā)流量。
被感染機(jī)器與С2的通信是帶有Base64編碼數(shù)據(jù)的HTTPS POST請求。數(shù)據(jù)用RC4算法加密,靜態(tài)字符串“jHxastDcds)oMc=jvh7wdUhxcsdt2”和隨機(jī)16字節(jié)序列用于加密,數(shù)據(jù)本身是JSON格式。
感染后,機(jī)器會發(fā)送“PING”消息、“SYSTEM INFO”消息和“ASK for COMMAND”消息,C2會回復(fù)“ACK”和“COMMAND”消息。
‘PING’ message:發(fā)送 ‘BOT ID’判斷С2是否存活

‘ACK’ message:C2響應(yīng)消息,字段“16”包含受感染系統(tǒng)的外部IP地址
‘SYSTEM INFO’ :向C2發(fā)送受感染系統(tǒng)的信息和以下查詢結(jié)果
- whoami /all
- arp -a
- ipconfig /all
- net view /all
- cmd /c set
- nslookup -querytype=ALL -timeout=10 _ldap._tcp.dc._msdcs.{DOMAIN}
- nltest /domain_trusts /all_trusts
- net share
- route print
- netstat -nao
- net localgroup
- qwinsta
- WMI Query ROOT\CIMV2:Win32_BIOS
- WMI Query ROOT\CIMV2:Win32_DiskDrive
- WMI Query ROOT\CIMV2:Win32_PhysicalMemory
- WMI Query ROOT\CIMV2:Win32_Product
- WMI Query ROOT\CIMV2:Win32_PnPEntity
‘ASK for COMMAND’ :請求C2執(zhí)行命令,其中一個主要字段是“14”——SALT。此字段唯一,并在每個請求中都會更改。它用于防止受感染機(jī)器被劫持或接管。收到此請求后,С2在簽名過程中使用SALT,并在響應(yīng)中放置簽名,以便機(jī)器可以檢查簽名數(shù)據(jù),機(jī)器只執(zhí)行有效且已簽名的命令。
‘COMMAND’ message:當(dāng)前版本的bot支持24個命令,其中與下載、執(zhí)行、刪除或設(shè)置/更新配置值有關(guān)。消息包含SALT的簽名值(從bot的請求字段“14”獲取)、命令I(lǐng)D和模塊ID。
如果C2推送模塊,則會將Base64編碼的二進(jìn)制文件放入消息字段“20”中。
其他模塊
Cookie Grabber:從流行瀏覽器中手機(jī)cookie信息
Hidden VNC:允許攻擊者在受感染機(jī)器無感狀態(tài)下連接操作計算機(jī)
Email Collector:嘗試在受感染的計算機(jī)上查找Microsoft Outlook,然后將收集到的電子郵件發(fā)送到遠(yuǎn)程服務(wù)器
Hooking module:Hook編碼的WinAPI和Mozilla DLL用于執(zhí)行web注入、嗅探流量、鍵盤記錄、阻止DNS解析
Passgrabber module:從各種來源收集登錄名和密碼:Firefox和Chrome文件、Microsoft Vault存儲等。
Proxy module:使用UPnP端口轉(zhuǎn)發(fā)和tier 2С2查詢確定哪些端口可用
確定端口可用后代理模塊啟動多線程SOCKS5代理服務(wù)。SOCKS5協(xié)議被封裝到QakBot代理協(xié)議中,該協(xié)議由以下部分組成:QakBot代理命令(1字節(jié))、版本(1字節(jié))、會話id(4字節(jié))、總數(shù)據(jù)包長度(dword)、數(shù)據(jù)(總數(shù)據(jù)包長度-10)。通常代理模塊命令如下:
C2服務(wù)器數(shù)據(jù)包:
單次代理數(shù)據(jù)包:
IOC
部分C2服務(wù)器地址:
- 75.67.192[.]125:443 24.179.77[.]236:443 70.163.161[.]79:443
- 72.240.200[.]181:2222 184.185.103[.]157:443 78.63.226[.]32:443
- 83.196.56[.]65:2222 95.77.223[.]148:443 76.168.147[.]166:993
- 105.198.236[.]99:443 73.151.236[.]31:443 64.121.114[.]87:443
- 213.122.113[.]120:443 97.69.160[.]4:2222 77.27.207[.]217:995
- 105.198.236[.]101:443 75.188.35[.]168:443 31.4.242[.]233:995
- 144.139.47[.]206:443 173.21.10[.]71:2222 125.62.192[.]220:443
- 83.110.109[.]155:2222 76.25.142[.]196:443 195.12.154[.]8:443
- 186.144.33[.]73:443 67.165.206[.]193:993 96.21.251[.]127:2222
- 149.28.98[.]196:2222 222.153.122[.]173:995 71.199.192[.]62:443
- 45.77.117[.]108:2222 45.46.53[.]140:2222 70.168.130[.]172:995
- 45.32.211[.]207:995 71.74.12[.]34:443 82.12.157[.]95:995
- 149.28.98[.]196:995 50.29.166[.]232:995 209.210.187[.]52:995
- 149.28.99[.]97:443 109.12.111[.]14:443 209.210.187[.]52:443
- 207.246.77[.]75:8443 68.186.192[.]69:443 67.6.12[.]4:443
原文鏈接:securelist