安全研究

安全漏洞
OpenSSL多个拒绝服务和无效证书验证漏洞

发布日期:2009-03-25
更新日期:2009-06-23

受影响系统:
OpenSSL Project OpenSSL 0.9.x
不受影响系统:
OpenSSL Project OpenSSL 0.9.8k
描述:
BUGTRAQ  ID: 34256
CVE(CAN) ID: CVE-2009-0590,CVE-2009-0591,CVE-2009-0789

OpenSSL是一种开放源码的SSL实现,用来实现网络通信的高强度加密,现在被广泛地用于各种网络应用程序中。

OpenSSL的多个函数中存在安全漏洞,可能允许远程攻击者绕过某些安全限制或导致拒绝服务。

1) ASN1_STRING_print_ex()函数在打印BMPString或UniversalString字符串时存在错误,在打印证书内容时非法编码的字符串长度可以触发无效的内存访问,导致OpenSSL应用崩溃。

2) CMS_verify()函数在处理畸形的签名属性时没有正确地处理出错情况,可能导致应用将畸形的签名属性集处理为有效,绕过之后的检查。成功利用这个漏洞要求OpenSSL启用了CMS且访问了之前生成的无效签名。

3) 在sizeof(long) < sizeof(void *)的平台上(如WIN64),处理畸形ASN1结构时的错误可能允许特制的证书触发无效的内存访问,导致导致OpenSSL应用崩溃。

<*来源:Ivan Nestlerode
        Paolo Ganci
  
  链接:http://secunia.com/advisories/34411/
        http://www.openssl.org/news/secadv_20090325.txt
        http://alerts.hp.com/r?2.1.3KT.2ZR.zWmfi.DKtp6i..T.Hyyo.1usa.bW89MQ%5f%5fDcMUFYA0
        http://sunsolve.sun.com/search/printfriendly.do?assetkey=1-66-258048-1
        http://security.FreeBSD.org/advisories/FreeBSD-SA-09:08.openssl.asc
        https://www.redhat.com/support/errata/RHSA-2009-1335.html
        https://www.redhat.com/support/errata/RHSA-2010-0163.html
*>

建议:
厂商补丁:

FreeBSD
-------
FreeBSD已经为此发布了一个安全公告(FreeBSD-SA-09:08)以及相应补丁:
FreeBSD-SA-09:08:Remotely exploitable crash in OpenSSL
链接:http://security.FreeBSD.org/advisories/FreeBSD-SA-09:08.openssl.asc

补丁下载:

1) 将有漏洞的系统升级到6-STABLE或7-STABLE,或修改日期之后的RELENG_7_2、RELENG_7_1、RELENG_7_0、RELENG_6_4或RELENG_6_3安全版本。

2) 为当前系统打补丁:

以下补丁确认可应用于FreeBSD 6.3、6.4、7.0、7.1和7.2系统。

a) 从以下位置下载相关补丁,并使用PGP工具验证附带的PGP签名。

[FreeBSD 7.x]
# fetch http://security.FreeBSD.org/patches/SA-09:08/openssl.patch
# fetch http://security.FreeBSD.org/patches/SA-09:08/openssl.patch.asc

[FreeBSD 6.x]
# fetch http://security.FreeBSD.org/patches/SA-09:08/openssl6.patch
# fetch http://security.FreeBSD.org/patches/SA-09:08/openssl6.patch.asc

b) 以root执行以下命令:

# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/secure/lib/libcrypto
# make obj && make depend && make includes && make && make install

注释:在amd64平台上,上述步骤无法升级lib32(i386兼容)库。在使用了i386兼容库的amd64系统上,应如下重新编译操作系统:
<URL:http://www.FreeBSD.org/handbook/makeworld.html>

HP
--
HP已经为此发布了一个安全公告(HPSBUX02435)以及相应补丁:
HPSBUX02435:SSRT090059 rev.1 - HP-UX Running OpenSSL, Remote Denial of Service (DoS), Bypass Security Restrictions
链接:http://alerts.hp.com/r?2.1.3KT.2ZR.zWmfi.DKtp6i..T.Hyyo.1usa.bW89MQ%5f%5fDcMUFYA0

OpenSSL Project
---------------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.openssl.org/source/openssl-0.9.8k.tar.gz

RedHat
------
RedHat已经为此发布了一个安全公告(RHSA-2009:1335-02)以及相应补丁:
RHSA-2009:1335-02:Moderate: openssl security, bug fix, and enhancement update
链接:https://www.redhat.com/support/errata/RHSA-2009-1335.html

Sun
---
Sun已经为此发布了一个安全公告(Sun-Alert-258048)以及相应补丁:
Sun-Alert-258048:A Security Vulnerability in the ASN.1 Handling in Solaris OpenSSL May Lead to a Denial of Service (DoS) Condition
链接:http://sunsolve.sun.com/search/printfriendly.do?assetkey=1-66-258048-1

浏览次数:2953
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障