Red Hat Bugzilla – Bug 168661
CVE-2005-3044 lost fput could lead to DoS
Last modified: 2007-11-30 17:07:08 EST
Can we characterize the severity of this issue? The referenced fix has been
made upstream in 2.6 but not 2.4, and to do so would require backporting
fget_light()/fput_light(). I wonder if this is too invasive for a late
update... adding sct to cc list for his opinion.
It's worse than just a missing fput(). The 2.4 code does:
struct file *file = fget(fd);
struct tty_struct *real_tty;
It's checking fd for != 0 instead of file. So it's (a) failing to operate
correctly if fd == 0 (which is a perfectly legal fd), and is (b) failing to
detect when fget() returns NULL.
The fix is simple and localised. There is no need at all to back-port
fget/fput_light() --- those are optimisations available only in 2.6. For 2.4,
just use fget()/fput().
Fix posted for internal review on 17-Oct-2005.
A fix for this problem has just been committed to the RHEL3 U7
patch pool this evening (in kernel version 2.4.21-37.6.EL).
A fix for this problem has also been committed to the RHEL3 E7
patch pool this evening (in kernel version 2.4.21-37.0.1.EL).
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.