Bug 439754 (CVE-2008-1375) - CVE-2008-1375 kernel: race condition in dnotify (local DoS, local roothole possible)
Summary: CVE-2008-1375 kernel: race condition in dnotify (local DoS, local roothole po...
Status: CLOSED ERRATA
Alias: CVE-2008-1375
Product: Security Response
Classification: Other
Component: vulnerability (Show other bugs)
(Show other bugs)
Version: unspecified
Hardware: All Linux
high
high
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard: impact=important,source=redhat,public...
Keywords: Security
Depends On: 439755 439756 439757 439758 439759
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-03-31 07:22 UTC by Jan Lieskovsky
Modified: 2010-12-21 17:15 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-12-21 17:15:58 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2008:0211 normal SHIPPED_LIVE Important: kernel security and bug fix update 2008-05-07 07:03:52 UTC
Red Hat Product Errata RHSA-2008:0233 normal SHIPPED_LIVE Important: kernel security and bug fix update 2008-05-07 07:47:37 UTC
Red Hat Product Errata RHSA-2008:0237 normal SHIPPED_LIVE Important: kernel security and bug fix update 2008-05-07 07:28:59 UTC

Description Jan Lieskovsky 2008-03-31 07:22:07 UTC
Description of problem:

Alexander Viro has reported the following serious Linux kernel issue:

<cite>

 fcntl_dirnotify() adds an element to inode->i_dnotify. It contains
a reference to struct file and to struct files_struct (both not contributing
to refcounts). filp_close() (called when reference to file is removed
from descriptor table) purges element with file/descriptor table in question
from ->i_dnotify. The problem is, fcntl() can race with close() from another
thread, inserting element *after* close() is finished. If that happens,
the sucker is stuck there forever, long after the struct file it refers
to had been freed/reused/etc. Actually, even having the (in-core) inode
freed and reused doesn't clean it up - "->i_dnotify is empty on allocated
inode" is guaranteed by slab constructor; freeing and reallocating won't
touch it at all, since the list must have been emptied before we'd dropped
the final reference to inode.

</cite>

NOTE:  Please note this issue is NOT public yet, so handle each information
=====  about this one as confidential.

Comment 7 Fedora Update System 2008-05-14 21:31:54 UTC
kernel-2.6.24.7-92.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 8 Vincent Danen 2010-12-21 17:15:58 UTC
This was addressed via:

Red Hat Enterprise Linux version 3 (RHSA-2008:0211)
Red Hat Enterprise Linux version 5 (RHSA-2008:0233)
Red Hat Enterprise Linux version 4 (RHSA-2008:0237)


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