First published: Thu Oct 29 2015(Updated: )
A NULL pointer dereference in the RDS connection code when sending a message to an apparently unbound socket in net/rds/connection.c was found. The problem is caused by the code checking if the socket is bound in rds_sendmsg(), which checks the rs_bound_addr field without taking a lock on the socket. This opens a race where rs_bound_addr is temporarily set but where the transport is not in rds_bind(), leading to a NULL pointer dereference when trying to dereference 'trans' in __rds_conn_create(). Note that this is a complete fix of <a href="https://access.redhat.com/security/cve/CVE-2015-6937">CVE-2015-6937</a> issue. Patch can be found here: <a href="https://lkml.org/lkml/2015/10/16/530">https://lkml.org/lkml/2015/10/16/530</a> CVE assignment: <a href="http://seclists.org/oss-sec/2015/q4/179">http://seclists.org/oss-sec/2015/q4/179</a> Workaround: The Linux kernel will attempt to automatically load the RDS module when the RDS protocol is used from userspace. The module can be prevented being loaded with the commands: echo "install rds /bin/true" > /etc/modprobe.d/disable-rds echo "alias net-pf-28 off" >> /etc/modprobe.d/disable-rds Earlier versions of Red Hat Enterprise Linux can be disabled with instructions from here: <a href="https://access.redhat.com/solutions/41278">https://access.redhat.com/solutions/41278</a> If the module is already loaded prior to this, it must be removed or the system must be rebooted to preven it loading in the future.
Affected Software | Affected Version | How to fix |
---|---|---|
Red Hat Linux |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
The severity of REDHAT-BUG-1276437 is classified as a high vulnerability due to the potential for a NULL pointer dereference.
To fix REDHAT-BUG-1276437, you should apply the latest updates from Red Hat that address this vulnerability in the Linux Kernel.
REDHAT-BUG-1276437 affects certain versions of the Red Hat Linux Kernel that utilize the RDS connection code.
The cause of the vulnerability REDHAT-BUG-1276437 is a NULL pointer dereference when sending messages to an unbound socket.
A possible workaround for REDHAT-BUG-1276437 is to avoid using RDS connections that interact with unbound sockets until the patch is applied.