安全研究

安全漏洞
Ruby OCSP_basic_verify() X.509证书验证漏洞

发布日期:2009-02-13
更新日期:2009-02-16

受影响系统:
Yukihiro Matsumoto Ruby 1.9.x
Yukihiro Matsumoto Ruby 1.8.x
描述:
BUGTRAQ  ID: 33769
CVE(CAN) ID: CVE-2009-0642

Ruby是一种功能强大的面向对象的脚本语言。

Ruby没有正确地验证X.509证书,在ext/openssl/ossl_ocsp.c文件中以如下方式使用openssl函数:

    result = OCSP_basic_verify(bs, x509s, x509st, flg);
    sk_X509_pop_free(x509s, X509_free);
    if(!result) rb_warn("%s", ERR_error_string(ERR_peek_error(), NULL));

    return result ? Qtrue : Qfalse;

OCSP_basic_verify()在出错的情况下可能返回0和-1,因此这个函数可能错误的返回信息。成功利用这个漏洞的攻击者可以导致将已撤销的x.509证书处理为有效,这有助于执行网络钓鱼或站点欺骗攻击。

<*来源:Kurt Roeckx (kurt@roeckx.be
  
  链接:http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=513528
        http://redmine.ruby-lang.org/issues/show/1091
        http://secunia.com/advisories/33750/
*>

建议:
厂商补丁:

Yukihiro Matsumoto
------------------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.ruby-lang.org/

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