以下为《《计算机安全技术》课程报告模板》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
《计算机安全技术》课程报告
题 目: 反垃圾邮件
年 级: 2016级
专 业: 计算机
班 级: 计算机科学与技术(全英文教学)
姓 名: 朱某某
学 号: ***24
成 绩:
指导教师: 卢 正 添
提交报告时间: 2021 年 5 月 日
摘要(字数300字左右):
关键词(用分号分开,最多4个):
内容要求:
选择一个计算机安全相关的主题,撰写课程报告;主题可以来自于以下列表,也可以不来自于以下列表,但必须与计算机安全紧密相关。
数字签名
防火墙
公钥基础设施(PKI)
虚拟专用网(VPN)
访问控制
入侵检测系统(IDS)
反垃圾邮件
云计算安全
Web安全
物联网安全
要求广泛调研,阅读相关文献,并进行深入分析讨论,形成自己的立意和观点。
要求内容充实,章节安排合理,语言流畅,排版美观。
课程报告结尾处列出不少于10篇的参考文献,其中至少4篇英文文献。
字数不少于5000字。
杜绝任何形式的抄袭。
提交报告要求:
于2021年5月31日之前将你完成的课程报告和相关的参考文献等资料打包压缩成zip文件(或者rar文件),并交给各自班级的《计算机安全技术》课程的科代表。(18级计某某1班科代表:王某某,18级计某某2班科代表:櫘R菀?8级计某某3班科代表:常某某,18级软工1班科代表:余某某,18级软工2班科代表:李某某)
文件名格式规范:
学号_姓名.rar,例如:***99_张三.rar
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)和***,这些解决办法都可以减少垃圾邮件问题,但是都有它们的局限性。本文将在下面的内容讨论这些技术以及一些主要技术的实现。
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地址来制造垃圾。
2.1.3????HASH技术
????HASH技术是邮件系统通过创建HASH来描述邮件内容,比如将邮件的内容、发件人等作为参数,最后计算得出这个邮件的HASH来描述这个邮件。如果HASH相同,那么说明邮件内容、发件人等相同。这在一些ISP上在采用,如果出现重复的HASH值,那么就可以怀疑是大批量发送邮件了。
2.1.4????基于规则的过滤
????这种过滤根据某些特征(比如单词、词组、位置、大小、附件等)来形成规则,通过这些规则来描述垃圾邮件,就好比IDS中描述一条入侵事件一样。要使得过滤器有效,就意味着管理人员要维护一个庞大的规则库。
2.1.5????智能和概率系统
????广泛使用的就是贝叶斯(Bayesian)算法,可以学习单词的频率和模式,这样可以同垃圾邮件和正常邮件关联起来进行判断。这是一种相对于关键字来说,更复杂和更智能化的内容过滤技术。我将在下面详细描述这种在客户端和服务器中使用最广泛的技术。
2.1.5.1????Bayesian 贝叶斯算法
????在过滤器中,现在表现最好的应该是基于评分(score)的过滤器,因为我们很容易就可以明白对付狡猾的垃圾邮件,那些黑白某某、关键词库或者HASH等过滤器是多么的简单。评分系统过滤器是一种最基本的算法过滤器,也是贝叶斯算法的基本雏形。它的原理就是检查垃圾邮件中的词或字符等,将每个特征元素(最简单的元素就是单词,复杂点的元素就是短语)都给出一个分数(正分数),另一方面就是检查正常邮件的特征元素,用来降低得分的(负分数)。最后邮件整体就得到一个垃圾邮件总分,通过这个分数来判断是否spam。
????这种评分过滤器尽量实现了自动识别垃圾邮件的功能,但是依然存在一些不适应的问题:
????*特征元素列表通过垃圾邮件或者正常邮件获得。因此,要提高识别垃圾邮件的效果,就要从数百邮件中来学习,这降低了过滤器效率,因为对于不同人来说,正常邮件的特征元素是不一样的。
????*获得特征元素分析的邮件数量多少是一个关键。如果垃圾邮件发送者也适应了这些特征,就可能让垃圾邮件更象正常邮件。这样的话,过滤特征就要更改了。
????*每个词计算的分数应该基于一种很好的评价,但是还是有随意性。比如,特征就可能不会适应垃圾邮件的单词变化,也不会适应某个用户的需要。
????贝叶斯理论现在在计算机行业中应用相当广泛,这是一种对事物的不确定性描述,比如google计算中就采用了贝叶斯理论。贝叶斯算法的过滤器就是计算邮件内容中成为垃圾邮件的概率,它要首先从许多垃圾邮件和正常邮件中进行学习,因此,效果将比普通的内容过滤器更优秀,错报就会更少。贝叶斯过滤器也是一种基于评分的过滤器。但不仅仅是一种简单的计算分数,而更从根本上来识别。它采用自动建立特征表的方式,原理上,首先分析大量的垃圾邮件和大量的正常邮件,算法分析邮件中多种特征出现概率。
????贝叶斯算法计算特征的来源通常是:
·邮件正文中的单词
·邮件头(发送者、传递路径等)
·其他表现,比如HTML编码(如颜色等)
·词组、短语
·meta信息,比如特殊短语出现位置等
?? 比如,正常邮件中经常出现单词AAA,但是基本不在垃圾邮件中出现,那么,AAA标示垃圾邮件的概率就接近0,反之则然。
贝叶斯算法的步骤为:
1. 收集大量的垃圾邮件和非垃圾邮件,建立垃圾邮件集和非垃圾邮件集。
2. 提取特征来源中的独立字符串,例如 AAA等作为TOKEN串并统计提取出的TOKEN串出现的次数即字频。按照上述的方法分别处理垃圾邮件集和非垃圾邮件集中的所有邮件。
3. 每一个邮件集对应一个哈希表,hashtable_good对应非垃圾邮件集而hashtable_bad对应垃圾邮件集。表中存储TOKEN串到字频的映射关系。
4. 计算每个哈希表中TOKEN串出现的概率P=(某TOKEN串的字频)/(对应哈希表的长度)
5. 综合考虑hashtable_good和hashtable_bad,推断出当新来的邮件中出现某个TOKEN串时,该新邮件为垃圾邮件的概率。数学表达式为:
A 事件 ---- 邮件为垃圾邮件;
t1,t2 …….tn 代表 TOKEN 串
则 P(A|ti)表示在邮件中出现 TOKEN 串 ti 时,该邮件为垃圾邮件的概率。设
P1(ti)=ti 在 hashtable_good 中的值
P2(ti)=ti 在 hashtable_ bad 中的值
则 P(A|ti)=P2(ti)/[(P1(ti)+P2(ti)] ;
6. 建立新的哈希表hashtable_probability存储TOKEN串ti到P(A|ti)的映射
7.根据建立的哈希表 hashtable_probability可以估计一封新到的邮件为垃圾邮件的可能性。
????当新到一封邮件时,按照步骤2,生成TOKEN串。查询hashtable_probability得到该TOKEN 串的键值。假设由该邮件共得到N个TOKEN 串,t1,t2…….tn,hashtable_probability中对应的值为 P1 ,P2 ,……PN ,P(A|t1 ,t2, t3……tn) 表示在邮件中同时出现多个TOKEN串t1,t2……tn时,该邮件为垃圾邮件的概率。
????由复合概率公式可得:
P(A|t1 ,t2, t3……tn)=(P1*P2*……PN)/[P1*P2*……PN+(1-P1)*(1-P2)*……(1-PN)]
当 P(A|t1 ,t2, t3……tn) 超过预定阈值时,就可以判断邮件为垃圾邮件。
????当新邮件到达的时候,就通过贝叶斯过滤器分析,通过使用各个特征来计算邮件是spam的概率。通过不断的分析,过滤器也不断地获得自更新。比如,通过各种特征判断一个包含单词AAA的邮件是spam,那么单词AAA成为垃圾邮件特征的概率就增加了。
????这样,贝叶斯过滤器就有了自适应能力,既能自动进行,也可以用户手工操作,也就更能适应单个用户的使用。而垃圾邮件发送者要获得这样的适应能力就很难了,因此,更难逃避过滤器的过滤,但他们当然还是能够将邮件伪装成很普遍的正常邮件的样子。除非垃圾邮件发送者能去对某个人的过滤器进行判断,比如,采用发送回执的办法来了解哪些邮件被用户打开了等,这样他们就可以适应过滤器了。
虽然贝叶斯过滤器还存在有评分过滤器的缺陷,但是它更优化了。实践也证明,贝叶斯过滤器在客户端和服务器中效果是非常明显的,优秀的贝叶斯过滤器能够识别超过99.9%的垃圾邮件。大多数目前应用的反垃圾邮件产品都采用了这样的技术。比如Foxmail中的贝叶斯过滤。
2.1.6????局限性和缺点
????现行的很多采用过滤器技术的反垃圾邮件产品通常都采用了多种过滤器技术,以便使产品更为有效。过滤器通过他们的误报和漏报来分等级。漏报就是指垃圾邮件绕过了过滤器的过滤。而误报则是将正常的邮件判断为了垃圾邮件。完美的过滤器系统应该是不存在漏报和误报的,但是这是理想情况。
????一些基于过滤器原理的反垃圾邮件系统通常有下面的三种局限性:
????·可能被绕过。垃圾邮件发送者和他们用的发送工具也不是静态的,他们也会很快适应过滤器。比如,针对关键字列表,他们可以随机更改一些单词的拼写,比如("强悍", "弓虽悍", "强-悍").Hash-buster(在每个邮件中产生不同的HASH)就是来绕过hash过滤器的。当前普遍使用的贝叶斯过滤器可以通过插入随机单词或句子来绕过。多数过滤器都最多只能在少数几周才最有效,为了保持反垃圾邮件系统的实用性,过滤器规则就必须不断更新,比如每天或者每周更新。
????·误报问题。最头痛的问题就是将正常邮件判断为垃圾邮件。比如,一封包含单词sample的正常邮件可能因此被判断为垃圾邮件。某些正常服务器不幸包含在不负责任的组织发布的block list对某个网段进行屏蔽中,而不是因为发送了垃圾邮件(xfocus的服务器就是这样的一个例子)。但是,如果要减少误报问题,就可能造成严重的漏报问题了。
????·过滤器复查。由于误报问题的存在,通常被标记为垃圾邮件的消息一般不会被立刻删除,而是被放置到垃圾邮件箱里面,以便日后检查。不幸的是,这也意味着用户仍然必须花费时间去察看垃圾邮件,即便仅仅只针对邮件标题。
????目前更严重的问题是,人们依然认为过滤器能有效阻止垃圾邮件。实际上,垃圾邮件过滤器并不能有效阻止垃圾邮件,在多数案例中,垃圾邮件依然存在,依然穿过了网络,并且依然被传播。除非用户不介意存在被误报的邮件,不介意依然会浏览垃圾邮件。过滤器可以帮助我们来组织并分隔邮件为垃圾邮件和正常邮件,但是过滤器技术并不能阻止垃圾邮件,实际上只是在"处理"垃圾邮件。
????尽管过滤器技术存在局限,但是,这是目前最为广泛使用的反垃圾邮件技术。
2.2、验证查询
????SMTP在设计的时候并没有考虑到安全问题。在1973年,计算机安全还没有什么意义,那个时候能够有一个可执行的邮件协议已经很了不起了。比如,RFC524描述将SMTP作为独立协议的一些情况:
????"虽然人们可以或者可能可以,以本文档为基础设计软件,但请恰如其分地进行批注。请提出建议和问题。我坚信协议中依然存在问题,我希望读者能够阅读RFC的时候能够将它们都指出来。"
????尽管SMTP的命令组已经发展了很长时间,但是人们还是以RFC524为基础来执行SMTP的,而且还都假定问题(比如安全问题)都会在以后被解决。因此直到2004年,源自RFC524中的错误还是依然存在,这个时候SMTP已经变得非常广泛而很难简单被代替。垃圾邮件就是一个滥用SMTP协议的例子,多数垃圾邮件工具都可以伪造邮件头,伪造发送者,或者隐藏源头。
????垃圾邮件一般都是使用的伪造的发送者地址,极少数的垃圾邮件才会用真实地址。垃圾邮件发送者伪造邮件有下面的几个原因:
????*因为是违法的。在多个国家内,发送垃圾邮件都是违法行为,通过伪造发送地址,发送者就可能避免被起诉。
????*因为不受欢迎。垃圾邮件发送者都明白垃圾邮件是不受欢迎的。通过伪造发送者地址,就可能减少这种反应。
????*受到ISP的限制。多数ISP都有防止垃圾邮件的服务条款,通过伪造发送者地址,他们可以减少被ISP禁止网络访问的可能性。
????因此,如果我们能够采用类似黑白某某一样,能够更智能地识别哪些是伪造的邮件,哪些是合法的邮件,那么就能从很大程度上解决垃圾邮件问题,验证查询技术正是基于这样的出发点而产生的。以下还会解析一些主要的反垃圾邮件技术,比如Yahoo!、微 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 的博弈过程,一种新的反垃圾邮件技术必然会出现一种对应得垃圾邮件技术,况且,任何一种技术,还没有办法去解决所有问题,技术的发展也将延续下去。
参考文献:
1、????Dr. Neal Krawetz, Anti-Spam Solutions and Security
2、????Better Bayesian Filtering, http://doc.001pp.com/better.html
3、????Anti-Phishing Working Group, http://doc.001pp.com/
4、????http://antispam.yahoo.com/domainkeys
5、???? http://doc.001pp.com/senderid
6、???? http://www.alphaworks.ibm.com/tech/fairuce
7、???? http://sendmail.net/dk-milter/
8、 https://blog.csdn.net/Kendiv/article/details/467722
[文章尾部最后500字内容到此结束,中间部分内容请查看底下的图片预览]请点击下方选择您需要的文档下载。
以上为《《计算机安全技术》课程报告模板》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。