Bug 605452 (CVE-2010-0212)

Summary: CVE-2010-0212 openldap: modrdn processing IA5StringNormalize NULL pointer dereference
Product: [Other] Security Response Reporter: Vincent Danen <vdanen>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: jplans, jrusnack, jzeleny, nalin, omoris, security-response-team
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-06-05 06:37:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 606369, 606374, 606375, 606377, 606399, 606400, 615903    
Bug Blocks:    

Description Vincent Danen 2010-06-18 01:00:11 UTC
A vulnerability was found in OpenLDAP during the processing of a modrdn call with a specially crafted destination rdn string.  An unauthenticated user could
cause slapd to crash due to a NULL pointer dereference.

Quoting the report:

As with bug CVE-2010-0211 (bug #605448), the crash occurs during a call to smr_normalize, but in this case the call points to IA5StringNormalize which crashes with a null pointer dereference at schema_init.c:2696.

This has been reportedly tested against upstream 2.4.22 as well as 2.4.11 (Debian) and 2.4.21 (Ubuntu).

Acknowledgements:

Red Hat would like to thank CERT-FI for responsibly reporting this flaw, who credit Ilkka Mattila and Tuomas Salomäki for the discovery of the issue.

Comment 5 Tomas Hoger 2010-06-21 09:54:13 UTC
This issue affects openldap 2.4.x versions in Fedora / RHEL-6 Beta1.  For those openldap versions, this is a pre-auth problem.

This also affects openldap 2.3.x version in RHEL-5, but unlike recent 2.4 versions, the issue can only be triggered by an authenticated user with sufficient privileges to perform modrdn (modify relative distinguished name, or entry rename) operation.  selfwrite privilege to an entry is not sufficient.

Older openldap versions as shipped with RHEL-4 and RHEL-3 are not affected by this problem.  In those versions, IA5StringValidate() rejects empty string as a valid value for a IA5String attribute syntax, such value is rejected before IA5StringNormalize() is called that may possibly deref NULL pointer.

Upstream patch does not change IA5StringValidate() and rather places additional restriction on the values used in DNs and disallows empty values regardless of the attribute syntax.  This additional check may be included in future openldap updates in RHEL-4 and RHEL-3.

Comment 11 Tomas Hoger 2010-07-19 08:52:32 UTC
Fixed upstream in 2.4.23.  Upstream bug report is public now:
  http://www.openldap.org/its/index.cgi/Software%20Bugs?id=6570

Comment 13 errata-xmlrpc 2010-07-20 15:42:14 UTC
This issue has been addressed in following products:

  Red Hat Enterprise Linux 5

Via RHSA-2010:0542 https://rhn.redhat.com/errata/RHSA-2010-0542.html