来自 securityweek 的安全报告:PolarSSL 存在一个高脆弱性的安全漏洞,该漏洞可导致 DoS 攻击以及可能用于远程代码执行。
PolarSSL 在很多项目中被使用,包括 OpenVPN、OpenVPN-NL、PowerDNS、Hiawatha、Monkey HTTP Server 以及很多商业产品中。在 2014年11月,PolarSSL 已经成为很多半导体和软件公司的一部分。
该高危漏洞(CVE-2015-1182)是由 PolarSSL 的开发者在内部代码审核阶段发现的,影响的范围从 1.0 版本到 1.3.9 版本的某些特定配置下,如果服务器不询问客户端证书的话就不受影响。
PolarSSL 在一份咨询中写到:在解析 ASN.1 序列,一个链接列表中的 asn1_sequence 指针在 asn1_get_sequence_of() 中没有被初始化,导致在解析列表时候发生错误,就导致了未被初始化的指针传递给 polarssl_free() 函数。
这种情况在 PolarSSL 解析证书时候触发,因此当客户端从服务器上获取证书以及服务器要求客户端证书时候会导致问题出现。
建议用户使用 PolarSSL 为 1.3.9 版本提供的补丁,或者等待下一个版本的更新。
最常见的攻击场景是攻击者通过提供一个指定无效的 X.509 证书来暴露服务器信息,这将导致 DoS 攻击,同时也可用于远程代码执行。
目前该漏洞已经确认对 OpenVPN-NL 2.3.5-nl2 和其之前的版本有效,而最新发布的 OpenVPN-NL 2.3.5-nl3 已经解决了这个问题。
OpenVPN Connect for Android 1.1.14 和早起版本,以及 OpenVPN Connect for iOS 1.0.5 和早起版本也受该漏洞影响。另外在某些特定的情况下 OpenVPN 也可能出现问题,但目前还没经过确认。PowerDNS 不受影响。