- .NET安全攻防指南(上冊(cè))
- 李寅 莫書棋
- 7字
- 2025-06-11 10:22:18
1.4 滲透測試平臺(tái)
1.4.1 Cobalt Strike
Cobalt Strike是一款由Java編寫的全平臺(tái)多方協(xié)同滲透測試框架,早期版本依賴Metasploit框架,3.0版本之后獨(dú)立成一個(gè)滲透測試平臺(tái),分為多個(gè)客戶端Client與一個(gè)服務(wù)端Teamserver,因而可進(jìn)行團(tuán)隊(duì)分布式協(xié)作。
Cobalt Strike集成了端口轉(zhuǎn)發(fā)、端口掃描、多模式端口監(jiān)聽、Socket代理、提權(quán)、釣魚、遠(yuǎn)控木馬等功能。該工具幾乎覆蓋了APT攻擊鏈中的各個(gè)技術(shù)環(huán)節(jié),且其最大的優(yōu)點(diǎn)在于可以進(jìn)行團(tuán)隊(duì)分布式協(xié)作和擁有優(yōu)越的UI。
1.部署服務(wù)端
Cobalt Strike服務(wù)端需要Java運(yùn)行環(huán)境,建議安裝JDK 8以上的版本。我們可以在終端中輸入“java-version”查看自己是否已經(jīng)安裝Java運(yùn)行環(huán)境,如圖1-49所示。

圖1-49 安裝Java運(yùn)行環(huán)境
如果未返回信息,則表示服務(wù)器還未安裝Java運(yùn)行環(huán)境。在命令行下輸入“Java”,根據(jù)提示安裝合適的版本。將Cobalt Strike的壓縮文件上傳至服務(wù)器的cobalt目錄下,實(shí)驗(yàn)環(huán)境以Cobalt Strike 4.5版本為例。輸入解壓縮命令“rar x CobaltStrike4.5.rar”,得到Cobalt Strike安裝目錄,目錄結(jié)構(gòu)如表1-4所示。
表1-4 Cobalt Strike目錄結(jié)構(gòu)

Cobalt Strike服務(wù)端的關(guān)鍵文件是teamserver,服務(wù)端一般運(yùn)行在Linux操作系統(tǒng)上,客戶端則運(yùn)行在Windows或Linux操作系統(tǒng)上。運(yùn)行前需要給teamserver賦權(quán),輸入下面的命令。

賦予teamserver可執(zhí)行權(quán)限之后,在命令行下顯示為綠色,這樣就可以通過輸入“./teamserver”來運(yùn)行它了,如圖1-50所示。

圖1-50 賦予teamserver可執(zhí)行權(quán)限
然后運(yùn)行./teamserver 192.168.101.104 123456。圖1-51所示的返回信息表示服務(wù)端已經(jīng)成功開啟,從圖中可以看到開啟的端口為50050。

圖1-51 teamserver成功啟動(dòng)
因?yàn)樘摂M機(jī)Kali作為teamserver,卻經(jīng)常出現(xiàn)自動(dòng)刷新DHCP獲取新IP地址的情況,所以需要將Kali配置成靜態(tài)IP地址。具體操作是:在終端命令行輸入“l(fā)eafpad /etc/network/interfaces”,然后添加以下內(nèi)容。

配置成靜態(tài)IP地址192.168.101.104,再修改DNS配置文件/etc/resolv.config。添加如下內(nèi)容后重啟Kali,配置即可生效。

2.配置客戶端
在Windows 10中解壓縮CobaltStrike4.5.rar,打開cobaltstrike.bat文件,在彈出的“連接”窗口中輸入主機(jī)IP地址192.168.101.104,端口默認(rèn)為50050,用戶默認(rèn)為neo,密碼處輸入服務(wù)端配置的密碼123456,如圖1-52所示。

圖1-52 配置客戶端
單擊“連接”按鈕后彈出查看服務(wù)器指紋是否一致的提示信息,默認(rèn)選擇“是”,出現(xiàn)如圖1-53所示的界面,表示已經(jīng)成功連接至服務(wù)端。
3.會(huì)話交互
Beacon會(huì)話交互是Cobalt Strike的核心功能,用于與遠(yuǎn)程控制被控端建立加密通道以進(jìn)行執(zhí)行命令、上傳和下載文件、執(zhí)行PowerShell腳本等各種任務(wù)。
shell命令用于執(zhí)行DOS命令,如圖1-54所示。

圖1-53 成功連接服務(wù)端

圖1-54 執(zhí)行DOS命令
upload命令用于上傳文件,如圖1-55所示。

圖1-55 上傳文件
sleep命令用于減少通信延遲時(shí)間。因?yàn)镃obalt Strike默認(rèn)目標(biāo)主機(jī)與teamserver的通信時(shí)間為60s,這讓執(zhí)行命令或其他的操作響應(yīng)變得很慢,所以可利用此命令進(jìn)行修改,此處修改成10s,如圖1-56所示。

圖1-56 減少通信延遲時(shí)間
另外,可以用help命令查看更多的Beacon命令,如圖1-57所示。

圖1-57 help命令
- 云原生安全:攻防實(shí)踐與體系構(gòu)建
- 網(wǎng)絡(luò)空間攻防技術(shù)原理
- 零信任網(wǎng)絡(luò):在不可信網(wǎng)絡(luò)中構(gòu)建安全系統(tǒng)
- 等級(jí)保護(hù)測評(píng)理論及應(yīng)用
- 工業(yè)物聯(lián)網(wǎng)安全
- 工業(yè)控制網(wǎng)絡(luò)安全技術(shù)
- 反黑命令與攻防從新手到高手(微課超值版)
- 移動(dòng)APT:威脅情報(bào)分析與數(shù)據(jù)防護(hù)
- 網(wǎng)絡(luò)運(yùn)維親歷記 (網(wǎng)絡(luò)運(yùn)維紀(jì)實(shí)文學(xué))
- Testing and Securing Android Studio Applications
- 軟件安全保障體系架構(gòu)
- 網(wǎng)絡(luò)安全態(tài)勢(shì)感知
- Learn Azure Sentinel
- 聯(lián)邦學(xué)習(xí)原理與算法
- 安全網(wǎng)絡(luò)構(gòu)建