1.邮件头追踪
一般来说,邮件内容、Reply-to、最终邮件服务器的Received的内容都有助于我们追踪垃圾邮件的来源。对于“Received:”域来说,我们可以从时区出错、时间误差、IP地址错误这几个方面来追查。试想,一个邮件经过了几天甚至更长时间来传递,正常吗?下面就是一个修改了邮件地址和IP地址的邮件头:
|
上面的邮件头,明显经过了篡改,包括在MUA 发送邮件时添加的头内容和经过MTA过程中添加的内容。现在,关键的任务就是要检查“Received:”的传递过程了。
第一步:找到如下内容:
Received: from risker.debian.org (unknown [218.18.xxx.xxx]) by mail.test.com.cn (Postfix) with ESMTP id 32E0817DC17 for ; Thu, 8 Aug 2004 16:47:06 +0800 (CST)
仔细分析,我们可以看到,这是第一个MTA 从MUA 接收邮件时插入的头内容。MUA 的机器名是Risker.debian.org(这不是MUA 的DNS,而只是机器名),(unknown[218.18.xxx.xxx])表示该机器的IP地址,但是查询的DNS是unknown的。该邮件被mai.test.com.cn接收,邮件服务器采用Postfix,而且采用的是ESMTP(扩展的SMTP),分配的ESMTP id是32E0817DC17,传递目标是pwbpub@test.com,接收时间为Thu,6 May 2004 16:47:06,时区是+0800 (CST)。
第二步:查找第二个Received:内容。具体如下:
Received: from mail.test.com.cn ([127.0.0.1]) by localhost (mail[127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 30543-01 for ; Thu, 8 Aug 2004 16:47:14 +0800 (CST)
这是邮件服务器内部程序进行的一个处理过程,因此IP 地址为127.0.0.1,并且是Localhost处理,(amavisd-new, port 10024)表明这个处理程序是使用的Amavisd-new,amavisd-new是一个用于邮件服务器的杀毒、过滤等的接口。
第三步:查找第三个Received:内容。具体如下:
Received: from mail.test.com.cn (unknown [211.167.xxx.xxx]) by test.com (Postfix) with ESMTP id 590F2160A9 for ; Thu, 8 Aug 2004 16:48:46 +0800 (CST)
该过程表示邮件从服务器名为Mail.test.com.cn 传递出去,IP 地址为211.167.xxx.xxx,接收邮件的服务器是Test.com,采用Postfix服务程序,也通常使用的ESMTP,传递的目标是pwbpub@test.com,日期为Thu,8 Aug 2004 16:48:46,时区是+0800(CST)。
从这个例子可以看出,邮件的传递过程是:
risker.debian.org(MUA)→mail.test.com.cn(MTA)→localhost(MTA中的amavisd-new)→test.com(MTA)
整个过程经历了将近两分钟,不过,在追踪垃圾邮件过程中,这个传递过程中的Received:存在被篡改的可能,也就是说,发送者可能使用了“障眼法”,因此,要炼就一双火眼金睛,判断哪些信息是伪造的,哪些是真实的。对于Received:来说,最后的站点是接收者自己的邮件服务器,因此最后的Received是真实可靠的,除非自己的服务器已经不安全了。
2.垃圾广告邮件追踪
现在,垃圾广告邮件尤其猖獗。对于这类邮件来说,内容中有联系人、联系电话、联系Email、邮编等,追查就很直接。一个典型的此类邮件头内容如下:
|
现在来对该邮件进行简单的分析。首先找到这一段:
Received: from spamemail.com (unknown [221.232.11.40])by test.com (Postfix) with ESMTP id 399521C124 for ; Mon, 24 May 2004 11:07:41 +0800 (CST)
本例中,测试用的邮件服务器Test.com是可信的,因此这一条Received信息也是可靠的,但其中的一些内容可能并不是真实可靠的。邮件来自一个机器名为spamemail.com的,IP 地址为221.232.11.40,邮件接收时间是Mon, 24 May 2004 11:07:41 +0800 (CST)。简单检查Spamemail.com,可以得出IP地址为Spamemail.com [203.207.*.*],很容易可以知道这个spamemail.com只是一个名字而已。该邮件的发送者是From: "bbcss" ,而回复地址是:Reply-To:reply@yahoo.com.cn。实际上,我们就可以推测:fault@spamemail.com就是伪造的了,但是回复地址却可能是真实的;另外,他们肯定使用了一些垃圾邮件发送工具,能够伪造发送者地址、机器名,并且可以直接传递邮件。