- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
中南大学
CENTRALSOUTHUNIVERSITY
《SEEDPROJECT》
实验报告
学生姓名孙毅
学号0906140106
指导教师王伟平
学院信息科学与工程
专业班级信安1401
完成时间2016.12
目录TOC\o1-3\h\u
一、实验原理 1
二、实验过程 2
三、实验结果以及讨论 5
HeartbleedAttack
实验原理
Heartbleedbug(CVE-2014-0160)是旧版本的Openssl库中一个的一个漏洞。利用这个漏洞,攻击者可以从效劳器里窃取一局部随机数据。这个漏洞主要是源于Openssl设计的协议继承了Heartbeat协议,使用SSL/TLS来保持连接的实时性、保活性。
原理示意图如下:
实验过程
首先要按照指导进行如下操作:
访问您的浏览器s://heartbleedlabelgg。登录网站管理员。〔用户名:admin密码:seedelgg;〕增加朋友。〔去更多-点击波比-添加朋友〕,然后发送私人消息。
在您已经做了足够的互动作为合法用户,你可以发动攻击,看看你可以从受害者效劳器上得到什么信息。编写程序从零开始推出Heartbleed攻击是不容易的,因为它需要的心跳协议底层的知识。幸运的是,其他人已经写了攻击代码。因此,我们将使用现有的代码来获得在Heartbleed攻击的第一手经验。我们使用的代码称为attack.py,原本是JaredStafford写的。我们对教育目的的代码做了一些小的修改。您可以从实验室的网站上下载代码,更改其权限,所以该文件是可执行的。然后,您可以运行攻击代码如下:
$/attack.pyheartbleedlabelgg。
您可能需要屡次运行攻击代码以获取有用的数据。尝试,看看是否可以从目标效劳器获取以下信息。
用户名和密码。
用户活动〔用户所做的〕。私人信息确实切内容。
在这个任务中,学生将比拟良性包和被攻击者发送的代码发送的恶意数据包的去发现Heartbleed漏洞的根本原因。Heartbleed攻击是基于heartbeatrequest。这个请求只是向效劳器发送一些数据,效劳器将将数据复制到它的响应数据包中,所以所有的数据都被响应了。在正常情况下,假设请求包括3个字节的数据“作业”,所以长度字段有一个值3。效劳器将将数据放在内存中,并从数据的开始复制3个字节到它的响应数据包。在攻击场景中,请求可能包含3个字节的数据,但长度字段可以说1003。当效劳器构造它的响应数据包时,它从数据的开始〔即“美国播送公司”〕复制,但它拷贝1003个字节,而不是3个字节。这些额外的1000种类型显然不来自请求数据包,它们来自效劳器的私有内存,它们可能包含其他用户的信息、密钥、密码等。
在这项任务中,我们将改变请求数据包的长度字段来观察结果。
你的任务是用不同的有效载荷长度的值来播放攻击程序,并答复以下问题:
问题2.1:随着长度变量的减少,你会观察到什么样的差异?
问题2.2:为可变长度的减小,有输入长度可变的边界值。在或低于该边界,heartbeat将接收一个响应数据包,而不附加任何额外的数据〔这意味着该请求是良性的〕。请发现边界长度。您可能需要尝试许多不同的长度值,直到Web效劳器发送回没有额外的数据的答复
修复Heartbleed漏洞,最好的方法是更新到最新版本的OpenSSL库。这可以实现使用以下命令。
#sudoapt-getupdate#sudoapt-getupgrae
应该指出的是,一旦它被更新,很难再回到有漏洞的版本。因此,请确保您在做更新之前完成了以前的任务。您还可以在更新之前对您的虚拟机进行快照。
三、实验结果以及讨论
按照实验指导完成Task1之后,下载脚本到计算机并运行之后,就可以观察到
成功捕获到了用户名以及密码。
在task2中,设置长度为22和23时返回消息分别如下所示:
由观察的结构可以得知,边界值为22.
当缩短指定的长度时,返回的数据包长度也会相应的缩短。
解决这个漏洞可以让heartrequest的数据包不能被更改,即自动根据信息来由效劳器来计算长度,这样的话,效劳器
文档评论(0)