心脏滴血漏洞——CVE-2014-0160

Heartbleed

心脏出血是OpenSSL1.0.1版本至OpenSSL1.0.1f Beta1版本中存在漏洞,该漏洞中文名称为心脏滴血,英文名称为HeartBleed。其中Heart是指该漏洞位于心跳协议上,Bleed是因为该漏洞会造成数据泄露。即HeartBleed是在心跳协议上的一个数据泄露漏洞,OpenSSL库中用到了该心跳协议。HeartBleed主要存在与OpenSSL的1.0.1版本到1.0.1f版本。利用该漏洞,攻击者可以远程读取服务器内存中64K的数据,获取内存中的敏感信息。

漏洞描述

Heartbleed漏洞,这项严重缺陷(CVE-2014-0160)的产生是由于未能在memcpy()调用受害用户输入内容作为长度参数之前正确进行边界检查。攻击者可以追踪OpenSSL所分配的64KB缓存、将超出必要范围的字节信息复制到缓存当中再返回缓存内容,这样一来受害者的内存内容就会以每次64KB的速度进行泄露。

漏洞复现

准备条件

kali中vulhub靶场搭建详细教程【安装安装docker和docker-compose等工具】

kali中vulhub靶场搭建详细教程_kali搭建靶场_芝士TOM的博客-CSDN博客

具体步骤

  • 在攻击机kali中进入CVE-2014-086目录,显示里边的内容

  • 使用docker-compose up -d启动漏洞环境

  • 在浏览器访问docker机器的IP加上8443端口查看到以下界面,即搭建成功

  • 在靶机上使用nmap扫描此IP是否存在漏洞

  • 扫描存在漏洞,然后使用msfconsole进行漏洞利用,msf搜索漏洞相关模块search heartbleed

  • 使用use 1攻击模块,使用options查看那些需要配置

  • 配置参数——使用set rhosts 设置IP,set rport 设置为8443,并且存在漏洞使用set verbose开启信息展示,进行利用,使用options查看刚才的配置。

  • 进行攻击——使用run查看是否存在漏洞,这里就可以看到 靶机的64KB信息了(如果有人此时在登录web应用,还可以直接抓到账号密码等信息)。

修复方案

OpenSSL“心脏出血”漏洞(CVE-2014-0160)受影响的OpenSSL版本:

OpenSSL 1.0.2-beta

OpenSSL 1.0.1 - OpenSSL 1.0.1f

要解决此漏洞,简单粗暴的方法就是升级openSSL软件。

建议服务器管理员或使用1.0.1g版,或使用-DOPENSSL_NO_HEARTBEATS选项重新编译OpenSSL,从而禁用易受攻击的功能,直至可以更新服务器软件。

1.将受影响的服务器下线,避免它继续泄露敏感信息。

2.停止旧版的 openssl 服务,升级 openssl 到新版本,并重新启动。

3.生成新密钥。(因为攻击者可能通过漏洞获取私钥。)将新密钥提交给你的CA,获得新的认证之后在服务器上安装新密钥。

4.服务器上线。

5.撤销旧认证。

6.撤销现有的会话cookies。

7.要求用户修改密码。

Heartbleed 是在 8 年多前被发现并修补的,然而许多服务器仍然存在 Heartbleed 漏洞

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值