CVE:CVE-2009-0161
CNNVD:CNNVD-200905-176
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证书处理为有效，这有助于执行网络钓鱼或站点欺骗攻击。
solution:Upgrade apple mac_os_x to a higher version than 10.5.0,10.5.1,10.5.2,10.5.3,10.5.4,10.5.5,10.5.6,and avoid the version 10.5.0,10.5.1,10.5.2,10.5.3,10.5.4,10.5.5,10.5.6; Upgrade apple mac_os_x_server to a higher version than 10.4.11,10.5.0,10.5.1,10.5.2,10.5.3,10.5.4,10.5.6,and avoid the version 10.4.11,10.5.0,10.5.1,10.5.2,10.5.3,10.5.4,10.5.6