バージョンに関係なく、 NTLMハッシュとNTLMプロトコル の違いは不明です。
私の暫定的な理解は、「NTLMv2ハッシュ」のようなものがあるisであり、これらのハッシュは無塩であるため、pre- Rainbow tables を使用した計算攻撃。
そのため、 "NTLMv2 Rainbow tables"のWeb検索で、NTLMv2用の公開されたRainbowテーブルが表示されないことに驚いた。分散レインボーテーブルプロジェクトは、NTLMのレインボーテーブルを作成しましたが、NTLMv2の 私の知る限り は作成しませんでした。 NTLMv2レインボーテーブルの生成において、コミュニティは 大きな関心を示しました のようにも見えません。これはNTLMv2 Rainbowテーブルが 計算にコストがかかる であり、これを生成することに投資した人がこれまでに公開する気がないためと思われます。
「NTLMv2ハッシュ」のようなものはありますか。もしあれば、これらはRainbowテーブルを使用した事前計算攻撃の実行可能なターゲットになりますか?そうでない場合、それは「NTLMv2ハッシュ」などがないためか、あるが、レインボーテーブルはそれらに対する実行可能な攻撃ではないためでしょうか。
Windows環境でユーザーパスワードに対するブルートフォース攻撃に適用されるリスクを検討する場合、攻撃者がハッシュをキャプチャできるようにする侵害の性質を検討する価値があります。
ユーザー認証中のハッシュのネットワークキャプチャに依存する攻撃の場合、Rainbowテーブルは効果的ではありません。NTLMv2プロトコルは、ソルトを効果的に導入する追加のハッシュ計算を提供します(前の回答で説明)。
ただし、攻撃者がSAMデータベースからパスワードハッシュを正常に抽出できる場合、同じことは当てはまりません。保存された「NTハッシュ」には、追加のハッシュ操作/ソルティングが適用されていません。
次の引用はこれからです Microsoftの記事 :
パスワードのNTハッシュは、無塩MD4ハッシュアルゴリズムを使用して計算されます。 MD4は、パスワードの数学的表現を生成する暗号化一方向関数です。このハッシュ関数は、同じパスワード入力から常に同じ結果を生成し、2つの異なるパスワードが同じ結果を生成する可能性がある衝突を最小限に抑えるように設計されています。このハッシュは常に同じ長さであり、直接復号してプレーンテキストのパスワードを明らかにすることはできません。 NTハッシュはパスワードが変更された場合にのみ変更されるため、NTハッシュはユーザーのパスワードが変更されるまで認証に有効です。
注NTハッシュまたはオンラインシステムへのブルートフォース攻撃から保護するには、パスワードで認証するユーザーは、複数の文字を含む強力なパスワードまたはパスフレーズを設定する必要がありますセットし、ユーザーが簡単に覚えることができる限りです。
NTLMv1またはNTLMv2は、対話型ログオンおよび非対話型ログオンでユーザーを認証するために使用されるWindowsチャレンジ/レスポンス認証プロトコルです。対話型ログオンと非対話型ログオンはここで説明されています
https://msdn.Microsoft.com/en-us/library/gg604699.aspx および https://msdn.Microsoft.com/en-us/library/windows/desktop /aa378749(v=vs.85).aspx
NTLMv1およびNTLMv2認証プロトコルには、パスザハッシュ、リフレクション、リレー攻撃などの脆弱性がありますが、レインボーテーブル攻撃の影響を受けません。
NTハッシュは、NTLMv1およびNTLMv2のMSDNドキュメントではNT一方向関数(NTOWF)と呼ばれ、MD4またはMD5ハッシュアルゴリズムを使用してユーザーのパスワードからハッシュを取得します。 NTOWFは、MD4またはMD5ハッシュアルゴリズムを使用して、ユーザーのパスワードからハッシュを計算します。 Windowsドメイン内のすべてのユーザーのNTハッシュは、ドメインコントローラーのntds.ditファイルに格納されます。ユーザーのパスワードのNTハッシュは、WindowsシステムのSecurity Account Manager(SAM)およびSECURITY Registryハイブからも取得できますが、対話的にログオンします。
NTLMは、NTLMチャレンジ/レスポンスプロトコルとこの混乱の根本的な原因であるNTOWFを指すために互換的に使用されることがよくあります。
WindowsシステムまたはドメインコントローラでのユーザーパスワードNTOWFの保存にソルトがないため、レインボーテーブル攻撃に対して脆弱になります。
これは、文字列「hashcat」がNTOWFのように見え、NTLMv1およびNTLMv2で使用される場合です。これはhashcatのハッシュの例のウェブページから借りました。
NTOWF b4b9b02e6f09a9bd760f388b67351e2b =>これは静的なままであり、パスワードが変更されるまで、SAMまたはドメインコントローラに同じ形式で保存されます。
NTLMv2 admin :: N46iSNekpT:08ca45b7d7ea58ee:88dcbe4446168966a153a0064958dac6:5c7830315c7830310000000000000b45c67103d07d7b95acd12ffa11230e0000000052920b85f78d013cを使用します。
NTLMv1 u4-netntlm :: kNS:338d08f8e26de93300000000000000000000000000000000:9526fb8c23a90751cdd619b6cea564742e1e4bf33006ba41:cb8086049ec4736c =>この認証応答は、パスワードが「ハッシュキャット」である場合でも変更されます。
Wikipediaには、NTLMv1とNTLMv2が「NT Lan Manager」でパスワード(別名NTOWF)を使用してユーザーを認証する方法に関する優れた記事があります。
NTLMv1とNTLMv2の理由が気になる場合は、前者はクライアントをサーバーに対して認証し、その逆は行いませんが、後者はクライアントとサーバーの両方を相互に認証します。
NTLMv2ハッシュには本当のソルトはありませんが、ハッシュされるのはパスワードだけではない場合もあります。あなたのwikiリンクから:
LMv2とNTv2の両方が、ユーザーのパスワードとその他の識別情報のNTハッシュを使用して、クライアントとサーバーのチャレンジをハッシュします。正確な式は、SAMまたはADに格納されているNTハッシュから始まり、ユーザー名とドメイン名であるHMAC-MD5を使用してハッシュを続けます。
この場合、ユーザー名とドメイン名が一意のソルトとして効果的に機能しています。
そのため、ユニークなソルトハッシュは、レインボーテーブルを介した攻撃に対して脆弱ではありません。