0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

テナント制限v2 で Microsoftエンドポイントのファイアウォール保護を WDACポリシーで制御してみた

Last updated at Posted at 2023-09-17

はじめに

この記事は、以下のサイト「Microsoft Entra テナント制限v2 で 外部テナントへのアクセスをブロックする」という記事の参照先になっています。
まず、以下のサイトを初めに参照ください。

テナント制限v2 の使用時に、「Microsoftエンドポイントのファイアウォール保護」を有効にすると、すべてのアプリが Microsoftエンドポイントへのアクセス時に ファイアウォールでブロックされてしまい、何もできません。

この記事では、WDACポリシー を使って Edgeなどの Microsoftアプリ だけを除外対象にして 利用できるようにする手順を紹介しています。
※除外している目的は、テナント制限v2 に対応しているアプリだけを使えるようにし、 それ以外のアプリは 引き続きブロック するようにして、テナント制限 の完全性を満たすことです。

(Chrome、Firefox、および PowerShell などの .NET アプリケーションをブロックする)
★前提として、テナント制限v2 で制御可能なのは Edgeや Officeアプリなどであり、他社製アプリは制御できません。
https://learn.microsoft.com/ja-jp/azure/active-directory/external-identities/tenant-restrictions-v2#block-chrome-firefox-and-net-applications-like-powershell

この記事を書くことになったのは、上記の公開情報が あまりにも分かりづらかったからです。
PowerShell を除外する説明はあっても、じゃあ Edge や Officeアプリがブロックされてしまうのは、どうやって解除すれば良いのか分からないからです。


設定の Before / After

ファイアウォール保護:無効

左:Edge 右:Chrome
テナント制限が、Edge でしか機能しない。Chrome では外部テナントにサインイン可
image.png
この状態だと、Edge は希望通りの動作なのですが、Chrome を使って外部アクセスできてしまうので、セキュリティ要件を満たせません。


ファイアウォール保護:有効、WDACポリシー適用前

左:Edge 右:Chrome
両ブラウザとも、Office365や Azure Portal などの Microsoftサービスを利用できない。
image.png
この状態だと、Microsoft 365 や、Azure Portal のほか、Microsoft Entra アカウントで認証するサービスが一切使えません。


ファイアウォール保護:有効、WDACポリシー適用後

左:Edge 右:Chrome
Edge は、Microsoftサービス を利用できるようになり テナント制限も有効
Chrome は、Microsoftサービス を利用できない。
image.png
この状態が 理想です。

では、次章から この構成を行うための手順を紹介していきます。


構成手順

1. ポリシーファイル (.csp) の作成

1-1. 事前準備(資材の入手)

1.任意の Windowws 10 マシンで 以下のサイトからダウンロードした WDAC ウィザードをインストールします。
(WDAC Policy Wizard)
https://webapp-wdac-wizard.azurewebsites.net/
image.png

image.png

image.png

image.png

2.同じマシンで、以下のサイトから RefreshPolicy ツールをダウンロードします。
(Refresh WDAC Policy)
https://www.microsoft.com/en-us/download/details.aspx?id=102925

image.png

image.png

image.png

1-2. WDAC タグ付けの構成

資材を入手した Windows 10 上で作業を続けます。

  1. WDAC 構成ウィザードを起動し、[Policy Creator] を選択します。
    image.png
     
  2. [Base Policy] を選択します。
    image.png
     
  3. [Default Windows Mode] を選択します。
    image.png
     
  4. 既定値のまま「Next」
    image.png
     
  5. 既定値のまま「Next」
    image.png
     
  6. ポリシーの作成が完了。赤下線部のパスを 確認します。
    image.png
     
  7. PowerShell を 管理者モードで開き、上記の画面で 赤下線部に記載されていたパスへ 移動します。(C:\Users<ユーザー名>\Documents)
    image.png
     
  8. メモ帳で XML ファイルを開きます。
    notepad .\WindowsWorks<日付>.xml
    image.png
     
  9. "SigningScenrios" セクショングループ内の "SigningScenario" セクションのうち Value=131 が登録されているセクション全体を削除して、上書き保存します。
    image.png
     
  10. 以下のコマンドを実行して「M365ResourceAccessEnforcement」というタグ名で タグ付けを行う。
    Set-CIPolicyIdInfo -ResetPolicyID -FilePath .\WindowsWorks<日付>.xml -AppIdTaggingPolicy -AppIdTaggingKey "M365ResourceAccessEnforcement" -AppIdTaggingValue "True"
    image.png
     
  11. 出力結果として、緑下線部のように 新しいポリシーID が表示されるので、コピーしてください。
    PolicyID = {ポリシーID}

1-3. バイナリファイルへの変換 (xml → cip)

  1. 以下のコマンドを実行して XML のポリシーファイルをバイナリファイルに変換します。
    Convertfrom-CIPolicy .\WindowsWorks<日付>.xml ".\{ポリシーID}.cip"
    ※控えたポリシーID を利用
    image.png
     
  2. dirコマンドで バイナリ変換されたファイルがあることを確認します。
    image.png

2. ローカル PC へ WDAC ポリシーの適用

  1. 以下のパスへ 前章で作成した .csp ファイルをコピーする。
    パス: C:\Windows\System32\CodeIntegrity\CiPolicies\Active
    image.png

2.事前にダウンロードした RefreshPolicy ツールを実行する
& '.\RefreshPolicy(AMD64).exe'
image.png

別の端末に cipファイルを コピーした場合は、 RefreshPolicy ツール をインストールして 上記と同じコマンドを実行することで、ポリシーを その端末へ適用できます。

3. Microsoftエンドポイントのファイアウォール保護を有効にする

  1. ローカル PC で「グループポリシーの管理」ツールを開きます。
  2. 左ペインのメニューから、以下を辿って開きます。
    [コンピューターの構成]
      [ポリシー]
        [管理用テンプレート]
          [Windowsコンポーネント]
            [テナント制限]
              [クラウドポリシーの詳細]

3.「クラウドポリシーの詳細」を開いたら、下図の通りに入力します。

  • 緑枠 = テナント制限v2 の テナント ID の情報から転記
  • 青枠 = テナント制限v2 の ポリシー ID の情報から転記
  • 「Microsoftエンドポイントのファイアウォール保護を有効にする」にチェックを入れる

image.png

ディレクトリ ID(緑枠)と、ポリシー GUID(青枠)は、以下の画面の場所から転記してください。
image.png

4.gpupdate /force コマンドを実行します。

動作確認

以下の通り、Edge(左側)は Microsoft 365 にアクセスでき、Chrome(右側)は サインイン画面に入る事ができなくなった事が確認できます。
image.png

WDACポリシー を複数のデバイスへ展開するには

以下の公開情報を参考に、WDACポリシー (cipファイル) を端末に配布して 展開が可能です。

Intune で展開する(検証済み)

以下の記事で説明しています。
私の方でも、検証済みで おススメの方法です。

Intune 以外の方法は、私も未検証で、仕組みの紹介レベルです。ご注意ください。

ツールを導入して GPO で有効化する

展開する 全VM に WDACポリシー更新ツール をインストールして、コマンドでアクティブ化します。
ツールの展開は、アプリケーションの配布機能などを使う必要があります。
コマンドは、GPO を使って スクリプトを配布&実行させれば良さそうです。

これは、前章で ローカルで実行したことと、基本的には同じ手順です。ツールの配布が面倒ですが、この方法は 理解しやすいですし、手動で成功している方法なので、確実性が高そうです。

(Windows 11、Windows 10 バージョン 1903 以降、および Windows Server 2022 以降のポリシーの展開)
https://learn.microsoft.com/ja-jp/windows/security/application-security/application-control/windows-defender-application-control/deployment/deploy-wdac-policies-with-script#deploying-policies-for-windows-11-windows-10-version-1903-and-above-and-windows-server-2022-and-above

WMI スクリプトで展開する

WDAC ポリシーを GPO などで配りさえすれば、あとは スクリプトで有効化できそうです。

(スクリプトを使用して WDAC ポリシーをデプロイする -
 - 他のすべてのバージョンの Windows および Windows Server のポリシーの展開)
https://learn.microsoft.com/ja-jp/windows/security/application-security/application-control/windows-defender-application-control/deployment/deploy-wdac-policies-with-script#deploying-policies-for-all-other-versions-of-windows-and-windows-server

GPO で展開する

GPOで展開する方法です。しかし「メモリ整合性」を理解していないといけなさそうです。トラブっても 解析が難しいと思います。

(Windows Defender アプリケーション制御 (WDAC) ポリシーの展開)
https://learn.microsoft.com/ja-jp/windows/security/application-security/application-control/windows-defender-application-control/deployment/wdac-deployment-guide

(グループ ポリシーを使用してアプリケーション制御ポリシー Windows Defender展開する)
https://learn.microsoft.com/ja-jp/windows/security/application-security/application-control/windows-defender-application-control/deployment/deploy-wdac-policies-using-group-policy

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?