漏洞范围:
OpenSSL1.0.1版本
漏洞成因:
Heartbleed漏洞是由于未能在memcpy()调用受害用户输入内容作为长度参数之前正确进行边界检查。攻击者可以追踪OpenSSL所分配的64KB缓存、将超出必要范围的字节信息复制到缓存当中再返回缓存内容,这样一来受害者的内存内容就会以每次64KB的速度进行泄露。
漏洞危害:
如同漏洞成因所讲,我们可以通过该漏洞读取每次攻击泄露出来的信息,所以可能也可以获取到服务器的私钥,用户cookie和密码等。
漏洞复现:
环境:
靶机:Vulhub环境 攻击机:kali Linux
这里使用的是Vulhub一键搭建漏洞测试靶场
https://vulhub.org/#/environments/openssl/heartbleed/
![](https://img.haomeiwen.com/i16434018/b4c4d77735aacd86.png)
![](https://img.haomeiwen.com/i16434018/3b65c9da71b1ef51.png)
访问看一下
![](https://img.haomeiwen.com/i16434018/d4ec2e882b02d9e7.png)
先使用nmap扫描端口
![](https://img.haomeiwen.com/i16434018/a5b71ad72296b824.png)
![](https://img.haomeiwen.com/i16434018/c81742fa78ee9716.png)
可以使用nmap自带的Heartbleed漏洞检测脚本
nmap -sV -p 443 --script ssl-heartbleed.nse 【目标IP】
![](https://img.haomeiwen.com/i16434018/1d315f13d04fbe1d.png)
msf利用
1.搜索Heartbleed模块:
![](https://img.haomeiwen.com/i16434018/dfce30ad1a1eeca4.png)
2.引用第一个选项,show options查看需要设置的参数
![](https://img.haomeiwen.com/i16434018/f713c77d955560e5.png)
set rhosts 【ip】
set rport 【端口】
set verbose true 设置verbose不然显示不出信息
![](https://img.haomeiwen.com/i16434018/d9bb837015e8b5d0.png)
抓取的数据有点乱,可以使用脚本抓取我们想要的
![](https://img.haomeiwen.com/i16434018/3a0e0b356938ea94.png)
如何修复:
1.将受影响的服务器下线,避免它继续泄露敏感信息。
2.停止旧版的 openssl 服务,升级 openssl 到新版本,并重新启动。
3.生成新密钥。(因为攻击者可能通过漏洞获取私钥。)将新密钥提交给你的CA,获得新的认证之后在服务器上安装新密钥。
4.服务器上线。
5.撤销旧认证。
6.撤销现有的会话cookies。
7.要求用户修改密码。
网友评论