openssl—心脏出血漏洞

openssl---心脏出血漏洞(CVE-2014-0160)

Heartbleed漏洞

Heartbleed(心脏出血)漏洞,是一个出现在加密程序库OpenSSL的安全漏洞,该程序库广泛用于实现互联网的传输层安全(TLS)协议。它于2012年被引入了软件中,2014年4月首次向公众披露。心脏滴血漏洞主要利用了OpenSSL的"心跳扩展"功能。该功能允许客户端和服务器之间保持连接活跃,并定期发送小的数据包(称为心跳请求)来确认链接的有效性。具体来说,漏洞的根本原因在于缺乏对心跳请求数据有效性的检查。攻击者可以伪造心跳请求,向服务器发送请求时指定一个比实际发送数据更大的长度值。由于没有适当的边界检查,服务器会返回其内存中与该请求对应的任意数据。这些数据可能包括敏感信息,如私钥、用户名、密码等。

具体描述

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

漏洞复现

靶机:Ubuntu1.12 192.168.32.135

攻击机:kali 192.168.32.128

环境搭建

使用vulhub靶场,进入靶场后进入相对应的漏洞环境目录

cd vulhub/openssl/CVE-2014-0160/

拉取环境镜像

docker-compose up -d

拉取docker镜像后查看镜像信息

docker-compose ps

可以看到环境已经运行起来了

收集靶机信息

我们使用nmap工具对靶机进行端口扫描查看是否包含openssl服务

nmap -sV -T4 192.168.32.135

可以看到靶机中存在ssl服务并且版本是属于1.11

继续对开放的8443端口的ssl服务进行扫描,使用nmap中带的ssl检测

nmap -sV -p 8443 --script ssl-heartbleed.nse 192.168.32.135

可以看到靶机中确实存在相关的漏洞

攻击方式

我们选择大佬制作的工具msfconsole来进行一体式攻击操作

进入msfconsole

msfconsole

选择工具,首先得搜索heartbleed的脚本,可以使用

search openssl或者search heartbleed指令获取脚本选择

我这里选择使用search heartbleed,然后选择序号1的脚本,进入脚本

use 1

设置脚本信息内容

然后使用run执行,可以看到我们heartbeat报文返回的数据为65535bytes

不难发现我们构造的一个长度为331长度的数据包但是靶机却给我们返回了65535bytes的数据,我们就可以通过不停的发送这样的数据请求来获取更多更明显的靶机的隐私数据,这就无疑将我们的数据给泄露了。而该漏洞修复官方也是给出了修复版本,我们只需要检查我们自己的openssl服务是否满足版本及时更新版本即可。

相关推荐
网络研究院2 分钟前
端点安全完整指南
安全·端点·指南·网络研究观
xhtdj32 分钟前
Build 2026:Azure API Management 推出统一模型 API 并新增 MCP 内容安全能力
人工智能·安全·azure
Splashtop高性能远程控制软件34 分钟前
微软2026年6月补丁星期二技术分析:206个漏洞、3个已公开零日的分级修复方案
运维·安全·自动化·远程桌面·splashtop
云安全助手39 分钟前
国内调用GPT的现实困境与聚合平台解决方案探析
网络·人工智能·网络安全·ai大模型
一个扣子40 分钟前
第四十篇:云端沙箱与检查点:自动化CI时如何保住安全底线、回滚无压力
安全·沙箱·企业级·回滚·claude code·检查点
2601_9619633812 小时前
技术解剖:哈希值、区块链与CA认证如何守护电子合同安全?
网络·人工智能·安全·区块链·智能合约·政务
科技林总13 小时前
解决vllm服务漏扫问题
python·安全
YM52e13 小时前
男孩子在外自我保护指南——用鸿蒙 ArkTS 构建交互式安全教育应用
学习·安全·华为·harmonyos·鸿蒙·鸿蒙系统
Par@ish14 小时前
【网络安全】Web安全扫描工具Nikto安装和使用详细教程
安全·web安全·ubuntu
namexingyun14 小时前
拆解Fable 5三重安全护栏:模型路由、蒸馏防护与生物安全分类器的技术原理 - 微元算力(weytoken)
java·人工智能·python·安全·架构·ai编程