ログイン
編集不可のページディスカッション情報添付ファイル
CTF/Toolkit/HashPump

MMA

HashPump

様々なハッシュアルゴリズムについて、Length Extension Attackを行うためのツールである。 CRC32, MD5, SHA1, SHA256, SHA512に対応している。

使い方

hash(UNKNOWN ~ 初期既知文字列) = 既知ハッシュ

となることが分かっているとする。付与したい文字列をstrとして、

hash(UNKNOWN ~ 初期既知文字列 ~ 何らかの文字列 ~ 追加文字列)

を求めるには、次のようなコマンドを実行する。

$ hashpump -s (既知ハッシュ) -d (既知初期文字列) -k (UNKNOWNの長さ) -a (追加文字列)
出力1行目: hash(UNKNOWN ~ 初期既知文字列 ~ 何らかの文字列 ~ 追加文字列)
出力2行目: 初期既知文字列 ~ 何らかの文字列 ~ 追加文字列

md5に対して攻撃を行う例。

$ hashpump -s 13c786aa2625fe2597aaeef121ff3a68 -d a -k 7 -a aa
8a483d9649f8cad04d0241ab18ae8f4e
a\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00\x00aa

実際にはUNKNOWNの長さは分からないことが多いので、様々な数字を試して特定することになる。

インストール方法

$ git clone https://github.com/bwall/HashPump
$ cd HashPump
$ make
$ sudo make install

make installしなくとも、生成されたHashPumpコマンドを叩けば利用することが出来る。

その他

CTF/Toolkit/HashPump (最終更新日時 2015-01-29 19:00:41 更新者 nomeaning)