Moderate: 389-ds-base (SL6)

Synopsis: Moderate: 389-ds-base security and bug fix update
Issue Date: 2013-03-11
CVE Numbers: CVE-2013-0312

A flaw was found in the way LDAPv3 control data was handled by 389
Directory Server. If a malicious user were able to bind to the directory
(even anonymously) and send an LDAP request containing crafted LDAPv3
control data, they could cause the server to crash, denying service to the
directory. (CVE-2013-0312)

This update also fixes the following bugs:

* After an upgrade from Scientific Linux 6.3 to version 6.4, the upgrade
script did not update the schema file for the PamConfig object class.
Consequently, new features for PAM such as configuration of multiple
instances and pamFilter attribute could not be used because of the schema
violation. With this update, the upgrade script updates the schema file
for the PamConfig object class and new features function properly.

* Previously, the valgrind test suite reported recurring memory leaks in
the modify_update_last_modified_attr() function. The size of the leaks
averaged between 60-80 bytes per modify call. In environments where modify
operations were frequent, this caused significant problems. Now, memory
leaks no longer occur in the modify_update_last_modified_attr() function.

* The Directory Server (DS) failed when multi-valued attributes were
replaced. The problem occurred when replication was enabled, while the
server executing the modification was configured as a single master and
there was at least one replication agreement. Consequently, the
modification requests were refused by the master server, which returned a
code 20 “Type or value exists” error message. These requests were
replacements of multi-valued attributes, and the error only occurred when
one of the new values matched one of the current values of the attribute,
but had a different letter case. Now, modification requests function
properly and no longer return code 20 errors.

* The DNA (distributed numeric assignment) plug-in, under certain
conditions, could log error messages with the “DB_LOCK_DEADLOCK” error
code when attempting to create an entry with a uidNumber attribute. Now,
DNA handles this case properly and errors no longer occur during attempts
to create entries with uidNumber attributes.

* Posix Winsync plugin was calling an internal modify function which was
not necessary. The internal modify call failed and logged an error message
“slapi_modify_internal_set_pb: NULL parameter” which was not clear. This
patch stops calling the internal modify function if it is not necessary
and the cryptic error message is not observed.

* Previously, under certain conditions, the dse.ldif file had 0 bytes
after a server termination or when the machine was powered off.
Consequently, after the system was brought up, a DS or IdM system could be
unable to restart, leading to production server outages. Now, the server
mechanism by which the dse.ldif is written is more robust, and tries all
available backup dse.ldif files, and outages no longer occur.

* Due to an incorrect interpretation of an error code, a directory server
considered an invalid chaining configuration setting as the disk full
error and shut down unexpectedly. Now, a more appropriate error code is in
use and the server no longer shuts down from invalid chaining
configuration settings.

* While trying to remove a tombstone entry, the ns-slapd daemon terminated
unexpectedly with a segmentation fault. With this update, removal of
tombstone entries no longer causes crashes.

After installing this update, the 389 server service will be restarted


– Scientific Linux Development Team