[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 13 Nov 2009 11:57:11 +0100
From: Marcus Meissner <meissner@...e.de>
To: oss-security@...ts.openwall.com
Cc: "Steven M. Christey" <coley@...us.mitre.org>
Subject: Re: CVE request: kernel: bad permissions on megaraid_sas sysfs files
On Fri, Nov 13, 2009 at 02:39:24PM +0800, Eugene Teo wrote:
> The megaraid_sas driver exposes a number of driver attributes in sysfs.
> Many of these are read-only, just export information from the driver and
> are world-readable.
>
> A couple of attributes are writable and may be used to change the
> behaviour of the driver (e.g. setting debug logging levels, selecting
> poll vs. interrupt I/O mode etc).
>
> Some of these writable attributes are mistakenly created with
> world-writable permissions, e.g. dbg_lvl and poll_mode_io.
>
> This would allow an unprivileged user to affect kernel driver behaviour
> and logging level.
>
> Upstream made the dbd_lvl permissions more restrictive:
> http://git.kernel.org/linus/66dca9b8c50b5e59d3bea8b21cee5c6dae6c9c46
>
> The poll_mode_io pseudofile still has world-writable permissions
> upstream. I'm getting my colleague to submit a patch.
>
> https://bugzilla.redhat.com/show_bug.cgi?id=526068
It seems you can set poll_mode_io multiple times to the full integer range,
(like to 1 , 2 , 3 etc.) and it will reinitialize its timers everytime
via init_timer() and add_timer().
This will corrupt the timer chain (I think) by setting entry.next = NULL
in init_timer().
It should only accept a boolean value. :/
Ciao, Marcus
Powered by blists - more mailing lists
Please check out the
Open Source Software Security Wiki, which is counterpart to this
mailing list.
Powered by Openwall GNU/*/Linux -
Powered by OpenVZ