Skip to content

Back to the catalog

blogs.gnome.orgarticle

The Era of Software Quality, or the Era of Ostriches?

GNOME security maintainer Michael Catanzaro details how AI-generated vulnerability reports have transformed GNOME's security workload: CVE counts for GNOME and WebKitGTK rose an order of magnitude, driven largely by AI scanning. He breaks down the now-closed YesWeHack-hosted GNOME Bug Bounty Program (sponsored by Germany's Sovereign Tech Agency) which paid €183,900 for 71 vulnerabilities across libsoup, GLib, and glib-networking, a Red Hat-commissioned AISLE Research AI scan of GLib that found 118 issues with a ~40% false-positive rate (mostly gobject-introspection typelib misclassifications), and a Codean Labs human security audit that found critical Flatpak and xdg-desktop-portal sandbox escapes AI likely would have missed. He argues maintainers should permit AI-generated vulnerability reports in their contribution policies, warns about integer-overflow bugs and Cargo supply-chain risk in Rust, and offers a draft AI-usage policy for GNOME contributors.

TL;DR GNOME's security lead breaks down a year of AI-driven CVE surges, a €183,900 bug bounty program, a 40%-false-positive AI scan of GLib, and human-found Flatpak sandbox escapes, arguing projects must accept AI-generated vulnerability reports.
Document

What it is

Michael Catanzaro's blog post lays out a specific, actionable AI-usage policy proposal and concrete technical remediation for the vulnerability surge the existing summary describes. The core proposal: GNOME maintainers must rewrite AI contribution policies to explicitly permit AI-generated vulnerability reports, and any project that keeps banning them should be ejected as a GNOME dependency ("developed someplace other than GNOME GitLab").

How it works

The bug bounty's libsoup/GLib results point to a dominant root cause: integer overflow bugs leading to buffer overflow, which Catanzaro now considers the top risk category. His mitigation is a compiler-flag fix, not a code audit: -Wconversion/-Wint-conversion and -Wsign-compare. He notes some GNOME projects already use -Wsign-compare, but few or none use -Wconversion/-Wint-conversion.

On the AISLE/Red Hat GLib scan, the 40% false-positive rate traces to one specific misunderstanding: AISLE flagged 46 gobject-introspection typelib bugs as vulnerabilities, but maintainers agree a typelib must inherently be fully trusted (it's effectively a calling convention), so a malicious typelib causes harm regardless of bugs — these are real quality bugs but not security vulnerabilities.

What to do

  • Rewrite AI contribution policies to permit AI-generated vulnerability reports (do not require reporters to rewrite reports in human language — it doesn't scale).
  • Add -Wconversion, -Wint-conversion, and -Wsign-compare to compiler flags to catch integer overflow/sign-comparison bugs before they become CVEs.
  • If restarting a bug bounty program, scope it only to projects that already run their own AI scans, and pay only for working exploits rather than every reported vulnerability.
  • Do not use AI to write code comments, commit messages, or issue/MR comments posted as if human-written — his draft policy bans all three even though he grants AI may write better commit messages than humans.
  • Avoid Rust for new GNOME code despite its memory-safety benefits: Cargo's dependency-download model is judged to carry supply-chain risk that "probably outweighs" the memory-safety gain.

Caveats

The 118-finding GLib count from AISLE is explicitly flagged as "not entirely trustworthy" — un-deduplicated and still being triaged at time of writing. Codean Labs' human audit found critical Flatpak/xdg-desktop-portal sandbox escapes that Catanzaro says AI likely would have missed, so the piece argues against AI-only scanning despite its endorsement of AI reports generally.

Organisations named here

  • Daniel Stenberg
  • GNOME Bug Bounty Program
  • request smuggling
  • Sovereign Tech Agency

Technologies named here

  • AI vulnerability scanning
  • GLib
  • YesWeHack
  • libsoup
  • glib-networking
  • AISLE Research
  • Codean Labs
  • gobject-introspection
  • -Wconversion
  • WebKitGTK
  • Skia
  • -Wint-conversion
  • -Wsign-compare
  • ANGLE
  • Flatpak
  • Cargo
  • xdg-desktop-portal
  • curl
  • Rust
  • GNOME

Techniques named here

  • Integer overflow leading to buffer overflow
  • HTTP request smuggling
  • Denial of service
  • Flatpak sandbox escape
  • AI-assisted exploit generation
  • Supply chain compromise via package managers
  • Malicious typelib / untrusted calling convention abuse
  • Integer Overflow