FreeBSD VuXML: Documenting security issues in FreeBSD and the FreeBSD Ports Collection

polarssl -- denial of service vulnerability

Affected packages
polarssl < 1.2.8

Details

VuXML ID 72bf9e21-03df-11e3-bd8d-080027ef73ec
Discovery 2013-06-21
Entry 2013-08-13
Modified 2013-08-15

Paul Bakker reports:

A bug in the logic of the parsing of PEM encoded certificates in x509parse_crt() can result in an infinite loop, thus hogging processing power.

While parsing a Certificate message during the SSL/TLS handshake, PolarSSL extracts the presented certificates and sends them on to be parsed. As the RFC specifies that the certificates in the Certificate message are always X.509 certificates in DER format, bugs in the decoding of PEM certificates should normally not be triggerable via the SSL/TLS handshake.

Versions of PolarSSL prior to 1.1.7 in the 1.1 branch and prior to 1.2.8 in the 1.2 branch call the generic x509parse_crt() function for parsing during the handshake. x509parse_crt() is a generic functions that wraps parsing of both PEM-encoded and DER-formatted certificates. As a result it is possible to craft a Certificate message that includes a PEM encoded certificate in the Certificate message that triggers the infinite loop.

References

CVE Name CVE-2013-4623
URL https://polarssl.org/tech-updates/security-advisories/polarssl-security-advisory-2013-03