Cobalt Strike從入門到精通之簡單介紹


風炫安全之CobaltStrike系列視頻教程

https://www.bilibili.com/video/BV1P64y1f7e1?p=1

個人介紹

主攻方向:Web安全、網絡安全、安全開發。

ID:風炫

知識庫:https://evalshell.com

這節課講解: 定制化Cobalt Strike配置文件

教程只是為了提供學習和研究,所有技術切勿用於非法用途!

Cobalt Strike 介紹

Cobalt Strike是一款滲透測試神器,常被業界人稱為CS神器。Cobalt Strike已經不再使用MSF而是作為單獨的平台使用,它分為客戶端與服務端,服務端是一個,客戶端可以有多個,可被團隊進行分布式協團操作。 Cobalt Strike集成了端口轉發、掃描多模式端口Listener、Windows exe程序生成、Windows dll動態鏈接庫生成、java程序生成、office宏代碼生成,包括站點克隆獲取瀏覽器的相關信息等。 早期版本Cobalt Srtike依賴Metasploit框架,而現在Cobalt Strike已經不再使用MSF而是作為單獨的平台使用1。 這個工具的社區版是大家熟知的Armitage(一個MSF的圖形化界面工具),而Cobalt Strike大家可以理解其為Armitage的商業版。

本文講解4.0版本

官方網站: https://www.cobaltstrike.com/

CS的發展

Armitage [2010-2012]

Armitage是一個紅隊協作攻擊管理工具,它以圖形化方式實現了Metasploit框架的自動化攻擊。Armitage采用Java構建,擁有跨平台特性。

Cobalt Strike 1.x [2012-2014]

Cobalt Strike 增強了Metasploit Framework在執行目標攻擊和滲透攻擊的能力。

Cobalt Strike 2.x [2014-?]

Cobalt Strike 2是應模擬黑客攻擊的市場需求而出現的,Cobalt Strike 2是以malleable C2技術的需求為定位的,這個技術使Cobalt Strike的能力更強了一些。

Cobalt Strike 3.x [2015-?]

Cobalt Strike 3的攻擊和防御都不用在Metasploit Framework平台(界面)下進行

Cobalt Strike 4.x [2019-?]

這個版本改進了Cobalt Strike的分布式操作模型,修改了開發后的工作流程以減少一些歷史包袱,並為特權升級和橫向移動添加了“自帶武器”工作流。

Cobalt Strike的C/S架構

img

  • 客戶端(Client GUI) Swing
    • 團隊成員使用的圖形化界面
  • 服務器(Team Server)
    • 控制 - Team Server是Cobalt Strike中所有payload的主控制器,與victim的所有連接bind/reverse都由Team Server管理。
    • 日志記錄 - Cobalt Strike中發生的所有事件 保存在logs文件夾
    • 信息搜集 - 收集在后滲透階段發現的、或攻擊者在目標系統上用於登錄的所有憑據credentials
    • 自定義腳本 - cat teamserver可看到該文件是一個簡單的bash腳本(可根據自己要求修改) 調用Metasploit RPC服務msfrpcd並啟動服務器cobaltstrike.jar

運行環境

  • Team Server 推薦運行環境

    • Kali Linux 1.0, 2.0 – i386 and AMD64
    • Ubuntu Linux 12.04, 14.04 – x86, and x86_64
  • Client GUI 運行環境

    • Windows 7 and above
    • macOS X 10.10 and above
    • Kali Linux 1.0, 2.0 – i386 and AMD64
    • Ubuntu Linux 12.04, 14.04 – x86, and x86_64

功能了解

Listenrs

任何行動的第一步都是建立基礎設施。就 Cobalt Strike 而言,基礎設施由一個或多個團隊服務器、重定向器以及指向你的團隊服務器和重定向器的 DNS 記錄組成。一旦團隊服務器啟動並運行,你將需要連接到它並將其配置為接收來自受害系統的連接。監聽器就是 Cobalt Strike 中用來執行這種任務的機制。
一個監聽器既是一個 payload 的配置信息,同時又是 Cobalt Strike 起一個服務器來接收來自這個payload 的連接的指示。一個監聽器由用戶定義的名稱、payload 類型和幾個特定於 payload 的選項組成。

使用Cobalt Strike首先需要創建一個Listener,依次點擊 Cobalt Strike -> Listeners ,然后點擊Add便可以創建自己想要的Listeners
除了以下標為x86/x64,其它只支持32位

windows/beacon_dns/reverse_dns_txt
windows/beacon_dns/reverse_http x86/x64
windows/beacon_http/reverse_http x86/x64
windows/beacon_https/reverse_https x86/x64
windows/beacon_smb/bind_pipe x86/x64
windows/foreign/reverse_dns_txt
windows/foreign/reverse_http
windows/foreign/reverse_https
windows/foreign/reverse_tcp

其中windows/beacon為內置監聽器,包括dns、http、https、smb四種方式的監聽器;windows/foreign為外部監聽器,配合Metasploit或者Armitage的監聽器。

通常被控制的主機每60秒發送一心跳,如果平常不用基本是沒有什么流量。

img

View

Applications -> 獲取瀏覽器版本信息
Credentials -> 憑證,當通過hashdump或者Mimikatz抓取過的密碼都會儲存在這里。
Downloads -> 下載文件
Event Log -> 主機上線記錄,以及團隊協作聊天記錄
Keystrokes -> 鍵盤記錄
Proxy Pivots -> 代理模塊
Screenshots -> 進程截圖
Script Console -> 控制台
Targets -> 顯示目標
Web Log -> Web訪問記錄

Attack

Packages

HTML Application   # 生成(executable/VBA/powershell)這三種原理實現的惡意HTA木馬文件
MS Office Macro   # 生成office宏病毒文件
Payload Generator   # 生成各種語言版本的payload
USB/CD AutoPlay   # 生成利用自動播放運行的木馬文件
Windows Dropper   # 捆綁器能夠對任意的正常文件進行捆綁(免殺效果差)
Windows Executable   # 生成可執行exe木馬
Windows Executable(Stageless)   # 生成無狀態的可執行exe木馬

Web Drive-by

Manage   # 對開啟的web服務進行管理
Clone Site   # 克隆網站,可以記錄受害者提交的數據
Host File   # 提供文件下載,可以選擇Mime類型
Scripted Web Delivery   # 為payload提供web服務以便下載和執行,類似於Metasploit的web_delivery 
Signed Applet Attack   # 使用java自簽名的程序進行釣魚攻擊(該方法已過時)
Smart Applet Attack   # 自動檢測java版本並進行攻擊,針對Java 1.6.0_45以下以及Java 1.7.0_21以下版本(該方法已過時)
System Profiler   # 用來獲取系統信息,如系統版本,Flash版本,瀏覽器版本等
Spear Phish   # 魚叉釣魚郵件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM