DoS via local buffer overflow

Bug #121780 reported by Kees Cook
254
Affects Status Importance Assigned to Milestone
Red Hat Cluster
Fix Released
Low
redhat-cluster-suite (Ubuntu)
Fix Released
High
Fabio Massimo Di Nitto
Feisty
Fix Released
Undecided
Kees Cook
Gutsy
Fix Released
High
Fabio Massimo Di Nitto

Bug Description

Binary package hint: redhat-cluster-suite

Fabio found an overflow in cman. Update pending...

CVE References

Revision history for this message
In , Fabio (fabio-redhat-bugs) wrote :

Description of problem:

The funcion process_client in cman/daemon.c uses a static buffer
of size MAX_CLUSTER_MESSAGE + sizeof(struct sock_header).
MAX_CLUSTER_MESSAGE is 1500 bytes and struct sock_header at the timing of filing
this bug is 20 bytes.

2 problems are discovered here and fixed by the patch committed to head (see url).

The buffer is never cleaned and so data from previous usage will stay in the new
one.

There is no upper boundary check if the data we are reading from the socket are
larger than the buffer itself.

It was fairly simple to connect to cman and push a random 1520 bytes in the
socket that will corrupt memory and eventually crash cman/aisexec.

How reproducible:

always

Additional info:

cvs HEAD has been fixed but i am told to submit a BZ for people to look into the
different release branches.

Patrick has been informed and agreed on the solution on CVS head.

Submitting the bug on Lon request.

Revision history for this message
In , Christine (christine-redhat-bugs) wrote :

Check in for RHEL5

Checking in daemon.c;
/cvs/cluster/cluster/cman/daemon/daemon.c,v <-- daemon.c
new revision: 1.32.2.2; previous revision: 1.32.2.1
done

Revision history for this message
In , RHEL (rhel-redhat-bugs) wrote :

This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release. Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products. This request is not yet committed for inclusion in an Update
release.

Revision history for this message
Kees Cook (kees) wrote :

USN-476-1 contains the fix.

Changed in redhat-cluster-suite:
assignee: nobody → keescook
status: New → Fix Released
Revision history for this message
Kees Cook (kees) wrote :
Changed in redhatcluster:
status: Unknown → Fix Committed
Revision history for this message
Martin Pitt (pitti) wrote :

Feisty was fixed in the USN.

Changed in redhat-cluster-suite:
assignee: nobody → keescook
status: New → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote :

Fabio has the gutsy update ready, waiting for new kernel.

Changed in redhat-cluster-suite:
assignee: keescook → fabbione
importance: Undecided → High
status: Fix Released → Fix Committed
Revision history for this message
Fabio Massimo Di Nitto (fabbione) wrote :

Changes:
 redhat-cluster-suite (2.20070626-0ubuntu1) gutsy; urgency=low
 .
   * New CVS snapshot.
 .
   * Drop last of our local patches.
 .
   * Fix CVE-2007-3374 as described in USN-476-1.
     https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=244891
 .
   * Bump build depends on linux-libc-dev (2.6.22-7.14) required for new dlm
     headers and gfs2_ondisk fixes.

Changed in redhat-cluster-suite:
status: Fix Committed → Fix Released
Revision history for this message
In , Red (red-redhat-bugs) wrote :

An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2007-0559.html

Changed in redhatcluster:
status: Fix Committed → Fix Released
Changed in redhatcluster:
importance: Unknown → Low
To post a comment you must log in.
This report contains Public Security information  
Everyone can see this security related information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.