Cobalt Strike(簡稱CS)有很多功能,這篇文章主要介紹最基本的功能:通過exe木馬實現遠程控制。
CS分為兩部分:客戶端和Team Server服務端。這兩部分都依賴Java 1.8,所以運行CS程序前要安裝JRE。
分享一個Cobalt Strike v3.8的試用版,可長期試用。百度網盤:https://pan.baidu.com/s/1nXq58froWt0mu3q8I4HsSQ,提取碼:fdvb。
第1步:啟動CS服務端
將下載的CS程序放到Kali中,執行./teamserver 192.168.56.130 admin123即可啟動Team Server服務。192.168.56.130表示本機IP地址,admin123表示從客戶端登錄時需要填寫的密碼。
CS服務端程序會監聽TCP 50050端口。

第2步:登錄Team Server服務
將下載的CS程序放到Windows中,切換到CS程序目錄,在命令行窗口中運行java -jar cobaltstrike.jar即可啟動客戶端,然后輸入IP地址、用戶名、密碼等信息即可登錄。
用戶名可以隨便寫,我寫的是admin。密碼一定要正確,否則登錄不上去。

登錄成功后你會看到這樣一個操作界面:

第3步:創建監聽器
監聽器就是在CS服務端監聽一個端口用於木馬回連。

點擊Add按鈕添加監聽器:

CS內置了多種類型的監聽器,beacon類型的監聽器表示讓CS服務程序監聽一個端口,foreign類型的監聽器表示外部程序監聽的端口,例如MSF監聽的端口。
這里我選擇windows/beacon_http/reverse_http。

第4步:生成exe木馬
點擊Attacks按鈕生成Windows平台的exe木馬。


第5步:投遞木馬並運行
為了演示,我把生成的exe木馬放到Windows7虛擬機中運行。
第6步:木馬上線
運行exe文件之后,在CS客戶端界面會有上線提示。

第7步:遠程操控
CS生成的木馬默認60秒回連一次,這就導致我們不能實時操作遠程PC。通過修改sleep時間可以達到實時操作的功能,建議把sleep時間修改為1秒或0秒。

單擊鼠標右鍵然后選擇Interact會進入命令行交互窗口。

在界面最底下有個beacon>輸入框,這就是輸入命令的地方。例如:輸入shell calc.exe將會在被控PC上彈出計算器。輸入help會顯示幫助文檔。
通過CS還能瀏覽被控PC的文件目錄,實現截屏、端口掃描等功能,大家把每一個都試試。

第8步:提權
到目前為止,我們掌握的是PC電腦的普通權限。如果我們要修改注冊表或執行某些危險操作時,系統會彈出用戶賬戶控制(UAC)來提示用戶是否進行危險操作,這將被目標察覺出來。因此我們有必要進行提權操作。
CS內置的提權工具很少,GitHub上有個提權工具包,使用這個工具包可以增加幾種提權方法:https://github.com/rsmudge/ElevateKit
點擊Script Manager按鈕打開腳本管理界面,然后點擊底下的Load按鈕加載elevate.cna文件。


單擊鼠標右鍵選擇Elevate進入提權操作界面:

這里有多個提權方法,大家把每一個都試一下,總有一個成功。

如果提權成功,session列表中會增加一個新會話,星號(*)表示該會話是一個提權成功的會話。
提權成功后我們再執行危險操作時被控PC就不會有UAC提示,被控目標也不會察覺。

講到這里,基本上把CS的exe遠控功能介紹完了。大家如果還有不明白的地方可以到CS官網看看教程,用Google搜一搜其他教程再學習學習。
