パスワードを忘れた? アカウント作成
639256 journal

vishaの日記: qscan(3)

日記 by visha

で、これでちゃんと機能はしてくれるのだが(さっそくMyDoom-Aを弾いた)、ちょっと問題がある。

  1. qmail-smtpdが返すエラーメッセージが「qq permanent problem (#5.3.0)」となる。
  2. SMTP上のパーマネントエラーになるので、メッセージは問答無用でMAIL FROM宛にたたき返されてしまう。
  3. 検出ログがsyslogに吐かれてしまう。
  4. ウィルススキャン中SMTP peerと接続しっぱなしなので、同じホストから一気に複数セッション張られた場合、すぐ接続上限に達してしまう可能性が高い。

1はqscanがウィルス検出時に返す39というステータスをqmail-smtpdが「何らかのパーマネントエラー」としか扱えないことが原因なので、qmail.c中のqmail_close()に39を扱うコードを足せば良い。

2は、最近のメールばらまき型ウィルスの場合MAIL FROMを詐称するのが当たり前なので問題となる。もっとも、最近のメールばらまき型ウィルスの多くはSMTPエンジンを自前で持っているため、SMTPセッションの中で弾くという選択肢もありなのかもしれない。どこかのMTAを中継していると、詐称されたアドレス宛にバウンスしてしまうのが悩ましい。

3は好みの問題だろうが、他のメッセージといっしょにmultilogで処理したいだけだ。

4はtcpserverで「同一IPアドレスからの同時接続数の上限」というのを別途ハンドリングするのがいいかと思っている。

# ともあれ、しばらく実験を続けることにしよう。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

あつくて寝られない時はhackしろ! 386BSD(98)はそうやってつくられましたよ? -- あるハッカー

読み込み中...