注意: ここで書いてあることを、リアルなサーバーやファイルで、ガチにやると、 いろいろな法律違反になるので、練習用のものでやってください。
ペンテストの中で、よく出て来るのが、パスワード解析というものだ。
システムのパスワードとか、圧縮ファイルのパスワードとかを探し当てるのだ。
こんな問題があった。
問題
zipfile1.zipと言うファイルを解凍しなさい。
zipファイルを解凍するのに、Linuxだと、unzipというコマンドを使うのだけど、案の定パスワードがかかっている。
そこで、john the ripperという、パスワード解析ツールを使う。
その前に、zipファイルを解析するためのハッシュファイル、解析情報ファイルのようなもの、を作らないとならない。
作ったハッシュファイルを、john the ripperにかける。
参考までにコマンド例は以下の通りだ。
sudo zip2john zipfile1.zip > zipfile1.hash
sudo john zipfile1.hash
一瞬で結果が出た。パスワードは、ncc1701e らしい。
以下に証拠のスクリーンショットを貼っておこう。
処理が終わるまで1秒もたってない。
※なお、時刻を表示するために上記コマンドとは違うコマンドを使っているのであしからず。

この、ncc1701e、トレッキーならわかるが、USSエンタープライズ号の登録番号だ。
これはすごい。数字、英字混在の8ケタのパスワード。それをほぼ一瞬で解析してしまうとは。
特にスクリーンショットはないが、このパスワードで、zipファイルは展開でき、jpg画像が無事見られた。
では、パスワードを変えてもう一度。
今度は、ncc47656というパスワードにしてみた。パスワード解析をする。
パスワードの意味は、トレッキーならわかるだろう。特に説明しない。
今度は、約50分かかった。

同じ8文字のパスワードなのに、この違いは何だろう?
john the ripperは、ディフォルトの状態では、まずパスワード一覧ファイルのパスワードを試みる。
パスワード一覧ファイルのフルパスは、/usr/share/john/password.lst だ。
その後、31文字までの、総当たりを試みる。
一瞬でパスワードが分かったのは、パスワード一覧ファイルに、ncc1701eがあるからなのか?
いや、そんな語句はトレッキーくらいしかパスワードにしない。パスワードリストにあるわけはない!
と思ったら、あった。驚いた。

なお、ncc47656というものは、パスワード一覧ファイルになかった。
なかったので、総当たりを試みた結果、50分かかったのだろう。
それにしても、英字と数字混在の8文字パスワードが、50分でわかってしまうとは、脅威を感じる。パスワードは、英字、数字、記号混在のランダムな10文字以上の文字列にしよう。出来れば16文字以上という意見もある。
Googleは、パスワードマネージャというものを用意している。
ランダムな英字、数字、記号混在のパスワードなら簡単に作れて、かつ、覚えていてくれる。
使い方を気を付ければ、かなり使える。
コメント