Cobalt Strike 4.1 版本上線linux

前言

拿cobaltstrike 4.1 版本上線linux還是很早的想法了,多次實(shí)驗(yàn)無(wú)奈都失敗了。又沒(méi)有毅力繼續(xù)堅(jiān)持解決掉這個(gè)問(wèn)題。這不,最近又想折騰一下了,翻看各種大佬的博客資料,實(shí)驗(yàn)各個(gè)版本的差異,他終于可以了。在此,做個(gè)記錄。

CrossC2 項(xiàng)目

CrossC2 項(xiàng)目是為了支持cobaltstrike 對(duì)其他平臺(tái)的滲透測(cè)試而開(kāi)發(fā)的插件。目前github上支持cobaltstrike 4.1、4.0、3.14 版本。

image.png

由于之前在本地MAC上做了多次實(shí)驗(yàn),導(dǎo)致環(huán)境比較亂,這里我就記錄做成的這次的實(shí)驗(yàn)。

上線linux主機(jī)

環(huán)境:cobaltstrike 4.1 版本、cobaltstrike客戶端MacOS環(huán)境、cobaltstrike服務(wù)端linux環(huán)境、CrossC2 2.2 版本
下載CrossC2 2.2 版本 https://github.com/gloxec/CrossC2/releases/tag/v2.2(測(cè)試2.2.4版本未上線)

image.png

這里下載這三個(gè)文件。因?yàn)槲冶镜谻obalt Strike 4.1 運(yùn)行在MacOS操作系統(tǒng)上,對(duì)應(yīng)也應(yīng)該下載genCrossC2.MacOS

CrossC2.cna  加載該插件的cna
genCrossC2.MacOS  生成payload的程序
CrossC2Kit.zip  后滲透linux的插件

將三個(gè)文件放在同一文件夾CrossC2下。

image.png
  1. 修改cna 腳本
image.png
  • 修改$CC2_PATH為真實(shí)路徑,對(duì)應(yīng)本地存放的CrossC2路徑。注意最后的/。
  • 修改$CC2_BIN 為payload生成程序,這里用的MacOS系統(tǒng),故不用修改。
  • 賦予genCrossC2.MacOS 執(zhí)行權(quán)限。
  1. 加載cna 腳本
    cobaltstrike 加載CrossC2.cna 腳本,會(huì)多一個(gè)CrossC2 的菜單。
image.png

點(diǎn)擊genCrossC2就可以生成payload。

image.png

這里同樣也需要注意一下。

  • .cobaltstrike.beacon_keys 文件
    復(fù)制服務(wù)端上cobaltstrike目錄下的 .cobaltstrike.beacon_keys到本地目錄下。當(dāng)然位置可以隨意調(diào),主要存在這個(gè)文件,且在生成payload的時(shí)候會(huì)尋找該文件。

  • System
    這個(gè)就是你要生成的程序在哪個(gè)平臺(tái)上運(yùn)行了,目標(biāo)是linux主機(jī)上線,故不更改。

  • Listener
    選擇監(jiān)聽(tīng)器,默認(rèn)reverse_https且只支持https,所以也要?jiǎng)?chuàng)建https的監(jiān)聽(tīng)器。

配置完成后,選擇build生成。

image.png

創(chuàng)建了一條curl命令,用來(lái)下載執(zhí)行payload。同時(shí)也可以在log里看到惡意程序生成的命令。

/Users/cseroad/secure/CrossC2/genCrossC2.MacOS cdn.csxxx.xx 9443 ./.cobaltstrike.beacon_keys null Linux x64 /tmp/CrossC2-test

本地的/tmp/目錄也確實(shí)會(huì)生成 CrossC2-test程序。當(dāng)然手動(dòng)上傳并執(zhí)行CrossC2-test程序效果是一樣的。

image.png

看一下他curl的這個(gè)地址內(nèi)容。

image.png

很容易看出在/tmp/目錄下創(chuàng)建文件夾,然后下載55413端口的qbxTbAHkIt文件重命名并執(zhí)行,而后刪除。
大概過(guò)程就是這個(gè)樣子,我們?cè)趉ali上嘗試執(zhí)行build生成的命令。

  1. 上線kali

在kali上執(zhí)行。

image.png

當(dāng)出現(xiàn)[conf]: alive 證明網(wǎng)絡(luò)可達(dá)。同時(shí)kali上線。

image.png

命令也可正常執(zhí)行。

image.png

擴(kuò)展

以上的實(shí)驗(yàn)我都是用的最簡(jiǎn)單的IP上線的方式,cobaltstrike的證書(shū)也沒(méi)有修改,profiles配置文件也沒(méi)有使用。
嘗試使用域名的方式上線。
在cloudfire上綁定域名,下載私鑰、源證書(shū),重新生成store證書(shū)。(PS:這部分就不過(guò)多闡述了)

openssl pkcs12 -export -in cseroadweb.pem -inkey cseroadweb.key -out cfcert.p12 -name cloudflare_cert -passout pass:ccc123456
sudo keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore cfcert.store -srckeystore cfcert.p12  -srcstoretype PKCS12 -srcstorepass 123456 -alias cloudflare_cert

而后在teamserver中替換cobaltstrike.store為cfcert.store。重新啟動(dòng)。
創(chuàng)建一個(gè)域名的監(jiān)聽(tīng)器。

image.png

重復(fù)上面genCrossC2的操作。
這次選擇自己的云服務(wù)器作為靶機(jī)。

image.png

同樣可行。

image.png
image.png

可見(jiàn)linux上線和證書(shū)、域名沒(méi)有關(guān)系。
如果使用了profile配置文件了呢?
CrossC2 提供了通信協(xié)議的API。
根據(jù)prifile文件,修改c2profile.c文件,包括請(qǐng)求url的信息。
而后gcc編譯為so文件。

gcc c2profile.c -fPIC -shared -o lib_test.so

在CrossC2 項(xiàng)目里加載該lib文件,再build即可。

image.png

也可正常上線、執(zhí)行命令。

image.png

CrossC2Kit 擴(kuò)展

在存在beacon后,就可以加載我們之前下載的CrossC2Kit文件里的CrossC2_loader.cna 腳本,來(lái)豐富我們的后滲透模塊。
加載之前的功能,可以看到只有簡(jiǎn)單的模塊。

image.png

加載之后的功能,就多了一些dumphash、橫向、提權(quán)的模塊。

image.png
cc2_mimipenguin 讀取密碼
cc2_auth, cc2_ssh sudo/su/passwd 等認(rèn)證后門(mén),ssh被連接及連接其他主機(jī)的憑證都將被記錄
cc2_safari_dump, cc2_chrome_dump, cc2_iMessage_dump, cc2_keychain_dump 常見(jiàn)瀏覽器的訪問(wèn)記錄,以及保存的認(rèn)證憑據(jù)都將被獲取
cc2_frp 支持快速TCP/KCP(UDP)的反向socks5加密流量代理
cc2_keylogger  記錄用戶的鍵盤(pán)輸入

以kali為例,就可以讀取密碼。

image.png

總結(jié)

折騰了許久的問(wèn)題終于解決了,多看github、多折騰、多實(shí)踐,不斷嘗試。

參考資料

https://github.com/gloxec/CrossC2/
https://gitee.com/pyking/CrossC2#%E6%A8%AA%E5%90%91%E7%A7%BB%E5%8A%A8-%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95--wiki
https://gloxec.github.io/CrossC2/zh_cn/protocol/

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

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 很早之前已經(jīng)在cobalt strike 上做過(guò)了一些特征處理,作為臨時(shí)的一種方案。不過(guò)并沒(méi)有完全去除,這次...
    CSeroad閱讀 12,499評(píng)論 1 3
  • 0x00 SMB Beacon 簡(jiǎn)介 SMB Beacon 使用命名管道通過(guò)一個(gè)父 Beacon 進(jìn)行通信。這種對(duì)...
    TeamsSix閱讀 579評(píng)論 0 1
  • 終端一chmod +x teamserver./teamserver 192.168.247.129 123456...
    皮一下怎么了閱讀 8,242評(píng)論 2 3
  • 本文僅作學(xué)習(xí)記錄,如有侵權(quán),請(qǐng)聯(lián)系刪除! 前言: ServerChan是一款 程序員 和 服務(wù)器 之間的通信軟件,...
    book4yi閱讀 3,341評(píng)論 3 3
  • 表情是什么,我認(rèn)為表情就是表現(xiàn)出來(lái)的情緒。表情可以傳達(dá)很多信息。高興了當(dāng)然就笑了,難過(guò)就哭了。兩者是相互影響密不可...
    Persistenc_6aea閱讀 129,877評(píng)論 2 7

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