
かつて山市良と呼ばれたおじさんのブログ
セイテクエンジニアのブログ かつて山市良と呼ばれたおじさんのブログ vol.80 CIS対応のセキュリティ態勢を簡単に導入、維持できる新機能「OSConfig」|Windows Server 2025大特集(17)
2025年02月03日配信
2025年04月25日更新
執筆者:山内 和朗
ベストプラクティスまたはカスタマイズされたセキュリティベースラインをWindows Serverに実装することで、サーバーや仮想マシン(VM)を最初から推奨されるセキュリティ態勢に基づいた状態にすることができます。Windows Server 2025には、350を超える構成済みのセキュリティベースラインが用意されており、新機能「OSConfig」を使用して簡単に導入、維持することができます。
Windows Server 2025でサポートされるようになったPowerShellベースの外部ツール「OSConfig」は、推奨されるセキュリティ設定をサーバーやVMに展開し、そのセキュリティ態勢を維持するのに役立ちます。例えば、OSConfigでWindows Serverのセキュリティベースラインを適用することで、レガシTLSプロトコルやレガシ暗号化プロトコルを無効にして、セキュリティ態勢を強化できます。また、「Center of Internet Sercurity(CIS)ベンチマーク」や「Defense Information Systems Agency Security Technical Implementation Guides (DISA STIG) 」で推奨されるOSのセキュリティベースライン要件を満たすことができます。
OSConfig の概要|Windows Server(Microsoft Learn)
CIS Benchmarks List|Center for Internet Security
Security Technical Implementation Guides (STIGs)|DoD Cyber Exchange
Windows Server 2022以前のWindows Serverについては、以下のサイトでCISベンチマークが公開されていますが、Windows Server 2025についてはまだ掲載されていません。OSConfigを使用すると、CISベンチマークを満たすように、Windows Server 2025のセキュリティ設定を簡単に構成することができます。
CIS Microsoft Windows Server Benchmarks|Center for Internet Security
現在、OSConfigでは、Windows Server 2025のドメインメンバー(SecurityBaseline/WS2025/MemberServer)、非ドメインメンバー(SecurityBaseline/WS2025/WorkgroupMember)、ドメインコントローラー(SecurityBaseline/WS2025/DomainController)、Azure Local(SecurityBaseline/AzureStackHCI)、セキュアコアサーバー(SecuredCore)、Microsoft Defender Antivirus(Defender/Antivirus)のベースラインが提要されており、350を超えるセキュリティ設定を簡単に実装することができます。そのセキュリティ設定の完全な一覧(レジストリの場所や値など)は、CCE(Common Confguration Enumeration共通セキュリティ設定一覧)IDなどの情報とともに、以下のサイトで確認することができます(画面1)。今回は説明しませんが、「App Control for Business」(実行が許可されたソフトウェアの強制または監査)用のシナリオも用意されています。*1 なお、OSConfigは、Windows Server 2025およびAzure Local(旧称、Azure Stack HCI)のみをサポートしており、以前のバージョンのWindows ServerおよびAzure Stack HCIはサポートしていません。
microsoft/osconfig|GitHub
*1 OSConfig を使用して App Control for Business を構成する|Windows Server(Microsoft Learn)
画面1 Windows Server 2025セキュリティベースラインの完全な一覧
OSConfigは、Azure Policy(Azure Arc対応リソースに対する大量展開向け)によるクラウド機関(Cloud Authority)による展開、Windows Admin CenterまたはPowerShellによるローカル機関(Local Authority)による展開、およびその他の展開ツール(Deploy Authority)による展開が可能です。複数の機関を使用することができ、その場合、クラウド機関、ローカル機関、その他の展開ツールの順番で優先順位が決まります。そして、どの機関を使用する場合も、最終的には対象のサーバーやVM上で動作するPowerShellのツール(Microsoft.OSConfigモジュール)によりセキュリティ設定が実装、維持されます。
例えば、Active Directoryドメインのメンバーサーバー用のセキュリティベースライン(SecurityBaseline/WS2025/MemberServerシナリオ)をPowerShellを使用して展開するには、次のように実行します(画面2)。なお、Microsoft.OSConfigモジュールはPowerShellギャラリー(https://www.powershellgallery.com/packages/Microsoft.OSConfig/)からのインストールとなるため、インターネットアクセスが利用可能である必要があります。
PS C:¥> Install-Module -Name Microsoft.OSConfig -Scope AllUsers -Repository PSGallery -Force PS C:¥> Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer -Default PS C:¥> Restart-Computer |
Windows Server 2025(MemberServer/DomainController/WorkgroupMember)のセキュリティベースラインを100%準拠させるためには、さらに4つの設定項目「MessageTextUserLogon」「MessageTextUserLogonTitle」「RenameAdministratorAccount」「RenameGuestAccount」にユーザー入力値が必要です(2025年4月2日追記、これらの項目はWAC(v2)による評価や設定の対象外です)。
PS C:¥> Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer -Name MessageTextUserLogon -Value "ログオンメッセージのテキスト" PS C:¥> Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer -Name MessageTextUserLogonTitle -Value "ログオンメッセージのタイトル" PS C:¥> Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer -Name RenameAdministratorAccount -Value "ビルトインAdministratorの新しい名前" PS C:¥> Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer -Name RenameGuestAccount -Value "ビルトインGuestの新しい名前" |
画面2 Microsoft.OSConfigモジュールをインストールして、セキュリティベースラインのシナリオを適用し、再起動する
再起動後、サインイン画面で前回のログイン情報が表示されないことや、Administratorアカウントであっても「ユーザーアカウント制御(UAC)」が有効であることに気づくでしょう。場合によっては、パスワードポリシーの変更により、ローカルAdministratorのパスワードの有効期限が切れて、再設定を要求されるかもしれません。これらの挙動の変更は、OSConfigによりセキュリティ設定が強化された影響です(画面3)。
画面3 セキュリティ強化の一貫として、AdministratorであってもUACが有効になる
セキュリティベースライン(SecurityBaseline/WS2025/MemberServerシナリオ)の設定を確認するには、次のように実行します(画面4)。ドメインメンバー、非ドメインメンバー、ドメインコントローラーのシナリオは大量の出力があるため、「| more」ではなく「| clip」でクリップボード経由でメモ帳などに貼り付けると確認がしやすいでしょう。
PS C:¥> Get-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer |
画面4 ベースラインにより変更されたセキュリティ設定を確認する
セキュリティベースラインへの対応状況(Compilant/Not-Compilant)を確認するには、次のように実行します(画面5)。なお、自動修正できない一部のセキュリティ設定は、対応(準拠)させるために個別に対応が必要な場合もあるようです。そのような設定は次に説明するWAC v2の「セキュリティベースライン」の一覧からは除外されるようですが、Get-OSConfiguDesiredConfigurationの結果には含まれます(そのため、WAC v2と件数が一致しないことがあります)。
PS C:¥> Get-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer | ft Name, @{ Name = "Status"; Expression={$_.Compliance.Status} }, @{ Name = "Reason"; Expression={$_.Compliance.Reason} } -AutoSize -Wrap |
画面5 ベースラインとの対応状況を確認する
Windows Admin Center(WAC)v2の「セキュリティ」ツールにある「セキュリティベースライン」を使用すると、PowerShellモジュールのインストールから、ベースラインの適用、対応状況の確認をGUIで行うことができます(画面6)。
画面6 WAC v2を使用すると、Microsoft.OSConfigモジュールのインストールから、ベースラインの適用と対応状況の確認をGUIで管理できる。非準拠の設定は、後述のベースラインのカスタマイズの影響(RDPセッションのドライブリダイレクト許可)
なお、Get-OSConfigDesiredConfigurationやWAC v2の「セキュリティベースライン」は、セキュリティベースラインのシナリオを展開する前の、現在のセキュリティ設定の評価にも使用できます。ちなみに、Windows Server 2025のドメインメンバーは既定の状態で、約300のセキュリティ設定のうち、約100の設定が既定の状態でベースラインに準拠していました(画面7)。
画面7 Get-OSConfigDesiredConfigurationやWAC v2の「セキュリティベースライン」は、ベースライン展開前の状況の評価にも使用できる
Azure PolicyによるOSConfigの展開については、現在のドキュメントでは説明不足の感があります。おそらく、「Azure Arcマシン>リソース名>コンピューターの構成」に自動作成される監査モードの「AzureWindowsBaseline」ポリシー(シナリオ)のことだと思います。このポリシーの割り当て型(assignmentType)を既定の「Audit」から、「ApplyandMonitor」(適用と監視)または「ApplyandAutoCorrect」(ドリフト制御オンで適用)に変更することで、セキュリティ設定を展開できそうです。
OSConfigによりセキュリティ設定が強化された場合でも、起動後に設定の変更ができなくなるわけではありません。OSonfigの主要な機能の1つは、「ドリフト制御(Drift control)」と呼ばれるメカニズムです。これは、システムが起動したときに、望ましいセキュリティ設定のままであることを確認し、その状態から逸脱したシステム変更を自動的に修正する機能です。既定で4時間のリフレッシュ期間が経過すると、ドリフト制御により修正が行われます。これにより、不適切な設定変更を防止し、セキュリティ態勢を維持することができます。ドリフト制御は既定でオンになっており、ドキュメント化されていませんが、Get/Enable/Disable-DriftControlコマンドレットで確認、オン/オフの切り替えが可能なようです。
場合によっては、ドリフト機能を維持しながら(オンのまま)設定の一部を変更したいという場合もあります。例えば、Windows Server 2025のセキュリティベースラインを適用すると、リモートデスクトップ(RDP)セッションでのファイルのコピー/貼り付け(ドライブリダイレクト)が禁止されます(画面8)。次のように実行して再起動することで、ドリフト制御を維持しながら(非対応の設定が自動的に修正されずに)、RDPセッションでのファイルのコピー/貼り付けを許可することができます(画面9)。なお、コンプライアンスの対応状況は「準拠していません」として報告されます。
PS C:¥> Set-OSConfigDesiredConfiguration -Scenario SecurityBaseline/WS2025/MemberServer(またはWorkgroupMemberまたはDomainController) -Name RemoteDesktopServicesDoNotAllowDriveRedirection -Value 0 PS C:¥> Restart-Computer |
画面8 Windows Server 2025のセキュリティベースラインを適用すると、RDPセッションでのコピー/貼り付けが禁止される
画面9 ドリフト機能を維持しながら、ベースラインをカスタマイズして、RDPセッションでのコピー/貼り付けを許可する
関連:
メモ. OSConfigのセキュリティベースライン対応状況の確認をスクリプト化する
2025/2/5 追記) Microsoft Security Baselines Blogにこの新機能に関する記事が投稿されました。
Windows Server 2025, security baseline|Microsoft Security Baselines Blog(Tech Community)
2025/3/25 追記) Microsoft Security Baselines Blogにこの新機能に関する追加記事が投稿されました。
Strengthening your security posture with Windows Admin Center|Windows Admin Center Blog(Tech Community)
WAC(v2) の「セキュリティ|セキュリティベースライン」では、Windows Server 2025の3つのセキュリティベースラインとDefender/Antivirusの適用と維持が可能ですが、SecuredCoreおよびSecuredCoreStateについては、WAC(v2)に実験キー「msft.sme.security.siliconAssistedSecurityPreview」を追加することで、「セキュリティ|シリコン支援付きセキュリティ」タブから参照および適用と維持が可能になります。
画面10 WAC(v2)に実験キーを追加する
画面11 SecuredCoreおよびSecuredCoreStateシナリオに対応した「セキュリティ|シリコン支援付きセキュリティ」
Windows Server 2025大特集(1)|...|(17)