ビットの海

ゆるふわソフトウェアエンジニアしゃぜのブログ

自分のsshのpassphrase忘れた愚か者がクラックする話

タイトルそのまんまなんだが...

想定する環境

  • homebrewが使えるMac

John the Ripper導入

brew install john

もし、opensslが入っていなかったら入れておく

brew install openssl

ssh-privkey-crack.cを拾ってきてコンパイル

curl -O https://raw.githubusercontent.com/Boran/lusas/master/ssh-key-crack/ssh-privkey-crack.c
cc -I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib -o ssh-privkey-crack ssh-privkey-crack.c -lssl -lcrypto 
chmod +x ssh-privkey-crack

いざ解析

john --stdout --incremental | ./ssh-privkey-crack .ssh/{target_key}

まぁ、これはインクリメンタルに探していくわけで、凝ったパスワードの場合やはり時間がかかる。

私の場合は、いくつか候補があって、どれかわからんかったので、候補ファイルを別途つくってそれを食わせてなんとかしました。

wordlist.txtにずらずら候補を並べただけ。

john --stdout --wordlist=./wordlist.txt |./ssh-privkey-crack .ssh/{target_key}

マッチするとこんなんが出る

------------------------------------------------------------------------ -- -
Passphrase match: <xxx>. Found password after 0 seconds and 0 tries.
-------------------------------------------------------------------------- -- -

愚か者の戦いはこれで終わり

参考にしました

ssh 鍵のパスフレーズを忘れたら