open-SSL心脏滴血漏洞
open-SSL心脏滴血漏洞
在客户端和服务端建立了TLS加密连接状态后,需要隔一段时间来发送心跳数据包来确保对端是否在线
具体做法是客户端发送Client Hello 数据包,服务端返回Server Hello数据包
在client hello 数据包中有个字段length询问字符长度,当length的值大于实际数据包大小时,服务端还是会返回length大小的数据,就导致服务端内存信息的越界访问
理论上攻击者一次最多可以读取64kb数据,若其中包含账号密码等敏感信息则会造成危害
复现
直接用docker搭建
cd ~/vulhub/openssl/heartbleed
docker-compose build
docker-compose up -d
通过nmap的 ssl-heartbeat.nse
脚本探测目标是否存在漏洞
用msf利用漏洞
读取内存泄漏的数据