浅析主流邮箱的反垃圾邮件技术 引言 随着国际互联网Internet的发展和普及,互连网的规模呈现几何级数爆炸式增长,电子邮件(e-mail)以其方便、快捷、低成本的独特魅力成为人们日常生活中不可缺少的通信手段之一。但电子邮件给人们带来极大便利的同时,也日益显示出其负面影响,那就是我们每天收到的邮件中有很大一部分是那种“不请自来”的,它们或者是推销广告,或者是一些有害的不良信息,甚至还有病毒。在中国互联网协会不久前发布的“2005年第三次反垃圾邮件状况调查报告”中,网民收到的垃圾邮件占据了总邮件数量的61.53%%。而搜狐提供的一项调查显示,每天收到垃圾邮件30封以内的网民占63.64%%,每天收到30封至100封的占了18.18%%,而收到100封以上的网民也占到18.18%%。 现在很多反垃圾邮件技术方案都不会只采用一种技术,而是多种技术的综合体。目前的反垃圾邮件产品所采用的技术主要还是黑白名、关键词过滤、HASH技术、贝叶斯过滤、智能过滤、DNS识别、速率控制、OCR识别和分析、病毒扫描、全面信誉系统、基于规则的评分系统和数据挖掘等技术(除数据挖掘技术外那些过滤技术属于事后防备型)。这里不再进行赘述,我主要对主流邮箱的特殊反垃圾技术进行介绍 一、163 网易邮箱 作为中国反垃圾邮件协会成员与发起人之一,网易积极倡导并发起反垃圾邮件平台,参与反垃圾邮件行业法规的制定,并针对时下流行的垃圾邮件的特点,自主创新智能反垃圾技术。对于企业邮箱可能会收到大量垃圾邮件问题,网易邮箱采取综合评分策略,从多角度多方位启发式评估邮件是否为垃圾邮件。邮箱用户可以通过举报垃圾邮件及时反馈给后台系统,系统以最快速度更新反垃圾邮件策略,阻止垃圾邮件继续进入。网易邮箱的垃圾邮件正确捕获率达99.99%,误判率仅为0.001% ,优于国际0.003%的业界标准,更优于国内大部分邮件服务商0.01%的标准。 1.1采用了基于多个rbl dns查询的综合评分策略 网易目前与国际知名的几个RBL组织,包括spamhaus/surbl/uribl等组织都建立良好合作关系,并为其提供了在国内的公益性dns查询镜像服务。 而在判定标准上,网易并不仅仅基于某一个单一的反垃圾策略,而是将一次邮件会话过程中所能提供的所有“证据”作为整体评价,包括了连接、频率、内容过滤等方方面面,最终按照系统制定以及用户自己的策略,来决定拒绝还是接收。以RBL为例:假如某个IP被spamhaus收录了,我们系统并未因此而拒绝此IP,但如果同时被spamhaus, surlbl, uibl等收录了,那么这封邮件被拒收的可能性就非常大。 1.2 应用了图片指纹相似度技术、图片bayes技术及图片像素特征分析技术 在2007年年中,从国外涌入了大量的图片垃圾邮件,单靠过往的技术无法有效抵御,因为传统的反垃圾技术对图片垃圾邮件无效,很难对其进行内容过滤。网易从发现图片垃圾邮件开始,便第一时间着手研发有针对性的反击技术。最终应用了图片指纹相似度技术、图片bayes技术及图片像素特征分析技术,有效地抵御了本次图片垃圾邮件狂潮,并为日后做好了充分的准备。 前段时段,还曾出现过基于PDF格式,FLASH格式的垃圾邮件,都被网易通过有效、精准的技术手段拦截下来。 1.3 建立了基于发送者信誉的海量数据库系统 网易长期坚持邮件服务提供商之间的互通互盈,但却并未因此而放松对垃圾邮件的监控。发送者信誉机制就是一种先进的思路,网易会动态评估独立IP和域名的历史发送情况,结合RFC标准的SPF发送者验证技术,建立不同的信誉值,纳入综合评分体系。 1.4 建立了切实有效的用户反馈举报系统 任何单一的技术手段都无法实现100%的捕捉率和正确率,所以网易也坚持以用户为宗旨,设立用户反馈机制。在服务器对话中遇到问题,可以链接到WEB页面查明原因,也可以直接电话联系网易的 24小时客服系统。在WEB邮箱中,用户可以对漏进来的垃圾邮件或被误判的正常邮件进行申诉,反垃圾过滤系统能不断调整过滤策略,提高过滤效率,降低误判发生的几率。 1.5 用户个性化反垃圾设置 网易邮箱正全力开发基于用户个性化的反垃圾系统,按照用户自己的使用习惯,历史行为,性格喜好来判断是否为垃圾邮件。为了提高用户级别的反垃圾质量,网易除了提供用户反馈渠道外,还提供精度更高的用户级别内容过滤策略。用户往来的邮件特征可以被系统收集,从而形成个性化的使用习惯;邮件系统会优先使用用户级的数据来进行过滤。例如某用户订阅了一份电子杂志,被系统误投入了垃圾箱,用户只需要简单地从垃圾箱移动到收件箱,就可以保证以后此类邮件都可以正常地进入到收件箱。另外,网易也提供了传统的用户黑白名单,以及可定制的反垃圾克星等。 1.6 与各大邮件运营商建立了稳定良好的日常沟通联络 包括与GMAIL和AOL都建立了互相举报垃圾邮件的spam feedback系统。 二、雅虎、Gmail Domainkeys 是由雅虎公司推出的一项确保电子邮件来源的真实性和内容的完整性的技术,它能让电子邮件服务商确定某封信是否真实的来自某个域和帮助他们的用户免受“钓鱼欺诈邮件“的损害,比如用户常收到伪造这些机构的诈骗邮件,然后索取用户的信用卡卡号和密码。 而对于金融机构等公司也有保护用户的交易信息,提高用户满意度,减少客服咨询处理量和品牌保护的作用。 Domainkey的工作原理是:发信域的负责人首先生成一对公私钥用于对它发出的邮件进行签名,公钥需要部署到公共的DNS 服务器上供所有收信方查询。而私钥则用于加密自己发出的信。这样只有含有用这个私钥加密后的字符串的邮件才是该域发出的邮件。收信方在收到邮件时,可以通过公用DNS查询它的公钥,然后用该域的公钥来解密验证收到的邮件。如果验证是正确的,这封信就被投递到用户的邮箱里;如果验证失败,邮件将会被丢弃或者标志。这样用户在所收到的邮件就能确保邮件确实是该域发出。 Domainkey的验证过程:例如[email protected]发送给[email protected],a.com的mta会在每封发出的邮件里根据私钥生成一个签名.当b.com的mx服务器在接收邮件时会根据发送方邮件头里的签名查出selector(即s字段,用于签名.例如dk),则b.com的mx会查找dk._domainkey.b.com的txt记录得到公钥.然后使用公钥对签名进行核实。 DomainKeys的实现过程: 发送服务器经过两步: 1、建立。域所有者需要产生一对公/私钥用于标记所有发出的邮件(允许多对密钥),公钥在DNS中公开,私钥在使用DomainKey的邮件服务器上。 2、签名。当每个用户发送邮件的时候,邮件系统自动使用存储的私钥来产生签名。签名作为邮件头的一部分,然后邮件被传递到接收服务器上。 接收服务器通过三步来验证签名邮件: 1、准备。接收服务器从邮件头提取出签名和发送域(From:)然后从DNS获得相应的公钥。 2、验证。接收服务器用从DNS获得的公钥来验证用私钥产生的签名。这保证邮件真实发送并且没有被修改过。 3、传递。接收服务器使用本地策略来作出最后结果,如果域被验证了,而且其他的反垃圾邮件测试也没有决定,那么邮件就被传递到用户的收件箱中,否则,邮件可以被抛弃、隔离等。 DomainKeys技术通过防止邮件地址欺骗来解决困扰整个互联网的垃圾邮件问题,可以有效地阻止了各种各样经过改头换面的垃圾邮件; Domainkey是在接收方邮件运营商支持的情况下才有效,否则对接收双方是没有意义的,因此从本质上来说,也不能鉴定一个邮件是否是垃圾邮件。 三、微软 Hotmail 2004年,Gates曾信誓旦旦地预言微软能够在未来消灭垃圾邮件,他所期望的就是Sender ID技术,但是,最近他则收回了他的预言。这也就是标准之争,微软希望IETF能够采用Sender ID技术作为标准,并且得到了大量支持,比如Cisco, Comcast, IBM, Cisco,Port25,Sendmail,Symantec,VeriSign等,也包括后来又倒戈的AOL的支持,但是在开源社区,微软一直没有得到足够的支持,IETF最终否决了微软的提议。 SMTP协议本身是一个简化的邮件递交协议,缺乏必要的身份认证,这是造成垃圾邮件泛滥的原因之一。针对这种情况,人们提出了一系列方法,如SPF(发件人策略框架)、CallerID(呼叫者身份认证)等等。SenderID技术是由微软公司提出的,就是CallerID技术和SPF技术的结合体。顾名思义SenderID技术就是根据发送方所提供的表明来源的信息来决定接收与否。事实上,这种技术并不直接判断某封邮件是否是垃圾邮件,而是判断邮件的来源是否与其标称相符。也就是说,它不是用来阻止垃圾邮件的发送,而是正确回答“谁发送了邮件”这个基本问题,从而使得垃圾邮件的判定更加简单。 SenderID的工作流程大致分为四步(如图1): 第一步,发信人使用自己的PC机撰写一封邮件; 第二步,撰写完毕,P机通过SMTP协议,路由发送该邮件到接收邮件服务器; 第三步,接收邮件服务器通过SenderID技术对发信人所声称的身份进行检查(该检查通过DNS的特定查询进行); 第四步,如果通过检查,发现发信人所声称的身份和其发信地址相匹配,那么接收该邮件,否则对该邮件采取特定操作,比如直接拒收该邮件。 SenderID技术主要包括两个方面:发送邮件方的支持和接收邮件方的支持。其中发送邮件方的支持主要有三个部分:发信人对其DNS的修改,增加特定的DNS资源记录以表明其发信身份;发信人在其外发邮件服务器的发信通信协议中增加SUBMITTER扩展;发信人根据情况在其邮件中增加Re-sent-Sender、Resent-From、Sender和From等信头。接收邮件方的支持有:收信人对收到的邮件通信信息进行DNS查询,通过特定的DNS资源记录检查其发信身份。这些检查的通讯信息包括EHLO/HELO信息、MAIL FROM信息、信头中特定的字段信息等。 SenderID技术抓住了垃圾邮件发送的一个重要特征,那就是垃圾邮件总是想方设法地掩盖其发送来源,通过这一点可以避免被阻挡、追踪和逃避法律责任。因此,广泛实施的SenderID技术可以对垃圾邮件的生存造成致命的打击。 当然SenderID也有缺陷:其一,因为SenderID技术只是一个解决垃圾邮件发送源的技术,从本质上来说,并不能鉴定一个邮件是否是垃圾邮件。比如,垃圾邮件发送者可以通过注册廉价的域名来发送垃圾邮件,从技术的角度来看,一切都是符合规范的;还有,垃圾邮件发送者还可以通过别人的邮件服务器的漏洞转发其垃圾邮件,这同样是SenderID技术所不能解决的。其二,SenderID技术需要对DNS机制进行扩充,实施比较难 DomainKey和SenderID技术解决的问题是邮件地址是否合法有效,这样一则可拒绝邮件地址和签名不一致的邮件,二则可辅助“白名单”和“黑名单”进行过滤。这两项技术的缺陷是需要对现在所有的邮件服务器进行升级改造,需要业界的共同行动。 四、其它邮箱 4.1 新浪邮箱方面 新浪免费邮件系统和企业邮件系统采用的是思科Ironport反垃圾邮件网关。IronPort邮件安全产品是当今被事实证明了的具有最高可用性的解决方案。它被应用于世界上最大10家邮件运营商中的8家。具体的细节技术问题可以参阅:http://www.cisco.com/web/CN/products/products_netsol/security/ironport/index.html 4.2搜狐邮箱方面 搜狐邮件系统的反垃圾邮件技术,之前应用的是深圳汉启科技提供的反垃圾邮件网关,目前的情况不得而知。仅作参考。汉启科技:http://www.smartedm.com/ 五、结语 垃圾邮件是全球性的问题,且已经成为一种社会现象,单靠反垃圾邮件技术的发展或是纯粹的技术手段是无法解决的,还是应当采用管理与技术相结合的方式,以先进的技术手段为基础,以完善的管理制度和法律法规为依托,对社会各主体的邮件活动进行规范,通过建立国家级的反垃圾邮件公共服务体系,完善国内的垃圾邮件举报平台,促进各运营商和邮件服务商的协调合作,再次推动反垃圾邮件技术的更新和快速发展。 六、参考资料 1. 《Google在Gmail中采用雅虎反垃圾邮件技术》 http://www.soidc.net/articles/1183730975605/00021130/1184337187561.html 2. 中国邮箱网 http://www.chinaemail.com.cn 3. 《反垃圾邮件 ——永不停止的战争》中国电脑教育报 http://media.ccidnet.com/art/2991/20050913/331501_1.html 4. 反垃圾邮件技术的措施及主流技术 http://www.mailagent.cn/web1/news.asp?id=8852 5. 俞树文浅谈反垃圾邮件技术 温州:温州大学现代教育网络中心,2006 6. 林青 垃圾邮件过滤技术研究 厦门大学 注:关于新浪搜狐邮箱的反垃圾邮件技术,我请教了中国邮箱网的技术专家,因为不是使用率很高的技术,故没有深究。 http://www.chinaemail.com.cn/zjdy/wangjingren/wtdy/201004/48036.html |