- - PR -
APOPのふしぎ
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-09-13 14:33
こんにちは、トーヤです。
現在、qpopperをインストールし、APOPによるユーザ認証を 行っております。(OSはSolaris8です、すみません・・・) APOP通信パケットをキャプチャし、パスワードが暗号化されて いることをちゃんと確認しました。このとき使用していた MUAはBecky!v2でした。(APOP対応していましたので) ここで、 # telnet APOPserver 110 を実行し、APOPコマンドでハッシュ後のパスワード(md5関数で 割り出したもの)を指定してやってみたところ、認証失敗します。 どうやら、Solaris8に導入した(Sunfreeware.comで入手した) md5では、異なるハッシュ値が出力されているようです。 APOPコマンドに指定したのは、コマンド行から # echo <2004NNNN181409.3NNN.TOYA@test.com>password | md5 を実行し出力された値です。 APOPではハッシュ値計算にMD5が使われていると思っていたのですが、 ひょっとすると違うのでしょうか・・? (もしくは、DIGEST-MD5じゃなくCRAM-MD5だとか・・?) それとも、、、 そもそもハッシュ値の出し方が間違っているのでしょうか? ご存知の方、お教えいただければ嬉しいデス!よろしくお願いします! | ||||||||
|
投稿日時: 2004-09-13 14:50
echo の出力には改行コードが含まれるので、それを含めてダイジェストしているんじゃないでしょうか?
| ||||||||
|
投稿日時: 2004-09-13 14:56
holic さん、ご回答多謝です!!
ナルホド!おっしゃる通りかもしれません。 echoコマンド実行結果をパイプでmd5に渡しているので、改行は 含まれないと勝手に思い込んで悩んでました。。。。 ファイルに文字列(<2004NNNN181409.3NNN.TOYA@test.com>password)を 入れて(改行ナシです)、以下のコマンドでチャレンジしてみました。 # md5 <そのファイル名> 結果は・・・NGでした。。。 (echoを使った際と結果は同じでした。。。) 引き続き、どしどしご指摘おねがいしマス!! | ||||||||
|
投稿日時: 2004-09-13 16:22
こんにちは。
# echo '<2004NNNN181409.3NNN.TOYA@test.com>password' | md5 上記のようにシングルクォートで囲んでみると、どうでしょ? それとアタック用文字列は、その都度サーバから取得したものを使っていますよね? | ||||||||
|
投稿日時: 2004-09-13 16:27
BBC さん、ご回答多謝です!
シングルクォートとダブルクォート、双方試してみても結果は同じでした。
はい、 telnet実行->チャレンジコード取得->レスポンス算出->APOPコマンド実行 を繰り返しております。 | ||||||||
|
投稿日時: 2004-09-13 19:18
# echo '<2004NNNN181409.3NNN.TOYA@test.com>password' | tr -d '\n' | md5
で生成したハッシュで、手元の APOP サーバにはログインできました。 | ||||||||
|
投稿日時: 2004-09-14 11:47
holic さん、ご回答多謝デス!そして、ごめんなさい!!
holic さんのおっしゃる通りの方法で実現できました! せっかく以前にも「改行コードが悪いのでは」というアドバイスを 頂いたのに、「なるほど、じゃあファイルに入れてやってみよう」と いうワタシの見当違いな対処のせいで、どつぼにハマるところでした。。。 ありがとうございました!! あつかましいのですが、ここでもう一つAPOPについて聞かせてください。 APOPを使えるようにすると、POPの標準認証(USERコマンドとPASSコマンド)を 使えなくなるようなのですが、これを使えるようにはできないというワタシの 認識は、はたして正しいものでしょうか?? よろしくお願いしマス! | ||||||||
|
投稿日時: 2004-09-14 12:47
popper の起動オプションに -p 2 を加えることによって APOP および 生パスワードを使う POP 認証も許可されます。 http://solaris.asada.sytes.net/GLEANING/SD/2001-08.html#APOP や qpopper(8) も参照してみてください。 私のところの Solaris8 2/02 + qpopper4.0.5 ではスーパーサーバ(xinetd) 経由で動作させています。 |