NTLM 認証
NTLM 認証 とは何ですか?
NTLM 認証保存されたパスワードハッシュからユーザー身元を証明する Windows 旧来のチャレンジ・レスポンス認証プロトコルで、現代の基準では弱いと評価されている。
NTLM(NT LAN Manager)は、Windows ネットワークで Kerberos に先立って使われていた Microsoft の認証プロトコル群です。チャレンジ・レスポンス方式のハンドシェイクを用います。すなわち、サーバーがランダムなノンスを送り、クライアントは利用者の NT ハッシュ から計算したレスポンスを返すため、パスワード自体はネットワーク上を通過しません。NTLMv1 は脆弱な DES ベースの計算に依存していました。NTLMv2 は HMAC-MD5 のレスポンスを用いますが、いずれもやり取りを対象サービスに束縛しておらず、これがその危険性の根源です。
攻撃と非推奨化
レスポンスはハッシュの知識を証明するにすぎないため、NTLM は pass-the-hash(盗んだハッシュをクラックせずに再送する)、捕捉したハッシュのオフラインクラック、そしてとりわけ NTLM リレー にさらされます。NTLM リレーとは、被害者に認証させるよう強制した攻撃者が、その認証を第三のサービスへ転送する攻撃です。CVE-2019-1040(「Drop the MIC」)により、攻撃者はメッセージ整合性コード(MIC)を取り除き、リレー中に署名を除去できるようになりました。PetitPotam(CVE-2021-36942、2021 年 8 月に修正)のような強制(coercion)プリミティブは、未認証のマシン認証を発火させ、これを AD CS の Web 登録エンドポイント(ESC8、アドバイザリ ADV210003)へリレーすると、ドメインコントローラー用の証明書が得られ、完全なドメイン乗っ取り に至ります。
Microsoft は 2024 年に NTLM の正式な非推奨化を開始し、Windows 11 を IAKerb とローカル KDC を備えた Kerberos へ誘導しています。防御策としては、SMB と LDAP の署名を強制すること、Extended Protection for Authentication(チャネルバインディング)を有効化すること、Group Policy で送信 NTLM を制限すること、Kerberos のみの構成を優先することなどがあります。
flowchart TD C[クライアント] -->|1 NEGOTIATE| S[サーバー] S -->|2 CHALLENGE ノンス| C C -->|3 NT ハッシュからの RESPONSE| S S -->|4 ドメインコントローラーへ転送| DC[ドメインコントローラー] DC -->|5 ハッシュを検証| S S -->|6 アクセス許可| C
● 例
- 01
攻撃者が悪意ある SMB サーバーで NTLMv2 ハッシュを収集し、hashcat でオフラインクラックする。
- 02
署名なし SMB セッションを介して NTLM リレーを行い、ドメインコントローラーに認証する。
● よくある質問
NTLM 認証 とは何ですか?
保存されたパスワードハッシュからユーザー身元を証明する Windows 旧来のチャレンジ・レスポンス認証プロトコルで、現代の基準では弱いと評価されている。 サイバーセキュリティの ID とアクセス カテゴリに属します。
NTLM 認証 とはどういう意味ですか?
保存されたパスワードハッシュからユーザー身元を証明する Windows 旧来のチャレンジ・レスポンス認証プロトコルで、現代の基準では弱いと評価されている。
NTLM 認証 からどのように防御しますか?
NTLM 認証 に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
NTLM 認証 の別名は何ですか?
一般的な別名: NTLM, NT LAN マネージャー。