Skip to content

Back to the catalog

blog.cykor.krwriteup

How I Found Open-Source 0-days with an LLM Multi-Agent Workflow

A student researcher describes an LLM multi-agent pipeline (GLM-4.7 for candidate finding, GLM-5 for semi-triage, Codex 5.3 for final triage) built to hunt logic and authorization bugs in large open-source codebases like Grafana, Nextcloud, Matomo, Airflow and protobuf. The post details the prompt-engineering fixes (forcing the model to explicitly reason about attacker conditions, server conditions, and CIA-triad impact) that cut false positives, and lists the resulting real vulnerabilities, including CVE-2026-21721, a CVSS 8.1 privilege escalation in Grafana's dashboard permissions API caused by a missing UID scope check in ac.EvalPermission.

TL;DR A GLM-4.7/GLM-5/Codex-5.3 multi-agent triage pipeline found real CVEs (incl. a Grafana privilege-escalation bug) in Nextcloud, Matomo, Airflow and protobuf.
Document

What it is

A methodology write-up by Hyunseo Shin (CyKor, Korea University) on a cost-tiered, multi-model LLM agent pipeline used to hunt 0-days in large web open-source codebases (Nextcloud, Matomo, Grafana). The design principle is separating Vulnerability Discovery from False Positive Verification and routing each stage to the cheapest model that can do that stage's job — inspired by Theori's RoboDuck AIxCC entry, whose fuzzing could exceed $1,000/hour.

How it works

Three stages, deliberately mismatched by cost:

  • Finding — GLM-4.7: the cheap workhorse that generates vulnerability candidates. Prompt variations were tuned at this stage.
  • Semi-Triage — GLM-5: filters obvious false positives.
  • Triage — Codex 5.3: final verification of survivors.

Verified findings trigger a Discord alert and a Notion report.

The key economic decision: GLM-5 scores ~20% better than GLM-4.7 but burns 3× the tokens. Since web bugs (IDOR-style logic flaws) need frequent shallow checks more than deep reasoning, the author chose higher invocation frequency of the cheap model over a marginally smarter one.

The prompt-engineering fix rests on a claim that "LLMs are fundamentally lazy" — vague instructions like "consider the attacker's permissions" get silently skipped. Instead, verification is forced to fill three explicit fields:

  • Attacker Condition: network position (internal/external), privileges required (Unauth/Admin/Guest), specific injected inputs.
  • Server Condition: required plugins, default configs, OS/environment triggers.
  • Security Impact: described against the CIA triad (exfiltration / DoS / info disclosure), not just labeled "dangerous."

What to do

If replicating this: tier your models by stage rather than using a top model throughout, and replace "consider X" prompts with mandatory structured fields the model must populate. Treat automated verification as a filter, not proof.

Caveats

  • Human-in-the-loop is non-negotiable here. The author states false positives survive even Codex triage, so every report is manually reproduced (Docker-based local spin-up) before submission; the final report is written strictly from manual results.
  • Scope was chosen by exclusion, not universality. Memory-corruption automation was abandoned because programs like Google's OSS VRP reject simple crashes (they demand exploit chaining AI struggles with under safety guidelines). Black-box server bug bounties were avoided over the risk of AI crashing live targets with aggressive payloads — the author explicitly says he lacks the safe-scanning know-how of firms like Theori/Xint or XBOW.
  • Model names and version numbers (GLM-4.7, GLM-5, Codex 5.3) and the 20%/3× figures are the author's own; no benchmark links are reproduced in the text.

Organisations named here

  • AIxCC
  • Best of the Best

CVEs named here

  • CVE-2026-21721
  • CVE-2025-66514
  • CVE-2025-66558
  • CVE-2026-0994
  • CVE-2026-22922

Technologies named here

  • GLM-4.7
  • Grafana
  • GLM-5
  • Nextcloud Mail
  • Codex 5.3
  • Nextcloud twofactor_webauthn
  • protobuf
  • Discord
  • Notion
  • Airflow
  • Nextcloud Contacts
  • Docker
  • Matomo
  • RoboDuck
  • Matomo Official plugins
  • Owncloud
  • Discourse
  • GLM
  • Codex
  • Nextcloud

Techniques named here

  • Multi-agent LLM vulnerability discovery workflow
  • IDOR detection
  • Privilege Escalation via missing scope validation
  • Prompt engineering for false-positive reduction
  • Security policy/documentation cross-referencing
  • IDOR