]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Reject certificates with embedded NULLs in the commonName field. This stops
authorMagnus Hagander <magnus@hagander.net>
Wed, 9 Dec 2009 06:37:17 +0000 (06:37 +0000)
committerMagnus Hagander <magnus@hagander.net>
Wed, 9 Dec 2009 06:37:17 +0000 (06:37 +0000)
commitd585483ab9bf933f0dd9c24eb8c89a008f46865f
tree3cf12f02aa176dfe8168a7b2db2462e859bc526f
parent8510e7e46343f8b9dacff49896bfc82adc561529
Reject certificates with embedded NULLs in the commonName field. This stops
attacks where an attacker would put <attack>\0<propername> in the field and
trick the validation code that the certificate was for <attack>.

This is a very low risk attack since it reuqires the attacker to trick the
CA into issuing a certificate with an incorrect field, and the common
PostgreSQL deployments are with private CAs, and not external ones. Also,
default mode in 8.4 does not do any name validation, and is thus also not
vulnerable - but the higher security modes are.

Backpatch all the way. Even though versions 8.3.x and before didn't have
certificate name validation support, they still exposed this field for
the user to perform the validation in the application code, and there
is no way to detect this problem through that API.

Security: CVE-2009-4034
src/backend/libpq/be-secure.c
src/interfaces/libpq/fe-secure.c