Hashcat
Hashcatは、パスワード復元ツールである。以前はプロプライエタリソフトウェアであったが、2015年にオープンソースソフトウェアとして公開された。Linux、macOS及びWindowsで利用することができる。対応している暗号学的ハッシュ関数の例としてはLMハッシュ、MD4、MD5、SHAシリーズ、crypt (UNIX)及びMySQLとCisco PIXで使用されているアルゴリズムなどがある。
Hashcatはその最適化によって公に注目されている。この最適化の一部は、hashcatの作者によって発見された他のソフトウェアの脆弱性などに基づいている。例えば、1Passwordのパスワードマネージャーのハッシュ化スキームの脆弱性がそれに該当する。また、HashcatはUSENIXの出版物で同様のソフトウェアと比較され、このことがArs Technicaで説明されている。
以前は、hashcatには2つの変種が存在した:
hashcat - CPUベースのパスワード復元ツール
oclHashcat/cudaHashcat - GPGPUツールOpenCLまたはCUDA。
hashcat v3.00からはこれらの変種がhashcatと呼ばれる単一のツールに統合された。CPUだけのバージョンはhashcat-legacyになった。これらはどちらもOpenCLが必要である。
hashcat-legacyが対応しているアルゴリズムの多くMD5、SHA-1など。はGPUベースのhashcatを使用するとより短い時間で解読することができる。但し、全てのアルゴリズムをGPUによって高速化できるわけではない。bcryptがその一例である。データに依存する分岐、逐次化、メモリなどの要因によってoclHashcat/cudaHashcatはhashcat-legacyを包括的に置き換えることができなかった。
hashcat-legacyはLinux、macOS及びWindowsで利用することができる。hashcatはOpenCLに対応したGPU、CPU、FPGAやその他のアクセラレータカードを備えたLinux、macOS及びWindows環境で利用することができる。
<pre>
$ hashcat -d 2 -a 0 -m 400 -O -w 4 example400.hash example.dict
hashcat (v5.1.0) starting...
OpenCL Platform #1: Intel(R) Corporation
Device #1: Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz, skipped.
OpenCL Platform #2: NVIDIA Corporation
Device #2: GeForce GTX 970, 1010/4041 MB allocatable, 13MCU
Device #3: GeForce GTX 750 Ti, skipped.
Hashes: 1 digests; 1 unique digests, 1 unique salts
Bitmaps: 16 bits, 65536 entries, 0x0000ffff mask, 262144 bytes, 5/13 rotates
Rules: 1
Applicable optimizers:
Optimized-Kernel
Zero-Byte
Single-Hash
Single-Salt
Minimum password length supported by kernel: 0
Maximum password length supported by kernel: 55
Watchdog: Temperature abort trigger set to 90c
Dictionary cache hit:
Filename..: example.dict
Passwords.: 128416
Bytes.....: 1069601
Keyspace..: 128416
The wordlist or mask that you are using is too small.
This means that hashcat cannot use the full parallel power of your device(s).
Unless you supply more work, your cracking speed will drop.
For tips on supplying more work, see: https://hashcat.net/faq/morework
Approaching final keyspace - workload adjusted.
$H$9y5boZ2wsUlgl2tI6b5PrRoADzYfXD1:hash234
Session..........: hashcat
Status...........: Cracked
Hash.Type........: phpass, WordPress (MD5), phpBB3 (MD5), Joomla (MD5)
Hash.Target......: $H$9y5boZ2wsUlgl2tI6b5PrRoADzYfXD1
Time.Started.....: Thu Apr 25 05:10:35 2019 (0 secs)
Time.Estimated...: Thu Apr 25 05:10:35 2019 (0 secs)
Guess.Base.......: File (example.dict)
Guess.Queue......: 1/1 (100.00%)
Speed.#2.........:  2654.9 kH/s (22.24ms) @ Accel:128 Loops:1024 Thr:1024 Vec:1
Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts
Progress.........: 128416/128416 (100.00%)
Rejected.........: 0/128416 (0.00%)
Restore.Point....: 0/128416 (0.00%)
Restore.Sub.#2...: Salt:0 Amplifier:0-1 Iteration:1024-2048
Candidates.#2....: 0 -> zzzzzzzzzzz
Hardware.Mon.#2..: Temp: 44c Fan: 40% Util: 50% Core:1265MHz Mem:3004MHz Bus:8
Started: Thu Apr 25 05:10:32 2019
Stopped: Thu Apr 25 05:10:37 2019
</pre>
Hashcatは効果的な攻撃とハッシュの複雑な鍵空間を網羅するために以下のような複数の攻撃方法を提供している:
ルックアップテーブル攻撃CPUのみ。
PRINCE攻撃CPU版はバージョン0.48以降のみ。
従来の総当たり攻撃は時代遅れと考えられており、Hashcatの中心チームは完全な代替としてマスク攻撃を推奨している。
Team HashcatHashcatの中心メンバーで構成されているHashcatソフトウェアの公式チーム。は、2010年、2012年、2014年、2015年及び2018年のDEF CONで開催されたKoreLogicの「Crack Me If you Can」大会と2017年のDerbyConで優勝した。