Bug 302921 (CVE-2006-6921) - CVE-2006-6921 kernel: denial of service with wedged processes
Summary: CVE-2006-6921 kernel: denial of service with wedged processes
Keywords:
Status: CLOSED ERRATA
Alias: CVE-2006-6921
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL: http://nvd.nist.gov/nvd.cfm?cvename=C...
Whiteboard:
Depends On: 221403 221414 229882 302931
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-09-24 10:55 UTC by Mark J. Cox
Modified: 2021-11-12 19:36 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-09-29 16:42:56 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2007:0939 0 normal SHIPPED_LIVE Important: kernel security update 2008-01-07 18:58:13 UTC
Red Hat Product Errata RHSA-2008:0154 0 normal SHIPPED_LIVE Important: kernel security and bug fix update 2008-03-05 13:58:42 UTC

Description Mark J. Cox 2007-09-24 10:55:36 UTC
Common Vulnerabilities and Exposures assigned an identifier CVE-2006-6921 to the following vulnerability:

Unspecified versions of the Linux kernel allows local users to cause a denial of service (unrecoverable zombie process) via a program with certain instructions that prevent init from properly reaping a child whose parent has died.

References:

http://uwsg.iu.edu/hypermail/linux/kernel/0612.2/0980.html
http://uwsg.iu.edu/hypermail/linux/kernel/0612.2/1021.html

Comment 1 Mark J. Cox 2007-09-24 10:56:36 UTC
From Albert Cahalan:

Normally, when a process dies it becomes a zombie. If the parent dies (before or
after the child), the child is adopted by init. Init will reap the child.

The program included below DOES NOT get reaped.

Do like so:

gcc -m32 -O2 -std=gnu99 -o foo foo.c
while true; do killall -9 foo; ./foo; sleep 1; done

BTW, it gets even better if you start playing with ptrace. Use the "strace"
program (following children) and/or start sending rapid-fire SIGKILL to all the
various _threads_ in the processes. You can get processes wedged in a wide
variety of interesting states. I've seen "X" state, processes sitting around
with pending SIGKILL, a process stuck in "D" state supposedly core dumping
despite ulimit 0 on the core size, etc.

Comment 4 Mark J. Cox 2007-09-24 11:00:38 UTC
This issue does not affect versions of kernels shipped in RHEL2.1 or RHEL3.

Comment 8 Kurt Seifried 2011-09-29 16:42:56 UTC
All children bugs have been closed, parent is no longer needed.


Note You need to log in before you can comment on or make changes to this bug.