「Windows Kerberos KDC」の脆弱性(CVE-2020-17049)についてまとめてみた
概要
Kerberos Constrained Delegation (KCD) を使用するように構成された侵害対象のサービスに対して、委任に無効なサービスチケットを改ざんし、KDC に強制的に受け入れさせる可能性があるというもの。
フォレスト内のすべての DC (Domain Controller) ならびに RODC (Read-Only Domain Controller) に対してセキュリティ更新プログラムを展開するだけではなく、追加の対応ステップが必要となる場合がある。
なお、11月時点のパッチ適用後に問題が発生している模様。詳細は下記を参照してください。
脆弱性情報
CVE
CVE-2020-17049
CVSS
6.6 AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H
悪用の可能性
公開 | 悪用 | 悪用可能性評価 |
---|---|---|
なし | なし | 悪用の可能性は低い |
影響範囲
Windows Servers | サポート技術情報番号 |
---|---|
Windows Server 2008 | 4592498 (Monthly Rollup) 4592504 (Security Only) |
Windows Server 2008 R2 | 4592471 (Monthly Rollup) 4592503 (Security Only) |
Windows Server 2012 | 4586834 (Monthly Rollup) 4586808 (Security Only) |
Windows Server 2012 R2 | 4586845 (Monthly Rollup) 4586823 (Security Only) |
Windows Server 2016 | 4586830 |
Windows Server 2019 | 4586793 |
Windows Server, version 1903/1909 | 4586786 |
Windows Server, version 2004/20H2 | 4586781 |
対応
※11 月 10 日に公開したセキュリティ更新プログラムについては、問題が発生しているので、別途追加で対応をとる必要がある。
1.レジストリキーを設定
以下の通りのレジストリキーを設定すること。もし既に存在する場合は、キーの値が ”1” に設定されているかを確認すること。
レジストリ サブキー | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Kdc |
値 | PerformTicketSignature |
データ型 | REG_DWORD |
データ | 0 – チケットの署名は無効になり、ドメインは保護されません。 |
1 – この修正プログラムはドメイン コントローラーで有効になりますが、DC では、チケットが修正プログラムに準拠していることは必須ではありません。 | |
2 – この修正プログラムは必須モードで有効になります。つまり、すべてのドメインにパッチを適用する必要があります。また、すべての DC に署名付きのチケットが必要になります。 | |
既定値 | 1 (レジストリ キーが設定されていない場合) |
再起動は必要か | 不要 |
2.セキュリティ更新プログラムを展開
フォレスト内のすべての DC と RODC に、セキュリティ更新プログラムが展開されていることを確認すること。
強制モード フェーズ
2021 年 2 月 9 日 (米国時間) に強制モード フェーズに移行していく予定とのこと。2021 年 2 月に公開予定のセキュリティ更新プログラムにて、上記のレジストリ キーは無視され必須モード (変更不可) となる模様です。
適用後に確認されている問題【重要】
11 月 10 日に公開したセキュリティ更新プログラムの適用後、“PerformTicketSignature” の設定値によって異なる問題が発生することを確認しているとのこと。問題の内容は下記のとおりです。
設定値 0の場合
スケジュールタスクやクラスタリング、LoB アプリケーションのサービスなど、S4U (Service for User) を使ったシナリオで認証に問題が発生する可能性があるとのこと。
設定値 1の場合
Linux など Windows 以外のクライアントが Windows ドメインに Kerberos を使って認証しようとした際に問題が発生する可能性があるとのこと。
また 11 月のセキュリティ更新プログラムを適用していない DC や Windows Server 2008/Windows Server 2008 R2 SP1 上の DC を通じて、Kerberos referral チケットをやり取りする場合に Windows と非 Windows デバイス間での Cross realm referrals に失敗する可能性があるとのこと。
設定値 2の場合
この値を設定すると強制モードとなり、今回のセキュリティ修正に準拠していない Kerberos チケットは拒否されるようになるため、すべての DC にセキュリティ更新プログラムが適用されていない場合に認証できない問題が発生する可能性があるとのこと。現時点では、Windows Server 2008/Windows Server 2008 R2 SP1 上の DC が存在する場合、この値を設定することは推奨していないようです。
参照
- Kerberos KDC Security Feature Bypass Vulnerability(microsoft)
- CVE-2020-17049 に対する Kerberos S4U の変更の展開管理(microsoft)
- 2020年12月マイクロソフトセキュリティ更新プログラムに関する注意喚起(jpcert)
- Kerberos KDC の脆弱性 (CVE-2020-17049) に対応するためのガイダンス(Microsoft Security Response Center)
- 2020年11月の月例更新を適用した「Windows Server」でKerberos認証に問題(窓の杜)
- CVE-2020-17049(mitre)
- CVE-2020-17049: Kerberos Bronze Bit Attack – Theory(NetSPI Blog)