CodeQL 2.27.2 liest std::regex, baut Gos CFG neu und streicht Traced Builds auf macOS 27
GitHub hat CodeQL 2.27.2 am 9. Oktober veröffentlicht. Auf github.com kommt die Version für Code-Scanning-Nutzer automatisch; zwei Teile verlangen aber eine Entscheidung von denen, die eine Pipeline oder ein eigenes Query-Paket pflegen.
Mehr Abdeckung. CodeQL parst jetzt reguläre Ausdrücke in der ECMAScript-Grammatik von C++-std::regex; Regex-Prüfungen können damit in C++-Muster hineinsehen. Für C kommen Senken für SQL-Injection in der Comdb2-C-API sowie Flusszusammenfassungen für Bloomberg-BDE-Codecs und Byte-Stream-Deserializer hinzu. Go kennt nun den Importpfad github.com/coder/websocket neben dem älteren nhooyr.io/websocket. Der Rust-Extraktor versteht AnyAttr und DocComment, der Datenfluss durch async-Blöcke mit await wird genauer, und es gibt Zusammenfassungen für native-tls, async-native-tls und tokio-native-tls. In JavaScript werden die Direktiven use workflow und use step des Workflow SDK erkannt, Hapi-Routen über eigene Registrierungshelfer werden verfolgt. Für C# akzeptiert die Clickjacking-Abfrage ASP.NET-Core-Header und CSP frame-ancestors; die XSS-Abfrage meldet Razor-Tag-Helper-Werte mit WriteLiteral nicht mehr. Die Standard-Suite umfasst laut GitHub 498 Sicherheitsabfragen zu 170 CWEs, die erweiterte 131 Abfragen und 32 CWEs mehr.
Entscheidung eins: eigene Go-Abfragen. Der Kontrollflussgraph für Go nutzt jetzt die gemeinsame CFG-Bibliothek von CodeQL. Der Changelog nennt die Folgen offen: neue Knoten für Zuweisungen, Parameter, Ergebnisse, range-Anweisungen und defer-Aufrufe, unerreichbare Knoten fallen weg, Knoten, Kanten, Positionen, Textdarstellung und Grenzen von Basisblöcken ändern sich. BasicBlocks::Cfg entfällt, IfStmt.getCond ist zugunsten von getCondition veraltet, IfStmt.getThen und LoopStmt.getBody liefern nun Stmt. Wer eigene Go-Abfragen über den CFG betreibt, sollte deren Tests mit 2.27.2 laufen lassen, bevor er den Ergebnissen traut — die Standard-Suiten pflegt GitHub, das eigene Paket nicht.

Entscheidung zwei: macOS-Runner. Mit macOS 27 und Xcode 27 liefert Apple keine Multi-Architektur-Binärdateien für x86-64/arm64 mehr, und genau die braucht die Traced-Analyse von CodeQL. Deshalb werden Autobuild und manueller Build-Modus für kompilierte Sprachen auf macOS 27 mit jedem Xcode nicht unterstützt, ebenso auf macOS 26 mit gewähltem Xcode 27. GitHub rät, für diese Modi bei macOS 26 mit Xcode 26 zu bleiben, und arbeitet an build-mode: none für macOS als Ausweg. Wer im Workflow macos-latest verwendet, sollte prüfen, worauf dieses Label gerade zeigt.
Kleinere Änderungen an der CLI: Die Abfrage actions/unpinned-tag kann Eigentümer per !-Präfix aus der Vertrauensliste nehmen (etwa !github), ungültige qlpack:- und from:-Werte in Suiten liefern Fehlermeldungen statt Abstürzen, zu große Ganzzahlen in YAML-Datenerweiterungen werden abgelehnt statt abgeschnitten, und Meldungen auf stderr beginnen mit ERROR: oder WARNING: — Logs und SARIF bleiben gleich.
GitHub Enterprise Server bekommt 2.27.2 mit einem späteren Release; ältere Installationen können CodeQL manuell aktualisieren.
Quelle: GitHub Changelog, CodeQL 2.27.2, 9. Oktober 2026 — https://github.blog/changelog/2026-10-09-codeql-2-27-2-improves-c-go-rust-and-javascript-analysis