[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACVXFVPV3mq=k-AZ1bYkAMdxwXD96Ty7DYeh9H9J=yvA4m=rGA@mail.gmail.com>
Date: Tue, 19 Mar 2013 19:54:36 +0800
From: Ming Lei <tom.leiming@...il.com>
To: Sasha Levin <levinsasha928@...il.com>
Cc: Hillf Danton <dhillf@...il.com>, Dave Jones <davej@...hat.com>,
Greg Kroah-Hartman <greg@...ah.com>,
Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: use after free in sysfs_find_dirent
Hi Sasha,
On Tue, Mar 19, 2013 at 11:40 AM, Ming Lei <tom.leiming@...il.com> wrote:
> Hi Sasha,
>
> On Tue, Mar 19, 2013 at 10:06 AM, Sasha Levin <levinsasha928@...il.com> wrote:
>> [ 232.822703] sysfs_dir_pos-973 sysfs_dirent use after free: vx855(vx855)-bind, 0-25520352
>
> Looks filp->f_pos is changed as zero by llseek(), so may leave
> filp->private_data
> point to one refcount-balanced sysfs_dirent object, which will be put
> again afterwards.
>
> Hope we are luck this time, please try the attachment patch.
Looks the better and simpler way is to hold the i_mutex for llseek.
If you haven't test the v2, please ignore it and just test the attachment
v3 patch.
Thanks,
--
Ming Lei
Download attachment "sysfs-fix-readdir-v3.patch" of type "application/octet-stream" (1609 bytes)
Powered by blists - more mailing lists