oapi-codegen: Code-Injection über nicht-literale Enum-Werte in OpenAPI-Spezifikationen
Zusammenfassung
oapi-codegen in den Versionen 2.0.0 bis 2.8.0 erlaubt Code-Injection über nicht-literale Enum-Einträge in Integer-, Number- oder Boolean-Schemas eines OpenAPI-Dokuments. Ein Angreifer, der das OpenAPI-Dokument kontrolliert, kann einen Enum-Eintrag so gestalten, dass der const-Block im Code-Template geschlossen und eine Funktion func init() eingefügt wird. Der eingeschleuste Code wird ausgeführt, wenn das generierte Paket gebaut und importiert wird, typischerweise auf Entwicklerrechnern oder in CI-Runnern. Die NVD-Bewertung (CVSS 4.0 8.7) setzt voraus, dass ein Benutzer das manipulierte Dokument verarbeiten muss (UI:P).
Betroffen
- oapi-codegen 2.0.0 bis einschliesslich 2.8.0 (also alle Versionen ab 2.0.0 vor 2.8.1)
- Pakete in Downstream-Distributionen können noch ältere Versionen enthalten (z. B. Nixpkgs release-26.05 mit 2.5.1, was im betroffenen Bereich liegt)
Behoben in
- Version 2.8.1 (Herstellerhinweis GHSA-g2vv-83pm-v2hc)
Umgehung
- Keine vom Hersteller veröffentlichte Workaround-Massnahme für diese CVE. Unbekannt.
- Code nur aus OpenAPI-Spezifikationen generieren, die Sie selbst kontrollieren oder geprüft haben.
- Remote-Spezifikationen lokal herunterladen und vor der Codegenerierung validieren. Dies reduziert das Risiko, ist aber keine Behebung.
- Generator-Version fixieren und Codegenerierung in CI-Pipelines mit Zugriff auf Secrets nicht mit nicht vertrauenswürdigen Eingaben ausführen.
Ausnutzung
- Kein öffentlicher Exploit bestätigt. VulDB gibt an, dass kein Exploit verfügbar ist.
- Keine Hinweise auf Ausnutzung in freier Wildbahn gefunden.
- Nicht bestätigt: Eine OffSeq-Seite erwähnt Metasploit- und nuclei-Inhalte, die aber nicht eindeutig mit dieser CVE verknüpft sind.
- CISA SSVC: Ausnutzung keine, automatisierbar nein, technische Auswirkung total.
Unsere Empfehlung
- oapi-codegen auf Version 2.8.1 oder neuer aktualisieren, einschliesslich CI-Images und Entwicklungs-Toolchains.
- Vor dem Upgrade prüfen, dass generierter Code und die Version von github.com/oapi-codegen/runtime zur neuen Release kompatibel sind.
- Prüfen, welche OpenAPI-Spezifikationen verarbeitet werden, insbesondere Drittanbieter- oder remote geladene, und diese vor der Codegenerierung validieren.
- Distributionspakete auf ältere Versionen prüfen und separat aktualisieren.
- Priorität: mittel für Teams, die Code aus externen Spezifikationen generieren, niedrig für Teams, die nur eigene Spezifikationen verwenden.
Öffentliche Exploits
In PoC-in-GitHub, Metasploit und Exploit-DB ist für diese CVE nichts verzeichnet.
Quellen der Recherche
- GitHub Security Advisory GHSA-g2vv-83pm-v2hc github.com
- oapi-codegen v2.8.1 release github.com
- Fix commit 068f1bc github.com
- Patch pull request #2626 github.com
- VulnCheck advisory www.vulncheck.com
- Nixpkgs issue on release-26.05 lag github.com
- VulDB entry vuldb.com
Recherchiert und auf Deutsch und Englisch aufbereitet von einer KI (Claude von Anthropic) auf Basis von NVD, CISA, EPSS und den genannten Quellen. Massgebend sind die Angaben des Herstellers. Recherche vom 31.10.2026 23:42.
Referenzen der NVD (8)
- https://github.com/oapi-codegen/oapi-codegen/blob/v2.0.0/pkg/codegen/templates/constants.tmpl#L12
- https://github.com/oapi-codegen/oapi-codegen/blob/v2.8.0/pkg/codegen/templates/constants.tmpl#L16
- https://github.com/oapi-codegen/oapi-codegen/commit/068f1bcd16e4724c72d78d6774008a877b8297b1
- https://github.com/oapi-codegen/oapi-codegen/pull/2626
- https://github.com/oapi-codegen/oapi-codegen/releases/tag/v2.8.1
- https://github.com/oapi-codegen/oapi-codegen/security/advisories/GHSA-g2vv-83pm-v2hc
- https://github.com/oapi-codegen/oapi-codegen/security/advisories/GHSA-xrqw-w576-xgj2
- https://www.vulncheck.com/advisories/oapi-codegen-2.0.0-before-2.8.1-code-injection-via-non-string-enum-values
Quellen
Der Tracker verbindet offizielle, frei nutzbare Datenquellen – laufend aktualisiert:
- NVD (NIST) – CVE, Bewertung (CVSS), betroffene Produkte
- CISA KEV – von der CISA bestätigt aktiv ausgenutzte Lücken
- CISA Vulnrichment – Einschätzung der CISA (SSVC) im offiziellen CVE-Eintrag
- FIRST EPSS – Wahrscheinlichkeit einer Ausnutzung
- Microsoft MSRC – Patch Tuesday: Lücken, Schweregrad, Updates
- PoC-in-GitHub – öffentliche Proof-of-Concept-Repositories
- Metasploit (Rapid7) – Module des Metasploit Framework
- Exploit-DB (OffSec) – Archiv öffentlicher Exploits (nur Verweise)
- Patch-Tage: offizielle Seiten der Hersteller (je Hersteller verlinkt) (Patch-Tage der Hersteller)
Dieses Angebot nutzt Daten der NVD-API, ist aber von der NVD weder unterstützt noch zertifiziert. EPSS-Daten © FIRST.org.
Betroffen? Wir helfen.
Wir prüfen, ob Ihre Systeme betroffen sind, spielen Updates ein und schliessen die Lücke – auf Wunsch auch laufend mit dem System Health Checker.
