Netwrix 1Secureは、データとアイデンティティ全体にわたる統合された可視性を提供します。14日間の無料トライアルでフルアクセス可能です。無料トライアルを開始

リソースセンターブログ

WDigest のクリアテキストパスワード:ハッシュ以上を盗む

WDigest のクリアテキストパスワード:ハッシュ以上を盗む

Dec 18, 2024

WDigest とは何ですか?

Digest Authentication(ダイジェスト認証)は、主に Windows Server 2003 で LDAP および Web ベースの認証に使用されていた challenge/response(チャレンジ/レスポンス)プロトコルです。認証には、Hypertext Transfer Protocol(HTTP)と Simple Authentication Security Layer(SASL)のやり取りを利用します。

大まかに言うと、クライアントが何かへのアクセスを要求し、認証サーバーがクライアントにチャレンジを提示し、クライアントはパスワードから導出した鍵で応答を暗号化して、そのチャレンジに応答します。暗号化された応答は、認証サーバーに保存されている応答と照合され、ユーザーが正しいパスワードを入力したかどうかが判断されます。Microsoft は WDigest について、より詳しい in-depth explanation of WDigestを提供しています。

WDigest はどのようなセキュリティリスクをもたらしますか?

WDigest は平文のパスワードをメモリに保存します。したがって、エンドポイントにアクセスできる攻撃者が Mimikatz のようなツールを使うことで、メモリに保存されているハッシュだけでなく、平文のパスワードも取得できてしまいます。その結果、攻撃者は Pass-the-Hash のような攻撃に限られません。ユーザー ID とパスワードの入力が必要な Exchange、社内 Web サイト、およびその他のリソースにもログオンできるようになります。

たとえば、ユーザー「TestA」がリモート デスクトップを使ってマシンにログオンし、そのパスワードをメモリに残していたとします。以下のスクリーンショットは、Mimikatz を使ってそのマシンのメモリから資格情報をダンプしたときに攻撃者が目にする内容を示しています。ご覧のとおり、攻撃者はアカウントの NTLM パスワード ハッシュだけでなく、平文のパスワード「Password123」も両方取得できます。

WDigest Clear-Text Passwords 1

このリスクを軽減するには何ができますか?

幸いなことに、Microsoft はセキュリティ更新プログラム(KB2871997)をリリースしており、組織はレジストリ設定を構成して、WDigest がメモリにクリアテキストのパスワードを保存しないようにできます。ただし、そうすると WDigest が機能しなくなるため、Microsoft はまず、環境で Digest 認証が使用されているかどうかを確認することを推奨しています。サーバーのイベントログでイベント ID 4624 を確認し、ドメイン コントローラーのログでイベント ID 4776 を確認して、「Authentication Package: WDigest」を使ってログインしたユーザーがいないかを調べてください。そのようなイベントが一切存在しないことを確実に確認できたら、環境に影響を与えることなくレジストリの変更を行えます。

Windows 7、Windows 8、Windows Server 2008 R2、および Windows Server 2012

Windows 7、Windows 8、Windows Server 2008 R2、および Windows Server 2012 では、更新プログラム KB2871997 をインストールし、次に以下のレジストリ キーを 0 に設定します:

WDigest Clear-Text Passwords 2

これを行う最も簡単な方法は Group Policy ですが、次のスクリプトでも動作します:

      reg add
HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v
UseLogonCredential /t REG_DWORD /d 0
      

Windows および Windows Server の後続バージョン

Windows および Windows Server の後続バージョンでは、セキュリティ更新プログラムは不要であり、レジストリ値は既定で 0 に設定されています。ただし、次のスクリプトを使用して、その値が手動で変更されていないことを確認してください。

      reg query
HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v
UseLogonCredential
      

結果

このレジストリ値が 0 に設定されると、攻撃者がメモリから資格情報をダンプしても、平文のパスワードは入手できません。その代わり、次のように表示されます:

WDigest Clear-Text Passwords 3

参照チャート

エンドポイントに対して対応(アクション)を取る必要があるかどうかを判断するためのチャートです:

WDigest Clear-Text Passwords 4

クイック要約

WDigest はメモリ内に平文の資格情報を保存します。攻撃者はそこからそれらを盗み取る可能性があります。Microsoft のセキュリティ更新 KB2871997 は、レジストリ値を設定できるようにすることで、Windows および Windows Server の古いバージョンにおける問題を解決します。新しいバージョンでは、適切な値がデフォルトで設定されています。

資格情報の窃取は機密情報の損失につながり得るため、このレジストリ設定をすべての Windows エンドポイントで確認することを優先すべきです。実施方法の1つは、すべてのホストに対してコマンドラインのクエリを実行することです。より迅速に行うには、結果を読み取りやすいレポートとして提供する監査ソリューションでプロセスを自動化するのがよいでしょう。

Netwrix はどのように役立ちますか?

Netwrix Access Analyzer は、Windows インフラのセキュリティを強化し、データ侵害 のリスクを最小限に抑えるのに役立ちます。次のことが可能になります:

  • 攻撃者が Windows システムを侵害してあなたのデータに到達するために悪用できる脆弱性を特定します。
  • ベースライン構成 の分析によって、セキュリティおよび運用ポリシーを徹底します。
  • 特権アカウントを監査し、統制します。
  • 事前に用意されたレポートと、完全なシステムの可視性により、コンプライアンスをより簡単に立証できます。

Netwrix Access Analyzer

共有する

もっと詳しく

著者について

Asset Not Found

Kevin Joyce

プロダクトマネジメント担当ディレクター

Netwrix のプロダクトマネジメント担当ディレクター。Kevin はサイバーセキュリティに情熱を持ち、特に攻撃者が組織の環境を悪用するために用いる戦術や手法を理解することに注力しています。Active Directory と Windows のセキュリティに焦点を当てたプロダクトマネジメントでの 8 年の経験を通じて、その情熱を活かし、組織がアイデンティティ、インフラ、データを保護できるようなソリューションの構築を支援しています。