Product SiteDocumentation Site

1.122. libguestfs

1.122.1. RHSA-2011:0586: Low security, bug fix, and enhancement update

libguestfs is a library for accessing and modifying guest disk images.
Updated libguestfs packages that fix one security issue and several bugs, and add a number of enhancements, are now available for Red Hat Enterprise Linux 6.
The Red Hat Security Response Team has rated this update as having low security impact. Common Vulnerability Scoring System (CVSS) base scores, which give detailed severity ratings, are linked to from the security descriptions below.
Security fix:
libguestfs relied on the format auto-detection in QEMU rather than allowing the guest image file format to be specified. A privileged guest user could potentially use this flaw to read arbitrary files on the host that were accessible to the user on that host by running a program that utilized the libguestfs library. (CVE-2010-3851)
Libguestfs has been rebased to upstream version 1.7.17, which includes the following bug fixes and enhancement (BZ#613593):
BZ#600144
The guestfish mkmountpoint and umount-all commands are considered incompatible. Mount points created with the mkmountpoint command become invalid after the umount-all command is used. This is now documented in the guestfish man page. Customers should note that it is possible to safely unmount devices that were mounted with mkmountpoint by using the umount command.
BZ#612308
The -net and vlan=... options in the qemu package are deprecated. To avoid relying on these deprecated options, libguestfs now uses the -netdev option instead.
BZ#615223
The guestfish vfs-type command could not determine the type of a file system newly created by guestfish. This occurred because the vfs-type command tried to read the type from a cache file (blkid.c) that had not yet been updated. The cache file is now deleted between file system creation and attempting to read the file system type, resulting in updated file system information for vfs-type to read.
BZ#617440
If the $HOME variable was not set, guestfish did not expand a path containing ~ (tilde) into a path to the user's home directory. Guestfish now examines the current user's passwd file for the location of the user's home directory so that a path containing ~ can be expanded correctly.
Additionally, an off-by-one error was discovered in the same path-expansion algorithm. This error could potentially cause a crash. The off-by-one error has been corrected so that this crash is no longer possible.
BZ#627468
The virt-inspector and virt-v2v tools did not work for Windows guests if an additional package, libguestfs-winsupport, was not installed. The error message did not explicitly state that this missing package could be responsible for the error. An additional note has been added to make the error output more useful when attempting to use these tools with Windows guests.
BZ#627832
Some guestfish commands print integer results. In some cases, namely for file permissions, the natural radix for these results is octal. Instead, guestfish returned decimal integer results for commands such as umask. This has been corrected, and guestfish commands that return integers now return them in the natural radix for that number.
BZ#627833
The get-e2uuid command retrieved file system UUIDs via tune2fs -l. This failed on journaling block devices (JBDs) and other devices that were not second, third or fourth extended file systems (ext2, ext3 or ext4). get-e2uuid has been reimplemented so that it retrieves UUIDs via blkid instead of tune2fs -l, resolving this issue. However, since the get-e2uuid command has been deprecated, customers are advised to retrieve UUIDs with the vfs-uuid command instead.
BZ#633174
Some guestfish commands would hang when applied to non-regular files. This had some security implications in that a guest could replace regular configuration files with, for example, character devices, and cause virt-inspector and other programs to hang. guestfish commands have been modified and can now handle non-regular files.
Additionally, virt-inspector has been rewritten as virt-inspector2, which is both more powerful, and more careful about untrusted files from the guest.
BZ#639601
libguestfs documentation did not specify that special characters should be surrounded by quotes or otherwise "escaped" when used with the virt-ls at the command line. The following has been added to the libguestfs documentation:
Libvirt guest names can contain arbitrary characters, some of which have meaning to the shell such as # and space. You may need to quote or escape these characters on the command line. See the shell manual page sh(1) for details.
BZ#639602
libguestfs documentation did not specify that special characters should be surrounded by quotes or otherwise "escaped" when used with the virt-list-filesystems at the command line. The following has been added to the libguestfs documentation:
Libvirt guest names can contain arbitrary characters, some of which have meaning to the shell such as # and space. You may need to quote or escape these characters on the command line. See the shell manual page sh(1) for details.
BZ#657472
The guestfish checksum command contained a file descriptor that was not closed properly in an error path. If the checksum command resulted in an error, this would later prevent the file system from being unmounted with either umount or umount-all. The file descriptor is now closed properly on the error path, so an error in checksum no longer causes problems unmounting file systems.
BZ#657502
The virt-inspector package had an unnecessary dependency on the perl-String-ShellQuote package. This superfluous dependency has been removed.
Note that this bug was reported and corrected during development. It was not seen in production systems in the field.
BZ#666577
If the /etc/fstab of a guest machine contained a reference to a floppy disk (/dev/fd0), both virt-inspector and virt-v2v printed the following harmless warning during inspection or conversion:
unknown filesystem /dev/fd0
This warning has been suppressed to avoid confusion, and should no longer appear even if the guest machine refers to floppy disks in /etc/fstab.
BZ#666579
If the /etc/fstab of a guest machine contained a reference to a CD-ROM drive (/dev/hdc), both virt-inspector and virt-v2v printed the following harmless warning during inspection or conversion:
unknown filesystem /dev/hdc
This warning has been suppressed to avoid confusion, and should no longer appear even if the guest machine refers to CD-ROM drives in /etc/fstab.
BZ#668115
The virt-filesystems command failed when used against a guest which had a missing or corrupt file system label. This command has been updated to handle guest file systems with missing or corrupt file system labels.
Note that this bug was reported and corrected during development. It was not seen in production systems in the field.
BZ#668611
When a device in /etc/fstab did not exist, the guestfish -i command failed with a "No such file or directory" error. In the event of missing devices, guestfish now completes, and reports that some file systems could not be mounted.
Note that this bug was reported and corrected during development. It was not seen in production systems in the field.
BZ#669840
The febootstrap package contained tools required to both build and run libguestfs. This package has now been split into two parts: febootstrap and febootstrap-supermin-helper. febootstrap now contains only tools used to create supermin appliances. A new package, febootstrap-supermin-helper, is a helper tool used to rebuild supermin appliances on the fly. libguestfs now depends only on the smaller febootstrap-supermin-helper package. Fresh libguestfs installations to Red Hat Enterprise Linux 6.1 now require less space because of this smaller dependency.
BZ#673477
Separating libguestfs trace output from debug output was difficult. A string (libguestfs: trace:) is now added to the beginning of each line of the trace output so that it can be easily distinguished and filtered out of logs with the grep command or similar.
BZ#673721
The virt-make-fs man page referred to the non-existent tool virt-make-resize. This reference should have been to the virt-make-fs tool. The man page has been corrected.
BZ#676788
The guestfish set-trace command was not prepared to handle all possible error conditions. This resulted in a segmentation fault when attempting to handle several conditions. The command now handles trace errors separately, so the segmentation fault no longer occurs.
Note that this bug was reported and corrected during development. It was not seen in production systems in the field.
BZ#691724
If the /etc/fstab of a guest machine contained a reference to a virtio disk (/dev/vda1), virt-inspector printed a warning and ignored the virtio disk. The warning has been suppressed, and virtio disks are now recognized by virt-inspector.
BZ#695138
A superfluous dependency on the gfs2-utils package has been removed.
All libguestfs users are advised to upgrade to these updated packages, which correct these issues and add these enhancements.