From: "Daniel P. Berrangé" <berrange@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
"Mauro Matteo Cascella" <mcascell@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Thomas Huth" <thuth@redhat.com>
Subject: RFC: GitLab issues for security disclosures
Date: Tue, 19 May 2026 15:26:51 +0100 [thread overview]
Message-ID: <agxzKzzDOJm1EU_v@redhat.com> (raw)
The qemu-security mailing list was created several years back now and
traditionally saw 1-2 disclosures a month at worst. This was manageable.
Since approx March 1st, the new normal is to see as many as 20 disclosures
in one single day, more than 200 in total now. This is unsustainable.
I was thinking we needed more people on qemu-security to triage, but IMHO
this won't really fix the problem.
This needs an issue tracker to cope with & email is not an issue tracker.
We faked an issue tracker with a shared spreadsheet to prevent us drowning
these past few months, but this is still not sustainable & probably won't
ever be.
The traditional POV was that security disclosures must be dealt with on
a strict "need to know" basis until there was a concious decision to make
them public. Typically that happened when a patch was published by the
maintainer on qemu-devel. Rarely have we applied an embargo period after
a maintainer had a patch ready to post, as most bugs were not severe
enough. Also in typical usage Libvirt has SELinux/AppArmour to mitigate
impact of a guest ecsape into QEMU.
QEMU is not alone in this chaos, to quote Linus
https://lkml.org/lkml/2026/5/17/896
[quote]
the continued flood of AI reports has basically made the security list
almost entirely unmanageable, with enormous duplication due to
different people finding the same things with the same tools. People
spend all their time just forwarding things to the right people or
saying "that was already fixed a week/month ago" and pointing to the
public discussion.
[/quote]
They have explicitly changed their policy for disclosure now:
https://github.com/torvalds/linux/commit/a03ef333fbd6cd861c8457c3d055ee3643a9baad
[quote]
If you resorted to AI assistance to identify a bug, you must treat
it as public. While you may have valid reasons to believe it is not,
the security team's experience shows that bugs discovered this way
systematically surface simultaneously across multiple researchers,
often on the same day
[/quote]
IME for qemu-security we've definitely seen the same bugs reported by
different people, within days of each other, a couple of times even
the same day. Dupes are not the majority - QEMU has so much low
hanging fruit - but they're a sizeable chunk.
Because we don't have a good automated way to publish disclosures
from qemu-security, we don't provide contributors any way to check
for duplicates before submission. The burden of checking for dupes
thus falls on the qemu-security triage people, or the maintainers
we forward issues to.
For disclosures in the non-virtualization use case, we ask the
reporter to file a gitlab issue or send a patch. They almost never
do this. We're lucky to have any reply to emails at all.
IMHO we need to move to an issue tracker. GitLab was originally
discounted in favour of qemu-security list since "Confidential"
issues cannot have visibility managed in a fine grained way.
They are visible to everyone with "Reporter" role or higher,
which is 70+ people for QEMU.
If we accept the kernel's view that AI discovered issues should be
considered public immediately because of the high chance of parallel
"discovery", then GitLab's limitations don't seem to bad.
It is also of note that we've had some people ignoring qemu-security
policy and directly filing public gitlab issues for stuff discovered
via AI/LLM agents already. Those are not getting attention for CVE
assignment, should it be needed which and can't be cross-referenced
by general maintaniers to stuff we have received via qemu-security.
We have some options IMHO
1. Move all security disclosure to GitLab confidential issues
no disclosures via email
2. Move AI/fuzzer assisted disclosures to GitLab confidential
issues, keep human discovered issues on qemu-security list
3. Move AI/fuzzer assisted disclosures to GitLab public
issues, keep human discovered issues on qemu-security list
In all three cases, if a GitLab issue is determined to be security
relevant, any maintainer could send a request to qemu-security list
to get Red Hat product security to allocate a CVE.
Out of those I'd probably lean towards (2) which is slightly
more restrictive than the kernel new policy but not by much.
Some key benefits of using GitLab for security disclosures
* We can trivially make disclosures public if we classify them
as a non-virtualization use case, or when the fix is ready.
* We can formally track the lifecycle of disclosures through to
the final fix, for both virtualization & non-virtualization
use cases. The only difference will be that the former can
request a CVE assignment
* We can do reports/queries of outstanding issues
* We can more easily use automation to process issues
* Maintainers can see bugs without waiting for someone to triage
and forward it on their way.
* The small number of security bug triage people are no a bottle
neck anymore
Some downsides/implications
* Every disclosure in a confidential issue will be visible to every
maintainer who has joined the qemu-project repo on GitLab. IOW
that is treating every maintainer as equally trusted.
We do have qemu-security though we could be mailed if someone
considered their disclosure to be severely impactful but the triage
team can't make that decision.
* We must NOT grant membership to qemu-project at a Reporter level
for anyone whom is not an active maintainer. They must be limited
to the "Guest" role at most.
* No one is formally responsible for GitLab issue triage. We have
had Thomas do it in the past periodically with script assistance.
We have Alex doing some of it now with bot assistance. The danger
is security disclosures get ignored as "somebody else's problem"
no one has accountability.
With regards,
Daniel
--
|: https://berrange.com ~~ https://hachyderm.io/@berrange :|
|: https://libvirt.org ~~ https://entangle-photo.org :|
|: https://pixelfed.art/berrange ~~ https://fstop138.berrange.com :|
next reply other threads:[~2026-05-19 14:31 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-19 14:26 Daniel P. Berrangé [this message]
2026-05-19 15:18 ` RFC: GitLab issues for security disclosures Michael S. Tsirkin
2026-05-19 16:11 ` Daniel P. Berrangé
2026-05-19 16:19 ` Michael S. Tsirkin
2026-05-20 10:25 ` Mauro Matteo Cascella
2026-05-20 15:01 ` Pierrick Bouvier
2026-05-20 15:09 ` Daniel P. Berrangé
2026-05-20 17:33 ` Pierrick Bouvier
2026-05-20 17:39 ` Daniel P. Berrangé
2026-05-20 18:28 ` Warner Losh
2026-05-20 23:14 ` Michael S. Tsirkin
2026-05-21 9:06 ` Daniel P. Berrangé
2026-05-21 12:45 ` Mauro Matteo Cascella
2026-05-21 13:06 ` Daniel P. Berrangé
2026-05-21 13:17 ` Mauro Matteo Cascella
2026-05-21 11:09 ` Alex Bennée
2026-05-21 11:21 ` Daniel P. Berrangé
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=agxzKzzDOJm1EU_v@redhat.com \
--to=berrange@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=mcascell@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.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.