Bug 1395496
Summary: | Libvirt allow paths symbol in ivshmem-plain/ivshmem name and qemu can access file out of /dev/shm | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Luyao Huang <lhuang> |
Component: | libvirt | Assignee: | Martin Kletzander <mkletzan> |
Status: | CLOSED ERRATA | QA Contact: | Jingjing Shao <jishao> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 7.3 | CC: | dyuan, jsuchane, rbalakri, xuzhang |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | libvirt-3.2.0-1.el7 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-08-01 17:19:14 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Luyao Huang
2016-11-16 03:20:03 UTC
Related upstream commit: commit 1c06d0faba152170de664f3ff4017cf4b59b44e4 Author: Martin Kletzander <mkletzan> AuthorDate: Wed Feb 1 17:14:00 2017 +0100 Commit: Martin Kletzander <mkletzan> CommitDate: Tue Feb 21 12:47:24 2017 +0100 qemu: Forbid slashes in shmem name With that users could access files outside /dev/shm. That itself isn't a security problem, but might cause some errors we want to avoid. So let's forbid slashes as we do with domain and volume names and also mention that in the schema. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1395496 Signed-off-by: Martin Kletzander <mkletzan> v3.0.0-261-g1c06d0f Verify this bug as below. # rpm -q libvirt libvirt-3.2.0-5.el7.x86_64 # virsh edit r7.2 Add this xml as below to guest xml <shmem name='../../var/lib/libvirt/test-ivshmem'> <model type='ivshmem-plain'/> <size unit='M'>4</size> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </shmem> Get the error as below error: XML document failed to validate against schema: Unable to validate doc against /usr/share/libvirt/schemas/domain.rng Extra element devices in interleave Element domain failed to validate content Failed. Try again? [y,n,i,f,?]: enter i finish the edit Domain r7.2 XML configuration edited. # virsh start r7.2 error: Failed to start domain r7.2 error: unsupported configuration: shmem name '../../var/lib/libvirt/test-ivshmem' must not contain '/' Edit the guest xml as below. <shmem name='test-ivshmem'> <model type='ivshmem-plain'/> <size unit='M'>4</size> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </shmem> # virsh start r7.2 Domain r7.2 started # ps aux|grep qemu | grep shmmem ..... -object memory-backend-file,id=shmmem-shmem0,mem-path=/dev/shm/test-ivshmem,size=4194304,share=yes -device ivshmem-plain,id=shmem0,memdev=shmmem-shmem0,bus=pci.0,addr=0x3 -msg timestamp=on .... Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2017:1846 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2017:1846 |