web-dev-qa-db-ja.com

パスワードで保護されたコンテナからパスワードハッシュを抽出する方法

KeePassファイルやLUKS、TrueCrypt、Veracryptボリュームなどの暗号化されたコンテナーからパスワードのハッシュを抽出するにはどうすればよいですか?

John the Ripperの keepass2john を使用しようとしましたが、KeePassのKDBXファイルでは機能しませんでした(エラーメッセージ:「ファイルバージョンはサポートされていません」)。

私の調査中に、ハッシュを抽出することはできないと言っている人を見つけました。もしそうなら、keepass2johnのようなスクリプトは何のためのものですか?また、ハッシュを抽出できない場合、暗号化ソフトウェアはどのようにキーを検証しますか?

4

できません。抽出するものはありません。

Truecrypt、Veracryptおよびその他の多くのコンテナファイルのハッシュは、それぞれのボリュームにアクセスするために必要なパスワードとは関係ありません。

John The Ripperなどのツールは、弱いパスワードに対してテストすることで機能します。強力なパスワードを持つTC/VCコンテナに対しては役に立たない。

1
Overmind

KeePassファイルやLUKS、TrueCrypt、Veracryptボリュームなどの暗号化されたコンテナーからパスワードのハッシュを抽出するにはどうすればよいですか?

場合によります :-)。それぞれのファイル形式を読み取り、パスワードに関する情報を抽出できるプログラムが必要です。

また、パスワードで保護されたファイル/コンテナには、通常、パスワードのハッシュが含まれていないことに注意してください(たとえば、UNIX Shadow file のように)。代わりに、暗号化キー(パスワードから計算される)で保護されたデータと、暗号化キーの計算方法に関する情報が含まれている可能性があります。通常、キーの計算には、いくつかの特別なアルゴリズム(a key derivation function )が使用されます。

このデータは、パスワードハッシュの総当たりと同様の方法で攻撃される可能性があります。別のパスワードを試し、適切な鍵導出関数を実行して、暗号化されたデータと一致するかどうかを確認できます。

次に、このブルートフォースを実行するプログラムが必要になります。 Hashcat は人気のある選択肢の1つです(そしてHashcatはたまたまKeePassで使用されるデータ形式をサポートしています GitHubのPR 282 を参照してください)。

John the Ripperのkeepass2johnを使用しようとしましたが、KeePassのKDBXファイルでは機能しませんでした(エラーメッセージ:「サポートされていないファイルバージョン」)。

これはいくつもの問題になる可能性があり、おそらくここでは範囲外です。 http://superuser.com でより具体的な質問をしてみてください。

私の調査中に、ハッシュを抽出することはできないと言っている人を見つけました。もしそうなら、keepass2johnのようなスクリプトは何のためのものですか?

まあ、時には何人かの人々は間違っています:-)。 keepass2johnは、John The Ripperでパスワードを解読できるKeePassデータベースから情報を抽出するためのものです。

また、ハッシュを抽出できない場合、暗号化ソフトウェアはどのようにキーを検証しますか?

彼らはクラッキングプログラムのようにそれをします:彼らはパスワードを試し、それがうまくいかない場合文句を言います。

3
sleske