qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: Gonglei <arei.gonglei@huawei.com>
Cc: Peter Maydell <peter.maydell@linaro.org>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	Markus Armbruster <armbru@redhat.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Michael Roth <mdroth@linux.vnet.ibm.com>,
	qemu-devel <qemu-devel@nongnu.org>,
	Paolo Bonzini <pbonzini@redhat.com>, John Snow <jsnow@redhat.com>
Subject: Re: [Qemu-devel] QEMU's CVE Procedures
Date: Mon, 8 Jun 2015 14:07:05 +0100	[thread overview]
Message-ID: <20150608130705.GB19157@redhat.com> (raw)
In-Reply-To: <55758E29.5050902@huawei.com>

On Mon, Jun 08, 2015 at 08:44:25PM +0800, Gonglei wrote:
> On 2015/6/6 6:16, John Snow wrote:
> > (6) What about qemu-stable?
> > 
> > Our stable process is somewhat lacking with respect to the CVE
> > process. It is good that we occasionally publish stable fix roundups
> > that downstream maintainers can base their work off of, but it would
> > be good to have a branch where we can have CVE fixes posted promptly.
> > 
> Good point.
> 
> In our team, when a CVE fix posted in upstream, we should fix all other Qemu
> versions manually. Sometimes, the involved files are quite different between
> different Qemu branches. It's too expensive when you have so many different
> branches need to maintain. :(
> 
> > 
> > (7) How long should we support a stable branch?
> > 
> > We should figure out how many stable release trees we actually intend
> > to support: The last two releases? The last three?
> > 
> > My initial guess is "Any stable branch should be managed for at least
> > a year after initial release."
> > 
> > This would put our current supported releases as 2.1, 2.2 and 2.3, so
> > about ~3 managed releases seems sane as an initial effort.

FWIW, even if QEMU doesn't backport the fix to all branches, I think
the important this is to document which historical releases are going
to be affected by the CVE. That gives maintainers a heads up a to
whether they are going to have to do a backport themselves.

This is not generally as bad as it sounds, as part of triaging most
CVEs is to look at GIT history to identify when a flaw was first
introduced. Once you know that its usually pretty straightforward
to identify the branches that will be affected. ie all that post
date that commit, and sometimes earlier releases if the flaw was
backported.

For libvirt, we'll generally backport the fix to all -maint branches
that exist (no matter how old) as long as the patch cherry picks with
reasonable ease.


One of the things I could really recommend is to have a formal
description for all QEMU flaws recording this kind of important
metadata, along with other relevant metadata.

In libvirt we store all our records in a git repo, in a standardized
XML format, eg

  http://libvirt.org/git/?p=libvirt-security-notice.git;a=blob;f=notices/2015/0002.xml;hb=HEAD

This is then converted to HTML and plain text for publication on our
website and via email

   http://security.libvirt.org/2014/0003.html
   http://security.libvirt.org/2014/0003.txt
   http://security.libvirt.org/2014/0003.xml

Notice in particular the list of GIT hashes and release tags identifying
when the flaw was introduced, what releases are broken, when the flaw
was fixed (if at all) and when the fix was released (if at all).

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

  reply	other threads:[~2015-06-08 13:07 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-05 22:16 [Qemu-devel] QEMU's CVE Procedures John Snow
2015-06-08  9:25 ` Stefan Hajnoczi
2015-06-08 11:00 ` Stefano Stabellini
2015-06-08 12:44 ` Gonglei
2015-06-08 13:07   ` Daniel P. Berrange [this message]
2015-06-09  1:30     ` Gonglei
2015-06-09  8:53       ` Daniel P. Berrange
2015-06-08 14:01 ` Peter Maydell

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=20150608130705.GB19157@redhat.com \
    --to=berrange@redhat.com \
    --cc=arei.gonglei@huawei.com \
    --cc=armbru@redhat.com \
    --cc=jsnow@redhat.com \
    --cc=mdroth@linux.vnet.ibm.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefano.stabellini@eu.citrix.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).