【CobaltStrike】CobaltStrike簡介與使用


CobaltStrike簡介與使用

0x00 簡介

1. 什么是CobaltStrike?可以用來做什么?

CobatStrike是一款基於java編寫的全平台多方協同后滲透攻擊框架。CobaltStrike集成了端口轉發、端口掃描、socket代理、提權、釣魚、遠控木馬等功能。該工具幾乎覆蓋了APT攻擊鏈中所需要用到的各個技術環節。

 

2. CobaltStrike的文件結構

│  agscript 拓展應用的腳本
│  c2lint  檢查profile的錯誤異常
│  cobaltstrike
│  cobaltstrike.jar 客戶端程序
│  icon.jpg
│  license.pdf
│  readme.txt
│  releasenotes.txt
│  teamserver  服務端程序
│  update
│  update.jar
│
└─third-party 第三方工具
     README.vncdll.txt
     vncdll.x64.dll
     vncdll.x86.dll

 

3. CobaltStrike支持個人定制

  • 修改源碼進行深度的裁剪定制(如免殺)
  • 修改c2配置,改變協議原本流量特征以躲避各種ids/ips攔截
  • 使用AggressorScript腳本來加強自身,能夠擴展菜單欄,Beacon命令行,提權腳本等
  • 可以引用其他的通訊框架ExternalC2,ExternalC2是由Cobalt Strike提出的一套規范/框架,它允許黑客根據需要對框架提供的默認HTTP(S)/DNS/SMB C2 通信通道進行擴展。

 

0x01 使用CobaltStrike

以下為CobaltStrike軟件包里面所包含的內容,要開始使用運行軟件包里的程序,需要在服務器和客戶端都安裝並配置好java運行環境

1. 啟動CobaltStrike

CobaltStrike分為客戶端和服務端。Cobalt Strike 需要團隊服務器才能使用,服務端被稱為團隊服務器,是Beacon有效負載的控制器,團隊服務器還會存儲CobaltStrike收集的數據,並管理日志記錄teamserver就為服務端的運行程序。

1) 啟動teamserver

CobaltStrike團隊服務器teamserver必須以root身份運行在所支持的操作系統上。 需要文件 teamserver 與 cobaltstrike.jar。

要啟動團隊服務器,必須以root方式啟動運行,如下:

sudo ./teamserver <host> <password> [/path/to/c2.profile] [YYYY-MM-DD]

# 執行./teamserver的時候,有兩個必要參數和兩個可選參數
# <host> :是團隊服務器的 IP 地址。Cobalt Strike 使用此值作為其默認的服務器主機
# <password> :是團隊成員用於將 Cobalt Strike 客戶端連接到團隊服務器的密碼
# [/path/to/c2.profile] :指定 Malleable C2 通信配置文件
# [YYYY-MM-DD] :此參數指定以 YYYY-MM-DD 為格式的結束日期。團隊服務器會將此結束日期嵌入其生成的每個 Beacon 中。 Beacon 有效負載將拒絕在此結束日期或之后運行。如果 Beacon 有效載荷在此結束日期或之后喚醒,它也將被運行退出。

 

備注:如上截圖,當團隊服務器啟動時,它將發布團隊服務器 SSL 證書的 SHA256 哈希值。您應 該將此哈希值分發給您的團隊成員。當您的團隊成員連接時, Cobalt Strike 客戶端會在向團隊服務器進行身份驗證之前詢問是否驗證此哈希。這是防止中間人攻擊的重要保護。

 

2) 啟動Cobalt Strike Client

使用Cobalt Strike 客戶端(也就是安裝包里的cobaltstrike.jar程序)連接到團隊服務器 ,運行的時候不用添加任何參數。具體方式如下:

java -jar cpbaltstrike.jar   # 直接雙擊或者執行該命令

 

 

備注:客戶端需要填入參數的含義

Host:指定團隊服務器的 ip 地址

Port: 默認端口是 50050.很少有人更改此設置。

User:團隊服務器上的用戶名稱,此處可任意填寫自己想使用的用戶名。

Password:填入團隊服務器的密碼,也就是我們啟動團隊服務器使得第二個參數值。

點擊Connect 連接到 CobaltStrike 團隊服務器。如果這是您與此團隊服務器的第一次連接, Cobalt Strike將詢問您是否識別此團隊服務器的 SSL 證書的 SHA256 哈希值。如果需要,請點擊 OK, Cobalt Strike 客戶端將連接到服務器。 Cobalt Strike 還會記住這個SHA256 哈希,以便以后方便連接。

可以通過 Cobalt Strike - > Preferences - > Fingerprints 管理這些哈希值。

 

Cobalt Strike 會跟蹤您連接的團隊服務器並記住您的信息。從連接對話框的左側選擇其中一個團隊服務器配置文件,以使用其信息自動填充連接對話框。我們也可以通過 Cobalt Strike - > Preferences - > Team Servers 修改此連接。

 

到此呢,對於CobaltStrike的服務端和客戶端都已經啟動完成。接下來就是對CobaltStrike的各個功能模塊進行詳細的了解。

 

0x02 參考來源

404師傅:https://github.com/aleenzz/Cobalt_Strike_wiki

backlion師傅:https://www.cnblogs.com/backlion/

klion師傅:https://t.zsxq.com/JufyZzj


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM