1、概述
电子邮件是最常用的网络应用之一,已经成为网络交流沟通的重要途径。但是,垃圾邮件(spam)烦恼着大多数人,近来的调查显示,93%的被调查者都对他们接收到的大量垃圾邮件非常不满。一些简单的垃圾邮件事件也造成了很有影响的安全问题。日益增加的垃圾邮件现在会造成1年94亿美元的损失(来自chinabyte上一则新闻的数据),在一些文章表明,垃圾邮件可能会花费一个公司内每个用户600到1000美元。
垃圾邮件随着互联网的不断发展而大量增长,不再像以前一样,只是小小的一个骚扰,现在的垃圾邮件可以说是铺天盖地了。最初,垃圾邮件主要是一些不请自来的商业宣传电子邮件,而现在更多的有关色情、政治的垃圾邮件不断增加,甚至达到了总垃圾邮件量的40%左右,并且仍然有持续增长的趋势。另一方面,垃圾邮件成了计算机病毒新的、快速的传播途径。
而且目前世界上50%的邮件都是垃圾邮件,只有少数组织承担责任。很多反垃圾邮件的措施都被提出出来,但是只有非常少的被实施了。不幸的是,这些解决办法也都还不能完全阻止垃圾邮件,而且还对正常的邮件来往产生影响。
1.1、什么是垃圾邮件?
某种程度上,对垃圾邮件的定义可以是:那些人们没有意愿去接收到的电子邮件都是垃圾邮件。比如:
*商业广告。很多公司为了宣传新的产品、新的活动等通过电子邮件的方式进行宣传。
*政治言论。目前会收到不少来自其他国家或者反动组织发送的这类电子邮件,这就跟垃圾的商业广告一样,销售和贩卖他们的所谓言论。
*蠕虫病毒邮件。越来越多的病毒通过电子邮件来迅速传播,这也的确是一条迅速而且有效的传播途径。
*恶意邮件。恐吓、欺骗性邮件。比如phishing,这是一种假冒网页的电子邮件,完全是一种诡计,来蒙骗用户的个人信息、账号甚至信用卡。
普通个人的电子邮箱怎么成为了垃圾邮件的目标呢,造成这样的结果有很多原因,比如在网站、论坛等地方注册了邮件地址,病毒等在朋友的邮箱中找到了你的电子邮箱,对邮件提供商进行的用户枚举,等等。通常情况下,越少暴露电子邮件地址越少接收到垃圾邮件,使用时间越短越少接收到垃圾邮件。一些无奈的用户就选择了放弃自己的邮箱而更换新的电子邮箱。
1.2、安全问题
垃圾邮件给互联网以及广大的使用者带来了很大的影响,这种影响不仅仅是人们需要花费时间来处理垃圾邮件、占用系统资源等,同时也带来了很多的安全问题。
垃圾邮件占用了大量网络资源,这是显而易见的。一些邮件服务器因为安全性差,被作为垃圾邮件转发站为被警告、封IP等事件时有发生,大量消耗的网络资源使得正常的业务运作变得缓慢。随着国际上反垃圾邮件的发展,组织间黑名单共享,使得无辜服务器被更大范围屏蔽,这无疑会给正常用户的使用造成严重问题。
垃圾邮件和黑客攻击、病毒等结合也越来越密切,比如,SoBig蠕虫就安装开放的,可以用来支持邮件转发的代理。随着垃圾邮件的演变,用恶意代码或者监视软件等来支持垃圾邮件已经明显地增加了。2003年12月31,巴西的一个黑客组织发送包含恶意javascript脚本的垃圾邮件给数百万用户,那些通过Hotmail来浏览这些垃圾邮件的人们在不知不觉中已经泄露了他们的账号。另外一个例子就是,近来IE的URL显示问题,在主机名前添加"%01"可以隐藏真实的主机地址,在被发布之后几个星期内就出现在垃圾邮件中了。
越来越具有欺骗性的病毒邮件,让很多企业深受其害,即便采取了很好的网络保护策略,依然很难避免,越来越多的安全事件都是因为邮件产生的,可能是病毒、木马或者其他恶意程序。Phishing的假冒诡计对于普通使用者来说,的确很难作出正确的判断,但是造成的损失却是很直接的。
2、反垃圾邮件技术
已经存在的和在被提及的反垃圾邮件方法试图来减少垃圾邮件问题和处理安全需求。通过正确的识别垃圾邮件,邮件病毒或者邮件攻击程序等都会减少。这些解决方法采取多种安全途径来努力阻止垃圾邮件。
Dr. Neal Krawetz在Anti-Spam Solutions and Security[ref 1]文中将反垃圾邮件技术作了非常好的分类。当前的反垃圾邮件技术可以分为4大类:过滤器(Filter)、反向查询(Reverse lookup)、挑战(challenges)和密码术(cryptography),这些解决办法都可以减少垃圾邮件问题,但是都有它们的局限性。本文将在下面的内容讨论这些技术以及一些主要技术的实现。
2.1、过滤
过滤(Filter)是一种相对来说最简单却很直接的处理垃圾邮件技术。这种技术主要用于接收系统(MUA,如OUTLOOK EXPRESS或者MTA,如sendmail)来辨别和处理垃圾邮件。从应用情况来看,这种技术也是使用最广泛的,比如很多邮件服务器上的反垃圾邮件插件、反垃圾邮件网关、客户端上的反垃圾邮件功能等,都是采用的过滤技术。
2.1.1、关键词过滤
关键词过滤技术通常创建一些简单或复杂的与垃圾邮件关联的单词表来识别和处理垃圾邮件。比如某些关键词大量出现在垃圾邮件中,如一些病毒的邮件标题,比如:test。这种方式比较类似反病毒软件利用的病毒特征一样。可以说这是一种简单的内容过滤方式来处理垃圾邮件,它的基础是必须创建一个庞大的过滤关键词列表。
这种技术缺陷很明显,过滤的能力同关键词有明显联系,关键词列表也会造成错报可能比较大,当然系统采用这种技术来处理邮件的时候消耗的系统资源会比较多。并且,一般躲避关键词的技术比如拆词,组词就很容易绕过过滤。
2.1.2、黑白名单
黑名单(Black List)和白名单(White List)。分别是已知的垃圾邮件发送者或可信任的发送者IP地址或者邮件地址。现在有很多组织都在做*bl(block list),将那些经常发送垃圾邮件的IP地址(甚至IP地址范围)收集在一起,做成block list,比如spamhaus的SBL(Spamhaus Block List),一个BL,可以在很大范围内共享。许多ISP正在采用一些组织的BL来阻止接收垃圾邮件。白名单则与黑名单相反,对于那些信任的邮件地址或者IP就完全接受了。
目前很多邮件接收端都采用了黑白名单的方式来处理垃圾邮件,包括MUA和MTA,当然在MTA中使用得更广泛,这样可以有效地减少服务器的负担。
BL技术也有明显的缺陷,因为不能在block list中包含所有的(即便是大量)的IP地址,而且垃圾邮件发送者很容易通过不同的IP地址来制造垃圾。
新闻热点
疑难解答