[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [V8 PATCH 00/11] virtio-9p: Use chroot to safely access fil
From: |
M. Mohan Kumar |
Subject: |
[Qemu-devel] [V8 PATCH 00/11] virtio-9p: Use chroot to safely access files in passthrough security model |
Date: |
Wed, 9 Mar 2011 22:45:49 +0530 |
In passthrough security model, following symbolic links in the server
side could result in TOCTTOU vulnerabilities.
This patchset resolves this issue by creating a dedicated process which
chroots into the share path and all file object access is done in the
chroot environment.
This patchset implements chroot enviroment, provides necessary functions
that can be used by the passthrough function calls.
Changes from version V7:
* Add two chroot methods remove and rename
* Minor cleanups like consolidating functions
Changes from version V6:
* Send only fd/errno in socket operations instead of FdInfo structure
* Minor cleanups
Changes from version V5:
* Return errno on failure instead of setting errno
* Minor cleanups like updated comments, enable CONFIG_THREAD if
CONFIG_VIRTFS is enabled
Changes from version V4:
* Avoid using malloc/free inside chroot process
* Seperate chroot server and client functions
Changes from version V3
* Return EIO incase of socket read/write fail instead of exiting
* Changed data types as suggested by Blue Swirl
* Chroot process reports error through qemu process
Changes from version V2
* Treat socket IO errors as fatal, ie qemu will exit
* Split patchset based on chroot side (server) and qemu side(client)
functionalities
M. Mohan Kumar (11):
Implement qemu_read_full
virtio-9p: Enable CONFIG_THREAD if CONFIG_VIRTFS is enabled
virtio-9p: Provide chroot worker side interfaces
virtio-9p: Add qemu side interfaces for chroot environment
virtio-9p: Add support to open a file in chroot environment
virtio-9p: Create support in chroot environment
virtio-9p: Support for creating special files
virtio-9p: Add support for removing file or directory
virtio-9p: Add support to rename
virtio-9p: Move file post creation changes to none security model
virtio-9p: Chroot environment for other functions
Makefile.objs | 1 +
configure | 1 +
hw/9pfs/virtio-9p-chroot-worker.c | 306 ++++++++++++++++++++++++++++++++
hw/9pfs/virtio-9p-chroot.c | 104 +++++++++++
hw/9pfs/virtio-9p-chroot.h | 47 +++++
hw/9pfs/virtio-9p-local.c | 355 ++++++++++++++++++++++++++++--------
hw/9pfs/virtio-9p.c | 25 +++
hw/file-op-9p.h | 4 +
osdep.c | 32 ++++
qemu-common.h | 2 +
10 files changed, 798 insertions(+), 79 deletions(-)
create mode 100644 hw/9pfs/virtio-9p-chroot-worker.c
create mode 100644 hw/9pfs/virtio-9p-chroot.c
create mode 100644 hw/9pfs/virtio-9p-chroot.h
--
1.7.3.4
- [Qemu-devel] [V8 PATCH 00/11] virtio-9p: Use chroot to safely access files in passthrough security model,
M. Mohan Kumar <=
[Qemu-devel] [V8 PATCH 03/11] virtio-9p: Provide chroot worker side interfaces, M. Mohan Kumar, 2011/03/09
[Qemu-devel] [V8 PATCH 10/11] virtio-9p: Move file post creation changes to none security model, M. Mohan Kumar, 2011/03/09
[Qemu-devel] [V8 PATCH 07/11] virtio-9p: Support for creating special files, M. Mohan Kumar, 2011/03/09
[Qemu-devel] [V8 PATCH 06/11] virtio-9p: Create support in chroot environment, M. Mohan Kumar, 2011/03/09