当前位置: 首页 > web >正文

心脏出血(Heartbleed)漏洞浅析、复现

一、漏洞介绍
心脏出血(英语:Heartbleed),也简称为心血漏洞,是一个出现在加密程序库OpenSSL的安全漏洞,该程序库广泛用于实现互联网的传输层安全(TLS)协议。它于2012年被引入了软件中,2014年4月首次向公众披露。只要使用的是存在缺陷的OpenSSL实例,无论是服务器还是客户端,都可能因此而受到攻击。此问题的原因是在实现TLS的心跳扩展时没有对输入进行适当验证(缺少边界检查),因此漏洞的名称来源于“心跳”(heartbeat)。该程序错误属于缓冲区过读,即可以读取的数据比应该允许读取的还多。
Heartbleed漏洞是由于未能在memcpy()调用受害用户输入内容作为长度参数之前正确进行边界检查。攻击者可以追踪OpenSSL所分配的64KB缓存、将超出必要范围的字节信息复制到缓存当中再返回缓存内容,这样一来受害者的内存内容就会以每次64KB的速度进行泄露。
二、漏洞复现
靶机:centos7 192.168.81.136
攻击机:kali 192.168.81.135
确保两台测试机网络能通

使用docker+vulhub搭建漏洞环境,在centos7上搭建vulhub的步骤如下:
1、安装docker依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
2、安装docker
yum install docker
3、启动docker
systemctl start docker
4、下载vulhub
https://github.com/vulhub/vulhub/archive/master.zip
5、找到heartbleed,并进入,输入命令docker-compose up -d运行漏洞环境
在这里插入图片描述
在这里插入图片描述

6、查看运行情况
在这里插入图片描述
7、打开kali,运行metaspolit
在这里插入图片描述
8、使用metasploit进行攻击
1)搜索相关漏洞模块儿
search Heartbleed
在这里插入图片描述
2)使用相关攻击模块
use auxiliary/scanner/ssl/openssl_heartbleed
在这里插入图片描述
3)查看需要配置的选项
Show options
在这里插入图片描述
4)对required为yes但是current setting为空的项进行设置,这里我们只需要设置rhosts(靶机ip)
set rhosts 192.168.81.136
在这里插入图片描述
5)开始攻击并查看结果,出现白框字样表示漏洞存在
Run
在这里插入图片描述
6)set verbose true#(设置verbose,这个设置要设置成true才能看到泄露的信息) 此设置主要是为了显示整个过程以及leak出来的数据
在这里插入图片描述
在这里插入图片描述
注意:1、关闭防火墙 2、关闭selinux

http://www.xdnf.cn/news/11519.html

相关文章:

  • 【详解智能座舱通信技术--转载】
  • Android 2.3定制ROM CyanogenMod 7装机量超22万
  • 提示“QQ在线状态服务尚未启用,您需要添加对方为好友才能与其进行会话”解决方法
  • 奇妙动漫世界
  • 工业大数据浅析(上篇)——工业大数据的概念、发展及价值
  • 声屏障:声屏障
  • 软件开发的必备步骤
  • 超全的数据可视化图表组件,建议收藏!
  • 如何正确对待止损止盈?6大止损法、10种止盈技巧,让你的利润奔跑!
  • 在线代理(Web ProxyServer)完全详解
  • 全站静态化
  • 清除系统LJ(绿色单文件版)
  • 《大数据之路:阿里巴巴大数据实践》:看阿里人从IT时代走向DT时代的经验之谈!_大数据之路 阿里巴巴大数据实践 感悟(1)
  • 医院门诊排队叫号系统
  • offsetParent 深度解析
  • 继电器的工作原理及驱动电路
  • NSIS 下载
  • bluetooth外围设备找不到驱动程序怎么解决
  • 从数据库中取时间值,遇到:java.sql.Timestamp cannot be cast to java.lang.Long
  • android 9.0广播动态注册和接收流程
  • 5个好用的网络故障排除工具分享_ip tools network utilities
  • Windows11出现找不到d3dx9_25.dll文件如何处理??
  • 循环冗余校验(CRC)
  • MKV格式详解
  • 五种css溢出隐藏的方法----亲测可用
  • 基于Java SSM框架实现企业台账管理平台系统项目【项目源码+论文说明】计算机毕业设计
  • 4.4 matlab三维曲线(plot3函数、fplot3函数)
  • FusionCharts简单教程(一)---建立第一个FusionCharts图形
  • DNS服务器 - 理论
  • OpenGL学习之各种流程及函数详解——基于LearnOpenGL(持续更新)