セキュリティ PR

「John the Ripper」の使い方:インストールからパスワード解析まで

記事内に商品プロモーションを含む場合があります

「John the Ripper」(以下、John)は、
パスワード解析のためのオープンソースツールです。
主に以下のような用途で使用されます:

  • 忘れたパスワードの解析
  • セキュリティ診断やペネトレーションテスト

注意事項
このツールは強力なため、不正な目的で使用することは禁止されています。利用は必ず、法的かつ倫理的に許可された範囲内にとどめてください。

John the Ripperのインストール

Windows環境でのインストール

  1. 公式ダウンロードページから最新バージョンを取得します。
  2. ZIPファイルを解凍し、任意のフォルダに配置します。
  3. フォルダ構造が以下のようになっていることを確認します
    john
    ├── run
    ├── doc
    └── src

Linux環境でのインストール

  1. ターミナルを開きます。
  2. 以下のコマンドを順に実行します
    sudo apt update
    sudo apt install john

Cygwinを利用したインストール

  1. Cygwinをインストールします。
  2. 必要なパッケージ(gccやmake)を追加します。
  3. ソースコードをダウンロードしてビルドします。

基本的な操作手順

ZIPファイルの準備

  1. 解析対象のZIPファイルを用意します。
  2. ZIPファイルを「john > run」フォルダにコピーします。

コマンドプロンプトの使用

  1. Windowsのコマンドプロンプトを起動します。
  2. 以下のコマンドで「run」フォルダに移動します
    cd C:\path\to\john\run

パスワードの解析方法

辞書攻撃を使った解析

辞書攻撃は、事前に用意された単語リストとパスワードを照らし合わせる方法です。

  1. 辞書ファイルを準備(例:password.lst)。
  2. 以下のコマンドを実行
    john --wordlist=password.lst --format=zip hashfile.txt

総当たり攻撃を使った解析

辞書を用いない総当たり攻撃では、可能な文字の全組み合わせを試します。

  1. 以下のコマンドを実行
    john --incremental --format=zip hashfile.txt

解析結果の確認

解析結果は以下のコマンドで確認できます:

john --show hashfile.txt

応用例

SSH秘密鍵ファイルのパスフレーズ解析

  1. 秘密鍵ファイルを準備します(例:id_rsa)。
  2. ハッシュ値を抽出
    sh2john id_rsa > hashfile.txt
  3. 通常の辞書攻撃または総当たり攻撃を実行。

PDFファイルの解析

  1. PDFのハッシュを抽出するツールを利用(例:pdf2john)。
  2. 抽出したハッシュをJohnで解析します。

実験結果で見る解析の効率性

パスワード桁数と解析時間

以下は、パスワード桁数と解析時間の目安です:

桁数時間(推定)
4数秒
6数分~数時間
8数日~数週間

暗号化方式による解析の難易度

ZIPの暗号化方式により結果が異なります:

  • 古い方式:容易に解析可能。
  • AES暗号化:時間が大幅にかかる。

6. 注意点とまとめ

  • ツールの不正利用を避けること。
  • 暗号化方式によっては解析が難しい場合があるため、期待値を設定しておく。

参考資料と関連トピックス