Microsoft Security Baselineを調べてみた
はじめに
こんにちは、株式会社SHIFT ITソリューション部の田平です。
セキュリティ構成基準を作成するにあたり、Microsoft Security Baselineについて調べてみました。
Microsoft Security Baselineとは?
Microsoftが提供しているセキュリティ機能を設定するためのガイダンス。
Excel、GPOなどの形式で提供されています。
検証環境
今回は以下の環境で検証を行います。
Active Directoryの環境構築は今回の範囲外で、事前に設定してある前提です。
事前準備
Security Baselineを使うためには、Microsoft Security Compliance Toolkitを使ってActive DirectoryにGPOをインポートするか、OSに直接適用します。
Microsoft Security Compliance Toolkit 1.0 から必要なファイルをダウンロードします。
Downloadボタンをクリックすると表示される一覧で必要なファイルにチェックします。
今回はWindows Server 2022、Windows 11、Edgeについて、試しますので以下のファイルをダウンロードします。
LGPO.zip
Windows Server 2022 Security Baseline.zip
Windows 11 v23H2 Security Baseline.zip
Microsoft Edge v117 Security Baseline.zip
※Edgeについては随時に更新されているようなので、2024/4/28時点のバージョンです。
LGPO.zip にはGPOのインポートで必要になる実行ファイル、Security Baseline.zip には以下のようなフォルダ構成で対象のGPO等が含まれています。
Documentation
Release Notesや設定値をまとめたExcelファイルなどが保存GP Reports
GPOの設定を出力したHTMLファイルが保存GPOs
バックアップされたGPOが保存Scripts
GPOインポート用のPoweShellスクリプトが保存Templates
ADMXが保存
※Edgeには含まていません。
ダウンロードしたファイルを展開し、各Security Baseline.zipを展開した先のToolsフォルダにLGPO.exeを保存します。
Windows Server-2022-Security-Baseline-FINAL\Scripts\Tools\LGPO.exe
Windows 11 v23H2 Security Baseline\Scripts\Tools\LGPO.exe
Microsoft Edge v117 Security Baseline\Scripts\Tools\LGPO.exe
各Security Baseline.zipを展開した先のScriptsフォルダに保存されているPowerShellスクリプトを実行することでグループポリシーがインポートされます。
Baseline-ADImport.ps1
ADのグループポリシーにインポートする場合に利用Baseline-LocalInstall.ps1
実行するOSに適用する場合に利用
このスクリプト実行時はOSの種類(ドメインコントローラーかメンバーサーバか等)によって、以下のように実行時のオプションが必要
-Win11DomainJoined : ドメイン参加済みのWindows11向け
-Win11NonDomainJoined : ドメイン未参加のWindows11向け
-WSMember : ドメイン参加済みのメンバーサーバ向け
-WSNonDomainJoined : ドメイン未参加のサーバ向け
-WSDomainController : ドメインコントローラー向け
※Edgeではオプションは不要Remove-EPBaselineSettings.ps1
以前のExploit Protectionの設定に問題があったようで、その設定を削除するスクリプト
※EdgeのBaseline.zipには含まれていない。
今回はADのグループポリシーにインポートするため、PowerShellを管理者で起動し、Baseline-ADImport.ps1を実行しますが、PowerShellスクリプトを実行する前に、Set-Execution PolicyでPowerShellの権限を上げるか、実行スクリプトに許可設定を行ってください。
許可するスクリプトは各Security Baselineの以下のファイルになります。
\ScriptsBaseline-ADImport.ps1
\ScriptsTools\MapGuidsToGpoNames.ps1
実行許可の設定が終わったら、各SecurityBaselineのBaseline-ADImport.ps1を実行します
Windows Server-2022-Security-Baseline-FINAL\Scripts\Baseline-ADImport.ps1
Windows 11 v23H2 Security Baseline\Scripts\Baseline-ADImport.ps1
Microsoft Edge v117 Security Baseline\Scripts\Baseline-ADImport.ps1
インポートされた設定
各BaselineのPowershellスクリプトを実行すると、以下のGPOがインポートされます。(2024/04/28時点)
■Windows Server 2022 Security Baseline
■Windows 11 v23H2 Security Baseline
■MSFT Edge Version 117 - Computer
※Windows Server 2022標準ではEdgeのポリシー定義(ADMX)が入っていないため、設定内容を確認するにはセントラルストアを構成するなどして、Edgeのポリシー定義(ADMX)を登録してください。
グループポリシーの適用
GPOを適用するOUにリンクを設定していきます。 検証環境では各OUに以下のように設定してみました。 リンクは上から順に優先度高く設定しています。
ad.example.internal(※検証環境のドメイン名)
MSFT Windows Server 2022 - Domain Security
MSFT Edge Version 117 - Computer
MSFT Windows 11 23H2 - User
MSFT Internet Explorer 11 - Computer
MSFT Internet Explorer 11 - User
Default Domain PolicyDomain Controllers
MSFT Windows Server 2022 - Domain Security
MSFT Windows Server 2022 - Defender AntivirusServers
MSFT Windows Server 2022 - Member Server
MSFT Windows Server 2022 - Defender AntivirusClients
MSFT Windows 11 23H2 - Computer
MSFT Windows 11 23H2 - Defender Antivirus
※画像では以前テストしたLAPSのGPOが設定されています。
適用後はドメインコントローラーでEdgeが起動できないようになるなど、運用上少し不便な部分はあるものの、おおむね問題なく使えています。
運用上、Seciruty Baselineの設定で問題がある場合は、Security BaselineのGPOを直接編集せずに新たなGPOを作成し、適用時に設定を上書きすることがおすすめです。
参考情報
Microsoft セキュリティ コンプライアンス ツールキット - 使用方法
\この公式ブロガーの他の記事を読む/
お問合せはお気軽に
https://service.shiftinc.jp/contact/
SHIFTについて(コーポレートサイト)
https://www.shiftinc.jp/
SHIFTのサービスについて(サービスサイト)
https://service.shiftinc.jp/
SHIFTの導入事例
https://service.shiftinc.jp/case/
お役立ち資料はこちら
https://service.shiftinc.jp/resources/
SHIFTの採用情報はこちら
https://recruit.shiftinc.jp/career/