垃圾邮件过滤技术

1.1 反垃圾邮件的研究与发展

1.1.1 垃圾邮件定义

垃圾邮件,基本上在20世纪末期开始泛滥开来,邮件的广泛使用,以其成本低廉,传输便利的优势,使得邮件得到了商业组织的重视。在商业利益的驱动下,垃圾邮件开始在互联网上泛滥成灾。

1> 垃圾邮件(Email Spam)是指未经用户同意而接收到的电子邮件。具有以下特点[7]

(1) 未经用户同意,与用户不相关;

(2) 以欺骗的形式获取邮件地址;

(3) 具有虚假性广告,散布量大等

(4) 电子邮件用户收发电子邮件的方式调查

2> 垃圾邮件的影响

故此,垃圾邮件的防治工作正在受到十分严峻的考验。反垃圾邮件工作亟需得到及时的发展,目前针对反垃圾邮件的研究取得了巨大的进步,在这种背景下,本文针对当前较为成熟的算法以及邮件过滤方式,结合具体的使用习惯,开发一款有效易用的邮件客户端过滤系统[5, 7]

1.1.2 反垃圾邮件发展以及垃圾邮件过滤技术

反垃圾邮件的方式在技术上基本上分为技术过滤和非技术过滤,以技术过滤为主,主动过滤,在邮件传输过程中建立过滤机制;非技术过滤有:法律法规文献,统一的技术规范,或者社会的道德倡导等,同时,非技术过滤为反垃圾邮件提供法律支持和保障[2],基础规范以及道德支持。

在过程上邮件过滤分为服务端过滤和接收端过滤[5],接收端过滤是在邮件发送到邮件服务器之后,通过服务器系统程序对接受的邮件进行检查,属于被动过滤,主要是通过IP地址、关键字以及针对垃圾邮件其他明显的的特征进行过滤,其可行高,正常邮件判错率低,是目前主要的反垃圾邮件的手段之一。

垃圾邮件的广泛出现在根源上是利益驱动的结果。利用邮件成本低廉的优势,相比之下商业公司更愿意去发送大量的推广邮件,即使是很低的有效反馈邮件和成功率,也是值得的(例如,一百万份的邮件中,只产生数百个有效的反馈邮件),传统的广告推销模式是完全不可比拟的。Ferris市场调查公司在2004年的研究表明,美国的公司每年被大量的垃圾邮件消耗掉100亿元。同时,对于公司和消费者来说,相比动辄数百万的广告费用来说,垃圾邮件的花费是最少的。

从垃圾邮件产生之始,广大的网络提供商以及互联网企业就开始为此而犯难,但是显然,进30年的发展却未产生有效的反垃圾邮件技术或者方法,重要的原因之一局势庞大的垃圾邮件的数量以及高复杂度的过滤技术,直到近年来,人工智能,机器学习等学科的发展才是反垃圾邮件工作有所进步,

当前主要的邮件过滤技术有:

表 3?1 邮件的发展历程

第一代


第二代


第三代


第四代


基础的MTA控制


实时黑名单


贝叶斯过滤


多技术整合分层过滤


白名单和黑名单


电子签名


人工智能

 

简单的关键字搜索

 
机器学习

 

邮件信头测试

     

标题过滤

     

简单的DNS测试

     

1> 第一代反垃圾邮件技术

MTA(邮件传输代理)协议是基于对每个域名通信连接的控制。例如,“防止开放转发”技术,这是邮件协议制定之初就被提出的,它被提出的初衷并不是为了防止垃圾邮件的泛滥,而且当时也未能对垃圾邮件的安全隐患有所预见性,MTA控制的目的就是拒绝服务攻击和速度控制,即指针对IP地址的连接数量以及连接做出限制,当一个IP地址过度频繁的请求SMTP服务时,服务器会自动的禁止客户端与服务器的数据连接,以免造成服务器资源的过度消耗,并允许用户自定义服务请求响应时间或者是超时设置,避免服务器因为过载而宕机。典型的例子就是梭子鱼垃圾邮件防火墙,其中内置的高并发连接数量控制对赐给攻击具有明显的抑制作用。调查表明,梭子鱼反垃圾邮件防火墙通过专利的十层过滤中的第三层“速率控制“能够扼制海量邮件的发送,拒绝虚假的发件人,直接效果就是释放了垃圾邮件占用的大量带宽。

黑名单(BlackList)与白名单(White List),分别是记录了已知的垃圾邮件发送者和可信任的邮件发送者的IP地址或者是邮件地址,这也是较为常见的邮件过滤形式之一,反垃圾邮件活动开始之初,这种指定式的邮件过滤因为名单资源的缺乏,过滤效果十分有限。另一方面由于代理技术以及虚拟IP技术的发展,这种反垃圾邮件形式愈加捉襟见肘。然而,随着近些年的积累,一些公共组织一直致力于这方面资源(即 Block List )的收集工作,例如中国互联网协会在2005年成立的中国互联网协会反垃圾邮件协调小组,以及再此基础上的中国国第一个在行业内最具有代表性的发垃圾邮件组织——中国互联网协会发垃圾邮件工作委员会(Anti-Spam committee of Internet Society of China ASISC),定期向社会公布最新的反垃圾邮件黑白名单。个人用户可以直接利用这些资源来构建自定义的邮件过滤程式。

关键字搜索[2],基础的过滤方式之一。尚在垃圾邮件未在互联网上泛滥之时,这种技术是最初用于内容过滤以及反病毒技术的一部分。它的缺陷是显而易见的,其因为缺乏上下文理解,垃圾邮件误判率较高,只能用于过滤一些特征明显的非法邮件,当前的部分邮箱服务提供商依然给客户提供了这种服务。例如我国网易邮箱可提供有限字节的关键字过滤。

邮件信头测试,标题测试和DSN测试。三者都是弱监测过滤方式,并不是严格意义的邮件过滤技术。信头和标题测试都是检测邮件在满足SMTP协议的基础之上邮件格式完整性,无论邮件本身是否是垃圾邮件,不合邮件规则语法的邮件都会被过滤。DSN是用于查询邮件发送者的互联网域名,当一份邮件使用SMTP协议交换发送者信息时,监测对方的域名或者主机名是否存在,以此来屏蔽虚假主机发送的邮件。

2> 第二代反垃圾邮件过滤技术

相对于第一代的实时黑名单的技术,第一代黑名单显得过于简陋。实时黑名单技术(Realtime Blackhole List 简称RBL)和电子签名技术是在正真面对垃圾邮件问题的情况下提出的核心技术。当来自某个源站点的的垃圾邮件过多时,屏蔽这个站点的连接是有效减少垃圾邮件,缓解服务器压力的邮箱方式,尽管有可能这个站点是被利用的,会造成其正常连接的失效。该技术是通过上文第一代 DSN技术实现,通过IP查询把相关站点的IP地址组织起来,并发布到互联网上,共用户使用。目前国内尚没有这类的公共主服务器提供此服务。电子邮件签名技术是在中生成邮件发送者的唯一身份识别数据,它并不是书面签名的图像化,而是通过加密技术对一段身份数据进行加密,邮件接收者以凭借这种电子数据来验证邮件发送者的身份以及邮件在发送过程中是否被改动。实现电子签名和电子身份验证的前提是需要向一个许可证授权机构(Global Sign)申请一份电子许可证,即用于验证文件的公共密钥。这是验证对方身份的关键。国外当前主要的电子邮件认证技术有: 发件人策略框架(SPF) 美国在线; 发件人标识(Sender ID) 微软; 域密钥(Domain Key)雅虎; 互联网电子邮件标识(IIM)思科等。

时间: 2024-10-22 01:04:15

垃圾邮件过滤技术的相关文章

基于C#的机器学习--垃圾邮件过滤

在这一章,我们将建立一个垃圾邮件过滤分类模型.我们将使用一个包含垃圾邮件和非垃圾邮件的原始电子邮件数据集,并使用它来训练我们的ML模型.我们将开始遵循上一章讨论的开发ML模型的步骤.这将帮助我们理解工作流程. 在本章中,我们将讨论以下主题: l  定义问题 l  准备数据 l  数据分析 l  构建数据的特征 l  逻辑回归与朴素贝叶斯的Email垃圾邮件过滤 l  验证分类模型 定义问题 让我们从定义本章要解决的问题开始.我们可能已经对垃圾邮件很熟悉了;垃圾邮件过滤是众电子邮件服务的基本功能.

python 和 scikit-learn 实现垃圾邮件过滤

文本挖掘(Text Mining,从文字中获取信息)是一个比较宽泛的概念,这一技术在如今每天都有海量文本数据生成的时代越来越受到关注.目前,在机器学习模型的帮助下,包括情绪分析,文件分类,话题分类,文本总结,机器翻译等在内的诸多文本挖掘应用都已经实现了自动化. 在这些应用中,垃圾邮件过滤算是初学者实践文件分类的一个很不错的开始,例如 Gmail 账户里的"垃圾邮箱"就是一个垃圾邮件过滤的现实应用.下面我们将基于一份公开的邮件数据集 Ling-spam,编写一个垃圾邮件的过滤器.Ling

垃圾邮件过滤优化方法

垃圾邮件过滤优化方法 通过honeypot project 搜集大量垃圾邮件数据 通过解析邮件header 获取垃圾邮件发送路径和服务器相关信息 对编写错误的单词的修正 比如:w4tch 对相同含义的词进行归类处理,比如:discount 和discounts   (可以通过porter stemmer,下面就是该算法c语言的一种实现) /* This is the Porter stemming algorithm, coded up in ANSI C by the author. It m

《机器学习实战》学习笔记:基于朴素贝叶斯的垃圾邮件过滤

概率是许多机器学习算法的基础,在前面生成决策树的过程中使用了一小部分关于概率的知识,即统计特征在数据集中取某个特定值的次数,然后除以数据集的实例总数,得到特征取该值的概率. 之前的基础实验中简单实现了朴素贝叶斯分类器,并正确执行了文本分类,这一节将贝叶斯运用到实际场景,垃圾邮件过滤这一实际应用. 实例:使用朴素贝叶斯过滤垃圾邮件 在上一节:http://blog.csdn.net/liyuefeilong/article/details/48383175中,使用了简单的文本文件,并从中提取了字符

机器学习算法整理(六)— 贝叶斯算法_实现垃圾邮件过滤

垃圾邮件过滤实例 原文地址:https://www.cnblogs.com/douzujun/p/8457865.html

初窥电子邮件未来功能发展 ——越来越强大的垃圾邮件过滤功能

作为互联网最悠久的通讯协议,电子邮箱这十多年都没有什么大的改进,面对垃圾邮件的轰炸.日渐繁琐的格式以及即时通讯软件的轰炸,电子邮箱已默默退出了个人通讯的舞台.但是因发送的内容不限格式,你可以添加任何格式的文件到附件中,且保存稳定不易丢失,所以电子邮箱依旧坚守在企业办公领域. 当然,为了解决电子邮箱的弊端,一直以来都有很多邮箱大佬与垃圾邮件战斗者.其中尤以Gmail做的最出色.近日Google宣布为增强Gmail对垃圾邮件的过滤能力加入了人工智能技术,并提供企业工具检查自己的电子邮件是否被误判成垃

使用朴素贝叶斯算法简单实现垃圾邮件过滤

一.算法介绍 朴素贝叶斯法,简称NB算法,是贝叶斯决策理论的一部分,是基于贝叶斯定理与特征条件独立假设的分类方法: 首先理解两个概念: · 先验概率是指根据以往经验和分析得到的概率,它往往作为"由因求果"问题中的"因"出现: · 后验概率是指在得到"结果"的信息后重新修正的概率,是"执果寻因"问题中的"因" . 1 贝叶斯定理 贝叶斯理论是以18世纪的一位神学家托马斯贝叶斯(Thomas Bayes)命名.

机器学习算法整理(六)— 贝叶斯算法_拼写纠正实例_垃圾邮件过滤实例

(p(h): 先验概率) 垃圾邮箱过滤实例 原文地址:https://www.cnblogs.com/douzujun/p/8457806.html

使用朴素贝叶斯算法简单实现垃圾邮件过滤之算法介绍实现过程

一.算法介绍https://www.cnblogs.com/love528/p/10125089.html 二.实现过程 实验步骤 (1)收集数据:提供文本文件. (2)准备数据:将文本文件解析成词条向量. (3)分析数据:检查词条确保解析的正确性. (4)训练算法:计算不同的独立特征的条件概率. (5)测试算法:计算错误率. (6)使用算法:构建一个完整的程序对一组文档进行分类. 主要代码解析 (1)    分词 使用正则表达式将邮件文本其划分成一个个单词的形式 import re def t