木曜日, 5月 22, 2008

スパムの大量差し戻しの蹴り方

 スパマーに送信者アドレスをかたられて、user unknownになったスパムの差し戻しが大量に殺到しては、大変な迷惑である。5月18日「バウンシングバック認証のもう一つの穴」で、BBSのゲストのkkkさんが677通のスパム差し戻しを受けられたことを書いた。その日はほとんど仕事にならなかったそうである。
 その記事では、「差し戻しはメールサーバから送られてくるから、残念ながらS25Rでは阻止できない」と書いた。しかし、仕事にならなくなる前に防御する方法があることを思い出した。私がS25R方式を考案する前に使っていた内容チェックである。差し戻されてくるスパムの文面が同じならばこの手が使える。
 main.cfファイルには、あらかじめ

body_checks = regexp:/etc/postfix/body_checks

という指定を書き込んでおき、空のbody_checksファイルを用意しておく。スパムの大量差し戻しを受けたら、差し戻しメールに引用されているスパムの文面から特徴的な文字列を抽出し、それをbody_checksファイルに指定して「postfix reload」を実行する。特徴的な文字列としては、スパマーが誘導しようとするサイトのURLがよい。
 私のアドレスを送信者アドレスにかたったスパムが私に差し戻されてきた例を挙げる(この時はこれ1通で済んだ)。

Hi. This is the qmail-send program at gaba-network.org.
I'm afraid I wasn't able to deliver your message to the following addresses.
This is a permanent error; I've given up. Sorry it didn't work out.

<***@gaba-ca.org>:
This address no longer accepts mail.

--- Below this line is a copy of the message.

Return-Path: <deo@gabacho-net.jp>
Received: (qmail 14545 invoked from network); 17 Feb 2008 13:23:39 -0800
Received: from 82-34-216-89.cable.ubr08.gill.blueyonder.co.uk (HELO flibble) (82.34.216.89)
  by air479.startdedicated.com with SMTP; 17 Feb 2008 13:23:39 -0800
X-Mailer: CME-V6.5.4.3; MSN
Return-Path: ***@cimail15.msn.com
Received: (qmail 37667 by uid 140); Sun, 17 Feb 2008 10:27:30 GMT
Message-Id: <20080217102730.37669.qmail@flibble>
To: <***@gaba-ca.org>
Subject: February 71% OFF
From: <***@gaba-ca.org>
MIME-Version: 1.0
Content-Type: text/html; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html dir="ltr">
…(略)…
<a href="http://track.msadcenter.lyv.com/wwfdtge_ovatpimxtn.html" target="_blank">Click here to get enrolled for your ndnn !</a><br><br>
<img src="http://track.msadcenter.rcy.com/qlooaza-ovatpimxtn.gif" border=0 usemap="#Map">
…(略)…

もし同じ文面のスパムが大量に差し戻されてきたら、<A>タグで指定されたURLを拾って、body_checksファイルには次のように記述する。

/http:\/\/track\.msadcenter\.lyv\.com\/wwfdtge_ovatpimxtn\.html/ REJECT

 これにより、差し戻しの受け取りが拒否される。差し戻そうとしたサイトのポストマスターに差し戻し失敗の通知が行くのは迷惑かもしれないが、やむを得ない。こちらの自己防衛のためである。
 そもそも、MXサーバで受け取った後にuser unknownを検出して送信者アドレスへ向けて差し戻すというシステム構成が良くないのである。外部から最初にメールを受信するMXサーバにサイト内のユーザーリストを持っておいて、サイト内部でuser unknownになることをMXサーバがただちに判定して受け取りを拒否するシステム構成の方がよい。そうすれば、アドレスをかたられた被害者に不正な差し戻しが行くことはなくなるし、でたらめの送信者アドレスをかたったスパムの差し戻しが失敗してポストマスターに通知が殺到することもなくなる。もっとも、qmailでは難しいのかもしれないが。

0 件のコメント: