Zerologon としてよく知られる CVE-2020-1472 は、Microsoft の Netlogon Remote Protocol (MS-NRPC) に存在する脆弱性に割り当てられた Common Vulnerabilities and Exposures (CVE) 識別子です。MS-NRPC は Active Directory におけるユーザー アカウントとコンピューター アカウントの両方の認証に不可欠です。
Zerologon の脆弱性は、Netlogon で使用される暗号化認証方式の欠陥であり、攻撃者が認証を回避して、コンピューター(ドメイン コントローラー(DC)を含む)に対する管理者レベルの権限を獲得できるようにする可能性があります。基本的に、認証されていない攻撃者は Netlogon Remote Protocol を使用して DC に接続し、そのパスワードを攻撃者の任意の値(空の値を含む)に変更できます。この攻撃は認証を必要とせず、ネットワークアクセスのみで実行できるため、CVSS スコアは 10.0(クリティカル)とされています。これは可能な限り最も高いスコアです。
Zerologon 攻撃の脆弱性への対応に関するタイムライン
2020年8月にMicrosoftは、この脆弱性に対処するためのパッチをリリースし、さらに攻撃の監視と軽減を支援するためのコントロールも併せて提供しました。2020年9月11日、Securaは、Zerologonと呼ばれるこの脆弱性を公開で発表しました。自社のブログで そして、最初の 概念実証(proof of concept)コードを GitHub に投稿しました。
CVE-2020-1472 のパッチリリースに加えて、Microsoft は展開(deployment)と強制(enforcement)の 2 つのフェーズで構成されるロールアウト戦略を作成しました。両方のフェーズは現在完了しています。
フェーズ 1:展開(Deployment)フェーズ
2020年8月にMicrosoftがリリースしたパッチにより、展開(deployment)フェーズが開始されました。このフェーズには、以下も含まれていました。
· Windows ベースのデバイス上のコンピューター アカウント、信頼(トラスト)アカウント、および Windows と非 Windows の DC に対して、セキュアな RPC の使用を強制
· 新しい Group Policy: ドメイン コントローラー:脆弱な Netlogon のセキュア チャネル接続を許可
· 新しいレジストリ キー: FullSecureChannelProtection
· Netlogon 接続の新しいイベント
新しい Group Policy、レジストリ キー、およびイベントの詳細は以下に記載されています。
デプロイ戦略は次のとおりでした:
- フォレスト内のすべての DC をパッチ適用します。
- 新しいイベントを監視し、その後、脆弱な接続を行っているアプリケーションやマシンについて、可能であれば更新します。更新できない場合は Group Policy setting で例外を作成します。
- 上記の手順が完了したら、以下で説明する強制適用フェーズの前に enforcement mode のレジストリ キーを有効にしてください。
Group Policy の詳細
新しいグループ ポリシー「Domain controller: Allow vulnerable Netlogon secure channel connections」は、更新を展開するまでの間、サードパーティ デバイス向けの一時的な対策として機能するように設計されました。次の 2 つの値があります:
· Allow — ドメイン コントローラーは、指定されたグループまたはアカウントが secure RPC なしで Netlogon secure channel を使用できるようにします。
· Deny — この設定は既定の動作と同じです。ドメイン コントローラーは、指定されたグループまたはアカウントに対して、secure RPC を使用して Netlogon secure channel を利用することを要求します。
レジストリ設定の詳細
レジストリ設定のパスは次のとおりです:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters
設定 FullSecureChannelProtection には 2 つの可能な値があります:
· 0(このフェーズ中の既定値)— 非 Windows デバイスからの脆弱な Netlogon セキュア チャネル接続を許可します
· 1(強制モード)— 上で説明した新しいグループ ポリシーでアカウントが指定されていない限り、ドメイン コントローラーはすべての脆弱な接続を拒否します。
新しい Windows イベントの詳細
Microsoft は、強制フェーズ中にサポート チームを支援するため、次のイベントを公開しました:
· イベント 5827 と 5828 — これらのイベントは、接続にサポートされていないバージョンの Windows を実行しているデバイスが含まれる場合に記録されます。また、Windows 以外のデバイスがイベントをトリガーすることも可能です。
· イベント 5830 と 5831 — これらのイベントは、接続が許可されるものの、それが Group Policy の構成による場合に限って記録されます。
· イベント 5829 — このイベントは、接続が許可されるものの、執行(enforcement)モードが有効になっていない場合に限って記録されます。
フェーズ 2:強制(Enforcement)フェーズ
このフェーズは2021年2月に開始されました。新しい Group Policy で明示的に設定されていない限り、Windows ベースではないデバイス上のマシン アカウントに対して、安全な RPC の使用を強制します。その時点で、FullSecureChannelProtection レジストリ キーは不要になり、イベント 5829 は廃止されました。
Zerologon 攻撃はどのように行われたのか?
Zerologon の脆弱性により、ネットワーク上の悪意ある攻撃者がドメイン コントローラー、さらにはドメイン全体を乗っ取ることが可能になりました。攻撃者が Mimikatz を使って Zerologon 攻撃を実行する手順は以下のとおりです:
- まず、攻撃者は次のコマンドを実行して、対象のドメイン コントローラーが Zerologon のエクスプロイトに対して脆弱かどうかを確認します:
lsadump::Zerologon /target:sbpmlab-dc3 /account:sbpmlab-dc3$ /null /ntlm
- 攻撃者が脆弱な DC を見つけたら、同じコマンドを実行しますが、/exploit を追加して脆弱性を悪用し、DC のパスワードを空の文字列に変更します:
- パスワードがリセットされると、攻撃者は Mimikatz を使用して DCSync attack を実行し、ドメイン管理者アカウントまたは KRBTGT アカウントのいずれかのハッシュを取得できます:
lsadump::dcsync /domain:sbpmlab.net /dc:sbpmlab-dc3 /user:krbtgt /authuser:sbpmlab-dc3$ /authdomain:sbpmlab /authpassword:”” /authntlm
Netwrix ができること
ご覧のとおり、ネットワーク内に足掛かりを得た悪意のある攻撃者が、未パッチのドメイン コントローラーを見つけて Zerologon 攻撃を実行するのは、非常に簡単です。Netwrix では、リスクを軽減するのに役立つ 2 つのソリューションを提供しています。
Netwrix StealthAUDIT で Zerologon のリスクを分析し、軽減する
Netrix StealthAUDIT は、Zerologon 攻撃に対して IT エコシステムを強化するために必要な手順を講じていることを確認するのに役立ちます。具体的には、ドメイン コントローラーの状態、およびそれらのドメイン コントローラーで発生するイベントとトラフィックに関する実行可能な情報を提供する 2 つのレポートを提供します。
ドメイン コントローラーの状態を確認する
次の情報は、各ドメイン コントローラーが 2020 年 8 月のパッチを受信したかどうか、また強制(enforcement)モードで動作しているかどうかを判断するのに役立ちます。
・ FullSecureChannelProtection レジストリ キーの値
- 直近の再起動時刻
- 当該マシンの直近のパッチ適用日
サンプル レポートは以下のとおりです。
グループ ポリシー設定の確認
Netwrix StealthAUDIT は、新しいグループ ポリシー「Domain controller: Allow vulnerable Netlogon secure channel connections」の構成についてもレポートします。そのため、どの ドメイン コントローラー がポリシーから除外されているかを確認できます。サンプル レポートを以下に示します。
空のドメイン コントローラー パスワードを検出する
ドメイン コントローラーのパスワードが空になっていると、Zerologon 攻撃が行われた可能性があります。原因が何であれ、空の DC パスワードは非常に危険であり、早急に是正する必要があります。
イベント ログの分析
Netwrix StealthAUDIT は、8 月のパッチに関連するすべてのイベント ID も調べます(イベント 5827、5828、5829、5830、5831 を含む)。このレポートは、管理者が環境内のトラフィックの種類と頻度を理解するのに役立ちます。さらに重要なのは、5829 イベントを作成しているアカウントを特定できることです。これらのアカウントは、新しいグループポリシーで更新するか、例外として指定する必要があります。
Netwrix Threat Manager で Zerologon 攻撃を見つける
Netwrix Threat Manager は、Zerologon を含む異常な挙動や高度な脅威を、高い精度とスピードで検知し、対応できます。以下のスクリーンショットは、検知された Zerologon 攻撃の例です:
結論
Zerologon の脆弱性が最大の CVSS スコアを獲得したのには、ちゃんとした理由があります。この脆弱性を悪用すると、攻撃者がドメインコントローラを掌握できるためです。ドメインコントローラは、IT 環境における認証と認可にとって不可欠です。したがって、Microsoft が示した 2 段階の緩和プロセスを完了したつもりでも、注意を怠らないことが賢明です。DC の状態を必ず確認し、進行中の悪用の兆候を監視し、業務が侵害やダウンタイムに見舞われる前にそれらを自動的に停止できるようにしておきましょう。
共有する
もっと詳しく
著者について
Kevin Joyce
プロダクトマネジメント担当ディレクター
Netwrix のプロダクトマネジメント担当ディレクター。Kevin はサイバーセキュリティに情熱を持ち、特に攻撃者が組織の環境を悪用するために用いる戦術や手法を理解することに注力しています。Active Directory と Windows のセキュリティに焦点を当てたプロダクトマネジメントでの 8 年の経験を通じて、その情熱を活かし、組織がアイデンティティ、インフラ、データを保護できるようなソリューションの構築を支援しています。