]> git.ipfire.org Git - thirdparty/qemu.git/commit
9pfs: local: renameat: don't follow symlinks
authorGreg Kurz <groug@kaod.org>
Sun, 26 Feb 2017 22:43:55 +0000 (23:43 +0100)
committerGreg Kurz <groug@kaod.org>
Tue, 28 Feb 2017 10:21:15 +0000 (11:21 +0100)
commit99f2cf4b2dad7b37c69759deb0d0b19d3ec1a24a
treeb92a6e12dfca3e84b2897214dfc84669dfae47b6
parentf9aef99b3e6df88036436b0d3dc3d504b9346c8c
9pfs: local: renameat: don't follow symlinks

The local_renameat() callback is currently a wrapper around local_rename()
which is vulnerable to symlink attacks.

This patch rewrites local_renameat() to have its own implementation, based
on local_opendir_nofollow() and renameat().

This partly fixes CVE-2016-9602.

Signed-off-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
hw/9pfs/9p-local.c