CVE-2014-0160
漏洞背景
2014年4月7日OpenSSL发布了安全公告,在OpenSSL1.0.1版本中存在严重漏洞(CVE-2014-0160),此次漏洞问题存在于ssl/dl_both.c文件中。OpenSSL Heartbleed模块存在一个BUG,当攻击者构造一个特殊的数据包,满足用户心跳包中无法提供足够多的数据会导致memcpy把SSLv3记录之后的数据直接输出,该漏洞导致攻击者可以远程读取存在漏洞版本的openssl服务器内存中长大64K的数据。
OpenSSL受影响和不受影响版本
- OpenSSL 1.0.1f(受影响)
- OpenSSL 1.0.1g (不受影响)
- OpenSSL 1.0.0 branch (不受影响)
- OpenSSL 0.9.8 branch (不受影响)
对此我们给出如下建议
- OpenSSL版本升级到最新的1.0.1g
- 重新生成你的私钥
- 请求和替换SSL的证书
- 使用-DOPENSSL_NO_HEARTBEATS参数重新编译低版本的OpenSSL以禁用Heartbleed模块
最新版本升级地址为:https://www.openssl.org/source/.
(OpenSSL
官方)
分析与验证
在该漏洞发布的第一时间我们对此漏洞进行了分析与验证是否能够获取一些敏感信息。漏洞发布的同时攻击可利用的脚本也已经在网络中流传。下面漏洞利用脚本的下载地址:
- http://filippo.io/Heartbleed/ (web测试页面)
- http://s3.jspenguin.org/ssltest.py (python脚本)
- http://pan.baidu.com/s/1nt3BnVB (python脚本)
通过网络中已有的测试方法,我们对存在问题的几个网站进行测试,分析确定该漏洞确实可被攻击者拿到一些敏感信息。测试过程如下:
apply.szsti.gov.cn
(测试时间为2014-04-09 02:00
)
my-card.in
(测试时间为2014-04-09 02:00
)
www.shuobar.cn
(测试时间为2014-04-09 02:00
)
gitcafe.com
(测试时间为2014-04-09 02:00
)
fengcheco.com
(测试时间为2014-04-09 02:00
)
获取回来的敏感信息截图如下:
获取敏感信息有内网IP
地址、路径等。
获取敏感信息有APP
信息、cookie
信息和用户名信息等
获取敏感信息是手机号码等。
获取敏感信息是QQ
信箱和密码等。
测试的地址如是一些交易、证券、银行等,是可以获取到更多的敏感信息。在次提醒广大用户近早更新您的OpenSSL
的版本或是根据我们的建议进行处理。
网络检测Snort规则
alert tcp$EXTERNAL_NET any -> $HOME_NET 443 (msg:"openssl Heartbleedattack";flow:to_server,established; content:"|18 03|"; depth: 3;byte_test:2, >, 200, 3, big; byte_test:2, <, 16385, 3, big;threshold:type limit, track by_src, count 1, seconds 600; reference:cve,2014-0160;classtype:bad-unknown; sid:20140160; rev:2;)
此次漏洞主要针对443
端口的SSL
协议。回包在16385
字节,此规则是一个通用规则。
源地址 http://bbs.antiy.cn/thread-32435-1-1.html