2006年5月21日

[SpamAssassin-JP 237] Re:auto-whitelist のアドレス部分にゴミがある

** SpamAssassin メーリングリスト **
** 注意:このメールへの返信は SpamAssassin-jp へ行きます **
久保です。

> ここに来たときは、From: がすでにMIMEデコードされてるようです。
> 名前部分に「若」や「ー」が入っていると、
> MIMEデコードすると「<」が現れます。

ああ、そうかもしれないですね。

元の正規表現だと、はじめて出現した「<」の次の文字からはじめて出現した
「>」の直前の文字までをメールアドレスとみなす、ということになりますか
ら、デコードした文字列中に「<」があったらおかしくなります。

> From: を解析して、名前とアドレスに分離してから
> デコードしなくちゃいけないんではないかしらん。

デコードが先かな、と思います。

以前実験的にMIMEエンコードをいろいろいじっていたときに、"<メールアドレ
ス>"まで含めてFrom:行の中身全体がBエンコーディングされてしまったような記
憶があります。

> とすると、とりあえず何通か試してみた限りはうまくいっています。

少しは改善したみたいですね。

> これ、「アドレスは末尾にあると限定」して良いんでしたっけ?
> From: <アドレス> 名前
> ってダメなんでしたっけ?

すみません、そこまで配慮してませんでした。

if (/From:\s.*<([^<>+])>/ {

だとどうでしょう。メールアドレス自体に「<」と「>」が含まれることはない、
という前提です。スペースが含まれることもないでしょうから、スペース文字を
加えてもいいかも。

メールアドレスを完全に表現した正規表現というのを以前どこかで見たことがあ
ります。すごく長いんですが、これをあてはめたらもっといいのかもしれませ
ん。でもスパム送信者が名乗るFrom:メールアドレスがRFCに正しく準拠している
という保証はないかもしれないので、これでも完全な解決にならないかもしれない。

# メールアドレスのユーザ名部分に「'」が含まれているというケースに遭遇し
# たことがあります。このときは、メールから拾ったアドレス部分をMySQLに格
# 納するSQLが構文エラーになってしまう、という問題でした:-)

--
----------------------------------------------------------------------
久保 元治 (株)サードウェア
Motoharu Kubo 274-0815 千葉県船橋市西習志野3-39-8
mkubo@xxxxx URL: http://www.3ware.co.jp/
Phone: 047-496-3341 Fax: 047-496-3370
携帯: 090-6171-5545
★弊社からのメールはZ-Linuxメールフィルタで全数検査しています★
★ ブログを始めました http://blogs.itmedia.co.jp/ossway/
--
SpamAssassin メーリングリスト
http://mm.apache.jp/mailman/listinfo/spamassassin-jp

投稿者 xml-rpc : 2006年5月21日 15:33
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/39981
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。