心脏出血漏洞(“心脏出血”漏洞死灰复燃竟是因为它!)

心脏出血漏洞
前言
作者:林怡旭(XiaoXu),现广东省信息安全测评中心渗透测试工程师,曾就职于绿盟科技。在渗透测试、应急响应、等级保护、风险评估、APP安全检测等方面有一定的经验。曾参与OWASP Testing Guide v4(OWASP测试指南第四版)的中文翻译/校对工作。 

正文昨日下午6时许,我正在听一个智能制造(工控安全)的讲座。突然,接到一位正在出差的同事的电话(同事够敬业,赞!)反应当登录我们的监控平台检查时,发现客户(以下记为X集团)新加入监控范围的一个重要系统存在“心脏出血”漏洞,并且已通知X集团技术人员将OpenSSL升级到最新版1.0.1t,但从外部检测,“心脏出血”问题依然存在!!!

科普时间:
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
“心脏出血”漏洞,这项严重缺陷(CVE-2014-0160)的产生是由于未能在memcpy()调用受害用户输入内容作为长度参数之前正确进行边界检查。攻击者可以追踪OpenSSL所分配的64KB缓存、将超出必要范围的字节信息复制到缓存当中再返回缓存内容,这样一来受害者的内存内容就会以每次64KB的速度进行泄露。
这时已经是晚上7点多了,无论是X集团技术人员或主管安全的大领导,还是被X集团呼唤到现场的厂商人员(开发该web应用系统的厂商),还是提供远程技术支持的我,都是处于饿着肚子的加班状态(其实,安全行业有不少岗位是没有真正的下班时间的吧)。X集团说他们整个办公室的人都在等着我给出有效的修复方案!

当时的我,真的是比所有的现场人员都还焦急啊,焦急得简直像热锅上的蚂蚁!但是还是要静下心来寻找有效的修复方案,毕竟问题还是要解决的嘛。
“心脏出血”(CVE-2014-0160)影响的版本: OpenSSL 1.0.1 – 1.0.1f

检测工具:
360的在线检测:http://wangzhan.360.cn/heartbleed/
国外的一个在线检测网站:https://filippo.io/Heartbleed/
当然也有离线的工具,比如ssltest.py
按理来讲,在服务器上将OpenSSL升级到1.0.1g或之后的版本,应该就不存在该漏洞了,但是X集团已经将OpenSSL升级到1.0.1t(最新版),也将服务器重启了。网络上能找到的修复方案也都差不多是这样子讲的:升级OpenSSL到1.0.1g或之后的版本、重启web服务以及OpenSSL相关的服务。比如阿里云给出的修复方案:
https://help.aliyun.com/knowledge_detail/37417.html#OpenSSL “心脏滴血”漏洞

但X集团的”心脏出血”问题就是依然存在啊,这时我把检测脚本发给现场人员,指导他们在内网进行检测(一开始厂商人员直接双击Python脚本就想进行检测,我的天啊(╯▽╰ )),顺便检测了一下内网其它同样刚把OpenSSL升到最新版的web应用系统,内网其它系统没发现”心脏出血”问题,唯独我们前面所提到的那个对外开放的重要系统存在”心脏出血”问题。
将上述系统进行比较,发现对外开放的这个重要系统使用了nginx做负载均衡(内网其它系统没使用nginx),那么假定问题是出在nginx,接着我就去了解nginx和OpenSSL之间的关系,发现了编译nginx时添加SSL支持的操作命令是这样子的:
[root@Node1 nginx-1.6.2]# ./configure  –user=www –group=www –prefix=/data/nginx1.6.2 –with-http_stub_status_module –with-http_gzip_static_module –with-http_ssl_module –with-openssl=/root/openssl-1.0.1
【注:此处是OpenSSL源码路径,不是安装路径】
那么问题基本可以确定了,nginx当初编译时使用的是旧版的OpenSSL源码(即存在“心脏出血”漏洞的源码),而X集团升级时用的yum update openssl是对已安装在操作系统的OpenSSL进行升级。
让现场人员使用不存在“心脏出血”漏洞的OpenSSL源码对nginx重新进行编译,再重新进行检测,问题果然解决了!
 以上,没什么技术难点,主要是分享一下思路。
时隔两年,还能发现存在“心脏出血”漏洞的网站,这时我想起了知道创宇博客的一篇文章:“心脏出血”漏洞一周年全球普查
http://blog.knownsec.com/2015/04/annual-global-census-of-heartbleed/

送公仔啦!
(安全观点|又一件互联网友商数据“窃取”案活动中超人图已送出,小编娇娇最近趁boss出差带大家玩新花样!)
在近三个月内转发我们的文章数量超过10篇者,现在截图发到我微信(yingying-lj),就可以把可爱无比帅气无敌的超人兔带回家啦!(数量有限,先到先得哦,活动截至到7.24号中午12:00点)。

其他推荐:
0、重磅分享 | 白帽子黑客浅谈顾问式销售与服务
1、安全观点:企业信息安全十大痛点,你中招了?
2、成长型互联网企业该如何构建安全团队—第一季
3、这才是互联网与安全团队需要的几种人才!
4、白帽子黑客:EX,还记得我们一起去太平山顶的约定么?
5、少年黑客:我的初恋女友,你在哪里?
6、开春巨献!全球TOP500安全公司到底在做些什么
7、2015年至今国内信息安全领域那些投资那些事
8、301:浅谈互联网安全现状与攻击趋势
9、招人必看!301浅谈国内安全人才薪酬现状
10、301:从安全角度浅谈云计算服务平台现状与发展

长按二维码关注301公众号
合作联系:2036234(备注单位+名字)

心脏出血漏洞相关文章

版权声明