CobaltStrike 分段及無分段木馬流量分析
VSole2022-08-27 16:52:22
正文
CS 分段木馬與無分段木馬大同小異,本次以較為典型的分段木馬為例來分析其與 C2 的通信過程。
首先看下兩個木馬的體積

(分段木馬)

(無分段木馬)
從體積上就可以看到明顯的區別,因為分段木馬artifact.exe 在運行后會進行一個下載 payload 的動作,所以所生成的后門體積會更小。


對下載的 payload 進行解碼后查看其內容可以看到詳細的C2 通信配置,包括主機 IP、公鑰、端口等信息。

在下載完 payload 之后,后門會將上線主機的基本信息用RSA加密后放置在 cookie 中然后向 C2 端進行請求,從而達到主機上線的效果。提示:CobaltStrike 默認的私鑰是存儲在.cobaltstrike.beacon_keys 文件中。

成功上線

解密 Cookie 中的數據可以看到所傳遞的信息。

在上線后后門將會以默認 60 秒一次的頻率向C2 段發送心跳包,此時我們進入對應的會話輸入我們需要執行的命令,此時會話并不會立刻發送給客戶端,而是會在心跳包的響應中發送給被控主機。
在 CS 執行一條命令

這個過程中產生的數據通信如下
被控端在心跳包的響應中接收到 c2 服務端發來的指令

解密響應的內容,可見其中包含了詳細的需要執行的命令。

在執行后,后門使用 POST 方法向 C2 服務端回傳執行結果


說到這里需要再提一下無分段木馬,因為無分段木馬無需進行payload 的下載,所以相比之下缺少了一個payload 下載的步驟。在整體的通信過程中,沒有單獨請求下載的環節。

如果覺得本文不錯的話,歡迎加入知識星球,星球內部設立了多個技術版塊,目前涵蓋“WEB安全”、“內網滲透”、“CTF技術區”、“漏洞分析”、“工具分享”五大類,還可以與嘉賓大佬們接觸,在線答疑、互相探討。
VSole
網絡安全專家