・CVE-2017-11882 Officeの数式エディタの脆弱性を使った攻撃 のバックアップ(No.5)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- ・CVE-2017-11882 Officeの数式エディタの脆弱性を使った攻撃 へ行く。
- 1 (2019-11-23 (土) 13:47:39)
- 2 (2019-11-23 (土) 14:27:56)
- 3 (2020-03-17 (火) 15:41:00)
- 4 (2020-07-13 (月) 13:33:43)
- 5 (2020-07-31 (金) 09:02:04)
FrontPage
・攻撃ベクトルの研究
本稿は、FIREEYE社の脅威調査: https://www.fireeye.com/blog/threat-research/2017/12/targeted-attack-in-middle-east-by-apt34.html を参考にしました。
攻撃に利用された脆弱性 †
- CVE-2017-11882 :https://www.ipa.go.jp/security/ciadr/vul/20171129_ms.html
以下に搭載された数式エディタのスタックベースのバッファーオーバーフローを悪用したものです。- Office 2007 SP3
- Office 2010SP2(32/64bit)
- Office 2013SP1(32/64bit)
- Office 2016(32/64bit)
攻撃のフロー †
ワークフローで使用されたコンポーネント †
名前 | 役割 |
PowerShell | 標準スクリプト言語 |
MSHTA.EXE | Microsoft HTML Application Host、HTAファイルの実行エンジン |
VBScript | Windows標準スクリプト言語 |
CERTUTIL.EXE | Windows標準コマンド:証明書ユーティリティ |
SCHTASKS.EXE | Windows標準コマンド:タスクスケジューラ |
手口 †
- 攻撃者は、リッチテキストフォーマットに細工をした数式を埋め込みターゲットにメールの添付ファイルとして送信します。
- 受信者が添付ファイルを開くと、受信者の脆弱な数式エディターが起動し数式を読み込みますが、この際、数式エディターがデータ長を正しくチェックしないため、スタックメモリが破壊され、悪意のあるプログラムが実行されます。
- 悪意あるプログラムは、WinExec関数を呼び出し、受信者のコンテキストで子プロセス「mshta.exe」を呼び出します。「mshta.exe」は外部サイトからテキストファイルに見せかけた悪意あるPowerShellスクリプトをダウンロードし実行します。
- 悪意あるPowerShellスクリプトは、さらにテキストファイルに見せかけたVBScriptをダウンロードし、実行します。
- VBScriptは、C:\ProgramData\Windows\Microsoft\java\ に4つのコンポーネントをダウンロードします。
- このうちBase64でエンコードされた2つのコンポーネントは、証明書関連の正規のユーティリティである Certutil.exe を利用しデコードし、PowerShellスクリプトに変換されます。
- 残りの2つのファイルの内、バッチファイルが永続化のためのVBScriptをタスクスケジューラに登録します。
- 定期的に起動されるPowerShell スクリプトは、C&Cサーバーと通信し、追加の悪意あるコンポーネントダウンロードします。
設定対策 †
本件は、PowerShellの実行ポリシーを禁止にするべきか、署名済みスクリプトのみ許可する、とし、環境評価によって、VBScriptの実行停止、もしくは、コマンドラインのブラックリスト化を行うことで、十分に抑止できたと考えられます。
- ユーザーにローカル管理者権限を与えない。
- Officeの数式エディターの脆弱性アップデート。
- グループポリシーによるPowerShellの実行ポリシーの制御(停止、署名済みのみ許可等)。
- AppLocker、Defender Application制御を使ったMSHTA.EXE、CERTUTIL.EXE、SCHETASKS.EXEの実行制御。
- Registry設定によるVBScriptエンジン(WSCRIPT.EXE、CSCRIPT.EXE)の停止、署名のみ許可設定。