All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: "Eren Türkay" <turkay.eren@gmail.com>, xen-devel@lists.xensource.com
Subject: Re: QEMU "drive_init()" Disk Format Security Bypass
Date: Thu, 8 May 2008 18:12:55 +0100	[thread overview]
Message-ID: <20080508171255.GA31908@redhat.com> (raw)
In-Reply-To: <18467.12572.126574.502777@mariner.uk.xensource.com>

On Thu, May 08, 2008 at 05:58:04PM +0100, Ian Jackson wrote:
> Eren Türkay writes ("[Xen-devel] QEMU "drive_init()" Disk Format
> > Security Bypass"): Today, a security flaw in Qemu was released at
> > secunia [0] which was fixed in qemu svn repository.
> >
> > Xen uses part of a qemu code including "vl.c" in which the security
> > flaw appeared. I suspect that Xen is effected by this vulnerability
> > too but I couldn't find same lines in vl.c and I'm not sure about
> > it.
> 
> I've looked into it and I'm afraid that yes, Xen is vulnerable.  We
> use the same code in qemu, but via a different path.  The patch used
> to fix the situation in qemu upstream in inapplicable to the current
> ioemu.  As far as I can see the problem is with HVM guests where a
> file which is supposed to be a raw image is specified in the
> configuration.
> 
> If the object mentioned in the configuration is a block device all is
> well, as qemu forces the format to raw in that case.  If the file is
> actually a non-raw image format qemu will determine the type
> correctly.  For PV guests, the tap driver is used instead - although I
> haven't checked that for a similar problem.
> 
> There is a problem constructing a proper fix, unfortunately.  If you
> write   file:/path/to/some/file   in your configuration, it is
> ambiguous: did you mean that /path/to/some/file was a raw disk image
> or a cow format with separate backing file ?  (The cow formats contain
> the filename of the backing file.)
> 
> As far as I can tell there is not currently any way to specify the
> format explicitly.  qemu-dm always autoguesses.
> 
> Should we break all old installations by requiring everyone to specify
> a format ?  Or should we break only some old installations by
> retaining the current syntax to mean one thing or the other ?  Perhaps
> we should attempt to guess according to the _filename_, which is
> controlled by the host and thus safe.  Do users typically choose
> filenames for cow images which are enough of a giveaway ?

Well, tap:XXX: style URLS already encode the format explicitly. So if
we made QEMU understand that syntax too, then that gives admins the 
option to be secure, while keeping file: fas a legacy (unsecure) mode
for compatability. This has the added advantage that it'd be the same
syntax used for PV-on-HVM drivers, and avoids nasty guessing based on
filename.

Dan.
-- 
|: Red Hat, Engineering, Boston   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

  parent reply	other threads:[~2008-05-08 17:12 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-08 15:00 QEMU "drive_init()" Disk Format Security Bypass Eren Türkay
2008-05-08 16:58 ` Ian Jackson
2008-05-08 17:12   ` Eren Türkay
2008-05-08 17:12   ` Daniel P. Berrange [this message]
2008-05-08 17:18     ` Keir Fraser
2008-05-08 17:19     ` Ian Jackson
2008-05-08 17:23       ` Daniel P. Berrange
2008-05-08 17:27         ` Ian Jackson
2008-05-08 17:30           ` Daniel P. Berrange
2008-05-09 15:54             ` [PATCH] " Ian Jackson
2008-05-13 17:16               ` Ian Jackson
2008-05-30  9:00                 ` Markus Armbruster
2008-05-30 13:37                   ` Ian Jackson
2008-06-13 15:13                     ` Ian Jackson
2008-06-16 15:38                       ` Markus Armbruster
2008-06-16 15:45                         ` Ian Jackson
2008-06-16 16:37                           ` Markus Armbruster
2008-06-16 16:55                             ` Ian Jackson
2008-06-17 16:58                               ` Markus Armbruster
2008-06-17 16:59                               ` [PATCH] ioemu: Disable format auto-probing in monitor command change Markus Armbruster
2008-06-18 10:22                                 ` Ian Jackson
2008-06-18 11:36                                   ` Markus Armbruster
2008-06-13 15:17                   ` [PATCH] QEMU "drive_init()" Disk Format Security Bypass Ian Jackson
  -- strict thread matches above, loose matches on Subject: below --
2008-05-08 14:02 Eren Türkay
2008-05-08 14:12 ` Daniel P. Berrange
2008-05-08 14:17   ` Eren Türkay

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080508171255.GA31908@redhat.com \
    --to=berrange@redhat.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=turkay.eren@gmail.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.