基礎パスワードクラッカー講座 written by ipusiron(1999,10,21)
■はじめに(ディクショナリー攻撃とは?)
何事についてもいえるように、DES(詳しくは、特別講座<暗号編>を参照せよ)の場合も絶対確実ではない。DESによって暗号化したLinuxパスワードは、すぐに(通常は数分で)クラック可能である。理由は以下の2つである。
ディクショナリー攻撃とは、辞書(ToolZの下の方でDLできます)を使い、DESを使ってそれを暗号化する。この処理中には、Linuxパスワードに適応されるのと全く同じ変形・変換を行えば、通常の単語や固有名詞などのテキストに対して正確に適応する。この時に使われるTOOLが、パスワードクラッカーです。そのパスワードクラッカーで暗号化テキストを引き出すたびに、それを/etc/passwdファイル内のパスワードと比較します。いずらは一致するテキストが見つかり、その時点でクラックが成功というわけです。
実際に試したほうが分かりやすいでしょう。
■パスワード(詳しくは、特別講座<パスワード編>を参照せよ)
UNIX上では、全てのユーザーのログインIDとパスワードは、passwdファイル(例えば、/etc/passwd)にテキスト形式で暗号化されて格納されてます。
暗号化には、DES(data encryption satandard)に基づくCryptプログラムが使用されています。
例;root:nall/yRfTbrh2:0:1:Operator:/:/bin/csh←この場合、nall/yRfTbrh2が暗号化されたパスワード。
よって、その暗号化を解かなければ本当のパスワードがわからないわけです。
■シャドウ
*や!などでパスワードが隠れている場合があります。
例;audit:*:9:9::/etc/security/audit:/bin/csh
ちなみに、シャドウされていても分かりますよ。その話はまた今度。
例;System V Release 4.0ならば、おそらく [etc/shadow]
■パスワードクラッカーに必要なもの
■TOOL
●Crack[UNIX上版DL]
Crackはパスワードファイルの情報と辞書をもとに,パスワードを推測する辞書攻撃を行います。これによって,見破られやすい(弱い)パスワードを発見することができます。
まず,CrackはpasswdファイルのGECOSフィールドから文字列情報を得ます。この文字列を,そのまま,逆にしたり,2回繰り返したり,綴りを並べ替えたりしてパスワードを推測します。
次に,辞書をもとにパスワードを推測します。これには非常に多くの処理時間を要します。なお,辞書は日本語の辞書を追加して利用することもできます。
●John the Ripper(Solar Designer)[DOS版DL]
crypt()ルーチンは、より早い処理のために高度に最適化されており、他のクラッカーよりはるかに速く動作します。そのことは、アセンブリバージョン、移植性の高いCバージョンの両方にも当てはまります。
●Cracker Jack[DOS版]
[D:\jack]jack
Cracker Jack version 1.4 for OS/2 and DOS (386)
Copyright (C) 1993, The Jackal, Denmark
PWfile(s) : domain.com.passwd
Wordfile : domain.com.passwd
このようにパスワードファイルを辞書として走らせる。これはすべてのログインにログイン名をパスワードとして使う。もし、他人の名前や会社の名前を使っていたら、ヒットします。
単語を変化させたい(hash)なら、Crackerjack の DOC を良く読みましょう。ハッシングは辞書の大文字と小文字を変えたり、最初や最後に数字や文字を加えたりする。sandy が 1sandy のように。多くのユーザーがこれを行い更に安全になったと考えていることが分かるだろう。
また、標準パスワードクラッカー講座をどうぞ。
●Merlin(CIAC DOE)
総合的セキュリティー関連ユーティリティー。
●MacCrack
林檎の中で最強。
●などなど
辞書作成に関してはただ単に単語がつらつら書いてあればいいです。
こんな感じ↓(白色がそうです)
Trainjack
baka
hacker
Cracker
endoflife
fuckyou
speaker
CrushMe
SuperOn
(以下八文字までの単語がつらつら続く)
Johnの辞書とかに関してはUGのいろんなページでダウンできると思います。
また、広範囲の辞書(ワードリスト)が欲しい人は、Coast PurdueのWordlist Archiveに様様な言語やジャンルのものがあります。
ちなみに、なかったら自分で単語をあつめて作成しましょう。基礎辞書作成講座も参照してください。
■おまけパスワードファイル
kunio:vxzH9S9yvY5cM:10:10:Kunio Goto:/home/kunio:/bin/csh
goto:ZgFPnQNDJbhsU:11:10:Goto Kunio:/home/goto:/bin/csh
guest1:JWb0XgtGlPgt6:12:10:Guest 1:/home/guest1:/bin/csh
foo:XrhhzDFNR/c26:13:10:Foo:/home/foo:/bin/sh
bar:f3WHN.EBRt5yw:13:10:Bar:/home/bar:/bin/sh
guest:qJn84adV/fS66:14:11:Guest:/home/guest:/bin/tcsh
Crackの結果
実行環境BSD/OS3.0, Dec HiNote Ultra2 CS475, 486DX, メモリ24MB (Crack -nice 5 パスワードファイル例)
865054746:Guessed goto [kunio] Goto Kunio [/usr/home/goto/TIC/Sympo/Examples/passwd.example /bin/csh]
865054746:Guessed kunio [goto] Kunio Goto [/usr/home/goto/TIC/Sympo/Examples/passwd.example /bin/csh]
--> この2つは一瞬
865055778:Guessed guest1 [changeme] Guest 1 [/usr/home/goto/TIC/Sympo/Examples/passwd.example /bin/csh]
--> 17分後
■関連リンク・関連文献
|
|||
|
|