|  Linux 
            Tips | 
        
         
            | 
           
             パスワードが安全か調べるには(John the Ripper編) 
            北浦訓行 
              2002/1/17 
           | 
        
      
       セキュリティパッチをまめに当てていても、パスワードが簡単だと容易にクラッキングされてしまう。そこで、パスワードの解析ツールを使って、自分のパスワードが安全かどうか確かめてみてはどうだろう。ここでは、「John 
        the Ripper」というツールを使って、パスワードが解析可能かチェックする方法を説明する。
      
 まず、John the RipperのWebサイト(http://www.openwall.com/john/)からソースファイル(john-1.6.tar.gz)をダウンロードして、適当なディレクトリで展開する。
      
         
           $ tar zxvf john-1.6.tar.gz 
            (省略) 
            $ cd john-1.6/src ←生成されたディレクトリに移動 | 
        
      
       makeコマンドでは、自分の使用している環境に適したオプションを指定する必要がある。引数なしでmakeコマンドを実行すると、指定可能なオプション一覧が表示される。
      
         
           $ make 
            To build John the Ripper, type: 
                    make SYSTEM 
            where SYSTEM can be one of the following: 
            linux-x86-any-elf        Linux, x86, ELF binaries 
            linux-x86-mmx-elf        Linux, x86 with MMX, ELF binaries 
            linux-x86-k6-elf         Linux, AMD K6, ELF binaries 
            linux-x86-any-a.out      Linux, x86, a.out binaries 
            linux-alpha              Linux, Alpha 
            linux-sparc              Linux, SPARC 
            (省略)  | 
        
      
       MMX Pentium以降のPentiumを搭載したPCであれば、「linux-x86-mmx-elf」を指定すればいいだろう。もし、このオプションを指定してエラーが出た場合は、これに近いオプション(例えば「linux-x86-any-elf」や「linux-x86-any-a.out」など)を指定して再度実行してみる。それでもうまくいかないときは、「general」というオプションを指定する。以上の作業で、john-1.6/runディレクトリにJohn 
        the Ripperのコマンド本体やツール類が置かれる。
      
         
           $ make linux-x86-mmx-elf 
            (省略) 
            $ cd ../run ←バイナリが保存されているrunディレクトリに移動 | 
        
      
       解析を試みる前に、もう1つやっておくことがある。それは、解析するためのデータファイルの作成だ。最近のディストリビューションはシャドウパスワードになっているので、unshadowというコマンドを使ってパスワードファイルとシャドウパスワードファイルを結合する。また、シャドウパスワードのファイルはrootしか読めないのでrootになっておくこと。
      
         
           $ su 
            Password: 
            # ./unshadow /etc/passwd /etc/shadow > passwdfile 
            # exit 
            exit | 
        
      
       いよいよパスワードの解析だ。
      
         
           $ ./john passwdfile 
            Loaded 6 passwords with 6 different salts (FreeBSD MD5 [32/32]) 
            suzuki (suzuki) ←ユーザーIDとパスワードが同じ | 
        
      
       John the Ripperには、解析のためのオプションがいくつかある。代表的なものは、辞書を使った解析だろう。John the Ripperには、デフォルトでrun/password.lstという辞書がある。この辞書を使用する場合は、以下のオプションを指定する。
      
         
           $ ./john -wordfile:password.lst passwdfile 
            Loaded 5 passwords with 5 different salts (FreeBSD MD5 [32/32]) 
            coffee (tanaka) ←パスワードに英単語を使用 | 
        
      
       John the Ripperには、これ以外にも多くのオプションやツールが用意されている。具体的には、john-1.6/docディレクトリにあるドキュメントを参照のこと。なお、パスワード解析用の辞書は日本語版も含めて用意されており、オックスフォード大学のFTPサイト(ftp://ftp.ox.ac.uk/pub/wordlists/)などからダウンロードできる。
      
      
|  Linux Squareフォーラム Linux Tipsカテゴリ別インデックス | 
 
	
		Linux & OSS 記事ランキング
		
		
			本日
			月間