Skip to content
OpenAdvisories
High · 7.7 Public exploit CVE-2026-31891 EUVD-2026-12751GHSA-7x5c-vfhj-9628

Cockpit CMS has SQL Injection in MongoLite Aggregation Optimizer via toJsonExtractRaw()

Published Mar 18, 2026 · Updated Mar 18, 2026 · Assigned by GitHub_M

Description

Cockpit is a headless content management system. Any Cockpit CMS instance running version 2.13.4 or earlier with API access enabled is potentially affected by a a SQL Injection vulnerability in the MongoLite Aggregation Optimizer. Any deployment where the `/api/content/aggregate/{model}` endpoint is publicly accessible or reachable by untrusted users may be vulnerable, and attackers in possession of a valid read-only API key (the lowest privilege level) can exploit this vulnerability — no admin access is required. An attacker can inject arbitrary SQL via unsanitized field names in aggregation queries, bypass the `_state=1` published-content filter to access unpublished or restricted content, and extract unauthorized data from the underlying SQLite content database. This vulnerability has been patched in version 2.13.5. The fix applies the same field-name sanitization introduced in v2.13.3 for `toJsonPath()` to the `toJsonExtractRaw()` method in `lib/MongoLite/Aggregation/Optimizer.php`, closing the injection vector in the Aggregation Optimizer.

Affected products

VendorProductAffectedFixed
Cockpit-HQ Cockpit < 2.13.5 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Ubuntu 26.10 cockpit No fix yet —
Ubuntu 25.10 cockpit No fix yet —
Ubuntu 20.04 LTS cockpit No fix yet —
Ubuntu 18.04 LTS cockpit No fix yet —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

  • ffasterss/CVE-2026-31891 ★ 1 · Mar 19, 2026

    SQL Injection in MongoLite Aggregation Optimizer via toJsonExtractRaw()

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist cockpit-hq/cockpit < 2.13.5 2.13.5 GHSA-7x5c-vfhj-9628

References