OSX 攻擊框架Empyre簡介

wyzsk發表於2020-08-19
作者: Evi1cg · 2016/05/17 9:46

0x00 簡介


隨著OSX使用者越來越多,針對OSX的攻擊也越來越多。前不久,Empire團隊又推出一個新的攻擊框架,針對於OSX的攻擊框架Empyre,此框架由Python建立在密碼學基礎上編寫,使用過Empire的同學對此框架應該能很快上手,此文將對Empyre框架的使用方式做一下簡單的的介紹。

0x01 安裝


使用如下命令進行安裝:

#!bash
☁  Desktop  git clone https://github.com/adaptivethreat/EmPyre 
☁  Desktop  cd EmPyre/setup
☁  setup [master] ./install.sh

安裝指令碼會安裝一些依賴庫,並且最後執行setup_database.py 進行各項設定,可以手工修改。setup目錄下的reset.sh指令碼可以對EmPyre進行重置。

0x02 使用


進入主目錄,執行

#!bash
☁  EmPyre [master] python empyre

則可進入主選單

Alt text

現在已經包含了43個可使用的模組

Listeners

要使用此框架,首先需要建立Listeners,直接輸入listeners則可進去Listeners的配置頁面,輸入help,可以檢視幫助,info命令可以檢視詳細的配置資訊,下面截圖是一個簡單的Listeners配置。

Alt text

配置監聽的ip及埠需要設定Host

#!bash
set Host http://192.168.74.141:8080

之後執行

#!bash
(EmPyre: listeners) > execute

可以開啟監聽,使用list可以檢視開啟的listener

Alt text

如果需要配置HTTPS的listener,需要配置CertPath

#!bash
set CertPath ./data/empyre.pem

Stagers

建立好Listeners之後,需要配置Stagers ,Stagers 存放在./lib/stagers 目錄下,現在已有的stagers如下:

Alt text

在listeners下輸入usestager+空格之後按TAB鍵則可看到這些可用的stagers。現在可用的stagers 分別為:

  • applescript: 生成AppleScript的payload。
  • dylib: 生成動態庫型別的payload。(怎麼使用請看這裡
  • hop_php: 生成php型別的payload。
  • launcher: 生成一行python程式碼作為payload。
  • macho: 生成macho型別的payload(OSX可執行檔案)。
  • macro: 生成MAC Office宏。
  • safari_launcher: 生成一個HTML檔案作為payload。(誘使使用者執行applescript)
  • war: 生成war型別的payload。

launcher為生成一行程式碼,被攻擊者執行程式碼則被攻擊者控制,下面使用macro以及safari_launcher兩個好玩兒的方式來做一下示例:

1、macro

使用方式如下圖:

Alt text

生成宏程式碼,建立任意office檔案。開啟宏設定

Alt text

將宏程式碼寫入:

Alt text

之後再次開啟此work會有如下提示:

Alt text

點選啟用宏,執行程式碼,受害者被控制:

Alt text

2、safari_launcher

使用方式如下:

Alt text

將生成的html程式碼儲存到test.html,放到web伺服器上,可以看到程式碼中的applescript 則為要執行的applescript程式碼。訪問此頁面如下圖:

Alt text

Command+R鍵以後,彈出如下頁面:

Alt text

點選新指令碼,開啟指令碼編輯器,程式碼藏在最下面:

Alt text

一旦點選三角符號的執行按鈕,則受害者被控制:

Alt text

其他的就不多介紹了,有興趣的可以自己嘗試一下

agents

1、基礎使用

獲取agents怎麼使用呢,首先可以檢視help:

Alt text

命令比較簡單,要切換到一個agent,使用如下命令即可:

#!bash
interact PI5M01QWZ4TJAUQA

如果覺得名字不好記,可以執行如下命令對agnet進行重新命名:

Alt text

切換到agent裡面之後,可以help檢視可執行的命令:

Alt text

如果要執行系統命令,可使用shell來執行:

Alt text

2、模組使用

Empyre提供了多個可使用模組,輸入usemodule空格之後按TAB鍵則可列出當前可使用的模組,如下圖:

Alt text

包括資訊蒐集,許可權提升,維持許可權等多個模組,這裡就不一一介紹了,介紹幾個比較好玩兒的:

collection/osx/prompt:

此模組可透過社會工程學獲取當前使用者所用的密碼。

Alt text

執行以後,會開啟AppStore,並詢問密碼,如下圖:

Alt text

當使用者輸入密碼以後,我們就獲取到了他輸入的密碼:

Alt text

collection/osx/webcam:

此模組可進行攝像頭拍照

Alt text

collection/osx/browser_dum

此模組可獲取瀏覽器歷史記錄

Alt text

privesc/multi/sudo_spawn

此模組可用於許可權提升

首先建立一個新的Listener:

Alt text

切換到agent以後,使用此模組:

Alt text

可以看到輸入密碼以後(密碼可以透過prompt模組或者資訊蒐集獲得),獲取了一個新的agent,並且此agent獲取了最高的許可權,如下圖:

Alt text

其他模組,我這裡就不一一介紹了,有興趣的小夥伴可以自己去嘗試一下,而且維持許可權的模組已經有4個了,還是很給力的。

0x03 小結


看到這個工具還是挺開心的,本文僅僅是對此工具進行了一個簡單的使用介紹,有興趣的可以看一下原始碼然後自己編寫自己所需要的模組或功能,希望此文對你能有所幫助。

本文由Evi1cg原創並首發於烏雲drops,轉載請註明

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章