CVE-2026-20253 is a critical missing-authentication vulnerability in Splunk Enterprise affecting versions 10.0.0 through 10.0.6 and 10.2.0 through 10.2.3. The flaw resides in the PostgreSQL sidecar service request handling exposed through Splunk’s management and web request pathing, where recovery-related endpoints do not enforce authentication before invoking file-related PostgreSQL backup and restore operations. Available technical reporting indicates the vulnerable logic permits unauthenticated invocation of backup and restore functionality and insufficiently constrains certain user-supplied parameters, enabling arbitrary file creation or truncation on the underlying host. Public technical analysis further describes an exploitation chain in which attacker-controlled PostgreSQL backup or restore content can be used to progress from the initial file-operation primitive to arbitrary file write and, under favorable conditions, remote code execution in the Splunk application context. Splunk Enterprise 9.4 and earlier are not affected.
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
If you can’t patch tonight, do this now.
Patch, then assume compromise.
2 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos (4 hidden).
This repository is a full self-contained training lab that models Splunk Enterprise 10.2.3 vulnerable to CVE-2026-20253 rather than a minimal single-file exploit. The vulnerable path is implemented in code: nginx on port 8080 fronts a static web SPA and the splunkd API; splunkd mounts a pre-auth relay at /:locale/splunkd/__raw that forwards arbitrary /v1/postgres/* requests to an internal pg-sidecar service on port 5435 before session authentication. The pg-sidecar code in services/pg-sidecar/src/index.js contains the core flaw: recovery endpoints only check for the presence of a Basic Authorization header via looksAuthed(), never validating credentials. The backup endpoint accepts attacker-controlled database, host, port, backupFile, and optional content fields; it concatenates database/host/port directly into a libpq conninfo string and passes backupFile raw to pg_dump or psql, enabling connection-string injection and arbitrary file write/create/truncate. The restore endpoint executes attacker-supplied SQL files with psql using a superuser-style connection, enabling server-side file writes such as overwriting executable app scripts. The scheduler service repeatedly executes apps/splunk_secure_gateway/bin/ssg_enable_modular_input.py as the splunk user, making that file the RCE sink. The included PoCs (scripts/poc.py and scripts/poc.sh) automate the chain: fingerprint the pre-auth relay, send blank Basic auth (Basic Og==), abuse recovery/backup for file write and/or credential theft from .pgpass, optionally stage SQL in /opt/splunk/var/run/backups/stage.sql, invoke recovery/restore to overwrite the scheduled Python script, wait for scheduler execution, then retrieve emitted secrets/flags through the authenticated search API. The repository also includes a patched/ tree showing the fixed 10.2.4 behavior: real Basic auth validation, backup path confinement, database validation, restricted restore role, narrowed relay behavior, and network isolation. Overall, this is a valid operational PoC/training exploit environment demonstrating unauthenticated web-to-internal-service pivoting, arbitrary file write, credential disclosure, and RCE as splunk.
Repository is a small standalone Python PoC for CVE-2026-20253 against Splunk Enterprise. It contains one primary code file (splunk_cve_2026_20253.py), dependency metadata (requirements.txt), and several Spanish-language documentation files covering installation, execution examples, detection/mitigation, contribution guidance, and security policy. The exploit script uses requests and disables TLS verification warnings. Its core logic defines a SplunkExploit class with methods to: (1) test unauthenticated access to the Splunk recovery backup endpoint using a POST request with JSON and an empty Basic Authorization header; (2) abuse the backup endpoint to create or truncate arbitrary files by supplying attacker-controlled backupFile paths; and (3) attempt RCE by preparing a Python payload that runs a shell command via /bin/sh -c and writes output to a chosen file. The script references the full attack chain involving PostgreSQL backup/restore primitives and a controlled PostgreSQL server, but the included code is explicitly described as a simplified demonstration that overwrites a Splunk Secure Gateway Python script path to achieve execution. In main(), it supports vulnerability checking, cleanup, arbitrary file creation as a proof step, command execution, and optional retrieval of output from a web-accessible Splunk static directory. Overall, this is a real exploit PoC rather than a detector-only script; however, based on the provided content it appears partially simplified/truncated relative to a full end-to-end weaponized chain, so OPERATIONAL is the best fit.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
221 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.
A pre-auth remote code execution vulnerability affecting Splunk Enterprise that was present in the staged toolkit.
Critical pre-auth vulnerability in Splunk Enterprise's PostgreSQL sidecar service endpoint caused by missing authentication for a critical function (CWE-306). It allows arbitrary file creation/truncation and can be chained to remote code execution.
A critical Splunk Enterprise vulnerability allowing unauthenticated access to a PostgreSQL sidecar service, enabling arbitrary file creation or truncation.
A missing authentication vulnerability affecting Splunk Enterprise.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.