天天看點

APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具

作者:老李講安全

大家好,我是老李。今天在和朋友交流的時候又聊到了APT組織常用的隐蔽隧道傳輸問題,比如常見的DNS、icmp等協定。突然發現有人發明了一個獨辟蹊徑的方式,就是用公開筆記做為控制指令來隐匿網絡行為,這一下就避開了大多數的安全檢測類産品的監測。具體的發現和檢測過程如下文所示:

一、概述

近期發現一款通過獨特方式進行遠端控制的工具,它通過公開筆記作為控制指令中轉平台來隐匿遠端控制行為,該工具不僅具有一定的免殺能力,在流量側由于全程通過HTTPS協定進行通信,是以還具備一定的防檢測、防溯源的能力。另外,在HTTPS加密載荷中的控制指令本身還使用AES算法進行了加密,可以進一步防止解密後的檢測。

二、實作原理

該工具由控制端和受控端兩部分組成,公開筆記網站則作為控制指令的中轉平台。

APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具

圖1:實作原理圖

01 受控端擷取指令行參數

受控端由攻擊者手動啟動運作時,需要兩個參數:admin和notekey。其中,

  • admin:公開筆記路徑,該路徑下的公開筆記用于儲存受控端資訊,這些資訊包括hostname、notekey以及noteid。
  • hostname:受控端主機名;
  • notekey:是由攻擊者任意填寫的鹽字元串,跟控制指令進行拼接後再進行AES加密,加鹽可以一定程度上使密文長度随機化,有效避免加密字元串碰撞;
  • noteid:公開筆記路徑,用于儲存AES加密後的控制指令和指令執行傳回的結果;

02 受控端将受控主機資訊寫入到公開筆記

受控端擷取完參數啟動後,通過AddHost函數将hostname、notekey以及noteid寫入到admin參數所傳入的公開筆記路徑中。

03 控制端擷取notekey以及noteid

攻擊者啟動控制端程式時,會先輸入參數admin,該參數必須跟受控端指定的admin參數内容一緻,admin路徑的筆記中儲存的資料主要有notekey、noteid等資訊,控制端通過admin參數擷取受控端資訊。

04 控制端發送控制指令并接收處理結果

控制端對notekey鹽字元串和要執行的Shell指令按照固定格式進行拼接,然後進行AES加密,再将加密後的指令發送到路徑為noteid的公開筆記中。

控制端向公開筆記中寫入指令後會睡眠30s,這段時間受控端會接收到指令并傳回指令執行結果,30秒後控制端從公開筆記noteid路徑中讀取受控端傳回的資料。

下圖是控制端發送whoami指令時的加密資料,圖中字元串是加密後的控制指令。

APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具

由于該工具是開源的,其AES密鑰寫死在源碼中,可以在源碼中直接擷取到密鑰,利用AES解密工具直接對該加密控制指令進行解密還原,解密後可以看到控制指令是由鹽字元串加指令本身拼接而成,冒号前的部分是鹽字元串,也就是notekey,後半部分是控制指令”whoami”。

APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具

下圖顯示了控制端通過nodeid記錄的路徑接收指令執行的結果,通過AES解密工具可以看到傳回了”whoami”指令查詢到的受控主機使用者名資訊。

APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具
APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具

05 受控端接收指令并傳回處理結果

受控端啟動後會進入工作循環,每10秒讀取一次noteid路徑下的筆記,以檢查是否有新的控制指令需要執行。

三、流量分析

該遠控工具使用HTTPS進行加密通信,由于其指令與控制通過公開筆記網站進行中轉,是以,其HTTPS單流特征與該平台的正常通路流量基本一緻。不過,其受控端會周期性的持續通路公開筆記,以擷取控制指令,是以其HTTPS多流行為會展現出類似心跳的特征;另外,該工具用戶端與主流浏覽器産生的TLS限定域指紋也不相同,這些都會使該工具的通信行為被加密流量檢測裝置發現。

APT攻擊另辟蹊徑,通過公開筆記中轉通信得新型遠控工具

四、總結

該遠控工具有一個明顯優點,它利用正常公開筆記網站進行遠端控制,有一定能力規避流量裝置的檢測,幹擾安全研究人員的判斷。不過其也存在缺陷,一方面,其通信過程存在心跳特征,會一定程度上暴露其惡意行為;另一方面,該工具功能較少,基本隻有指令執行的功能,難以處理複雜的攻防場景。不過該工具是開源的,攻擊者可以進行二次開發,補全短闆後将會大大提升該工具的威脅程度,觀成科技安全研究團隊會對此類加密通信遠控工具進行持續的研究和分析。

來源:北京觀成科技