MENU

ASR Rule Office マクロからの Win32 API 呼び出しをブロックする

概要

  • 初期侵入対策
  • GUID: 92e97fa1-2edf-4476-bdd6-9dd0b4dddc7b
  • 推奨設定値:1: ブロック (攻撃面の縮小ルールを有効にする)

このルールは、Office マクロが Windows の低レベル API(Win32 API)を直接呼び出し、シェルコード実行・プロセス生成・メモリ操作を行う攻撃を遮断する、というものです。
通常の VBA マクロは、「Office オブジェクト(Excel / Word / Outlook)」、「ファイル操作」、「計算・帳票処理」といった 業務向け API に限定されます。
一方で、攻撃者は VBA から Win32 API を呼び出し、OS レベルの操作に踏み込みます。このルールは、以下の条件を満たした場合に発動します。特に、WMI や PowerShell を経由せず、直接、Windows API にアクセスした時点でブロックされます。

  • VBA マクロ実行中
  • Win32 API 呼び出し宣言/実行
  • Office プロセス(WINWORD.EXE / EXCEL.EXE)

設定

  • グループポリシー
    • [ コンピューターの構成 ]>[ ポリシー ]>[ 管理用テンプレート ]>[ Windows コンポーネント ]>[ Microsoft Defender ウイルス対策 ]>[ Microsoft Defender Exploit Guard ]>[ Attack Surface Reduction ]>[ Attack Surface Reduction 規則の構成 ]:[ 有効 ]
      • [ 各 ASR 規則の状態を設定します。]:[ 表示 ] をクリックする。
        • [ 値の名前 ]:92e97fa1-2edf-4476-bdd6-9dd0b4dddc7b
        • [ 値 ]:
          • 0: 無効にする (攻撃面の縮小ルールを無効にする)
          • 1: ブロック (攻撃面の縮小ルールを有効にする)
          • 2: 監査 (攻撃面の縮小ルールが有効な場合にorganizationに与える影響を評価する)
          • 6: 警告 (攻撃面の縮小ルールを有効にするが、エンド ユーザーがブロックをバイパスできるようにする)

監査

Defender Operational ログ:

  • ID 1121(ASR: child process blocked)

ログには、以下が表示されます。

  • Process: WINWORD.EXE / EXCEL.EXE
  • User: 実行ユーザー
  • Details: Win32 API 呼び出し

推奨設定と運用上の注意点

有効にすることを推奨します。
業務マクロで Win32 API を直接アクセスするケースは、皆無といってよく、Office 標準 API、もしくは、.NET / COM /ドライバ API で代用が可能です。VBA マクロは、メール経由での侵入やユーザー操作で実行可能ですが、そのマクロが Win32 API を自由にアクセスできるとことを許可することは、攻撃者にも Win32 API を公開することとなります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次