AI Security Summit: Join Figma, Perplexity & Wiz. [Register]

CVE-2026-61667
Python vulnerability analysis and mitigation

Overview

CVE-2026-61667 is a critical remote code execution (RCE) vulnerability in the DIRAC distributed computing framework's FileCatalog DatasetManager component, exploitable via a chained SQL injection and eval injection attack. It affects DIRAC versions >= 6 and < 8.0.79, >= 8.1.0a1 and < 9.0.22, and >= 9.1.0 and < 9.1.10. The vulnerability was published on July 13, 2026, and patched versions were released the same day. It carries a CVSS v3.1 base score of 9.9 (Critical) (GitHub Advisory, DIRAC Advisory).

Technical details

The root cause is a dual weakness: CWE-89 (SQL Injection) and CWE-95 (Eval Injection). In FileCatalogHandler.py, the export_checkDataset function passes the user-supplied datasets argument without sanitization to DatasetManager.__checkDataset, which constructs a SQL query using an unescaped Python f-string: req += f" WHERE DatasetName='{datasetName}'". Because the query result is immediately passed to Python's eval() function (metaQuery = eval(row[0])), an attacker who controls the SQL query result via injection can cause arbitrary Python code to be evaluated server-side. The attack requires only low-privilege authenticated access and no user interaction, and similar vulnerable patterns exist in other functions within the same DatasetManager.py file (GitHub Advisory, DIRAC Advisory).

Impact

Successful exploitation allows any authenticated DIRAC user to execute arbitrary Python code on the server hosting the FileCatalog service, resulting in full system compromise. An attacker can read the local dirac.cfg configuration file to obtain database credentials, export all stored proxies and tokens, and access sensitive data across the DIRAC system. If local logging is in use, the attacker can also delete log entries to cover their tracks, eliminating forensic evidence of the intrusion (DIRAC Advisory).

Exploitability

As of the advisory publication date, there is no public proof-of-concept exploit and no evidence of in-the-wild exploitation (GitHub Advisory). The vulnerability is not currently listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. No threat actor attribution has been reported. The low attack complexity and minimal privilege requirement (any authenticated user) make this a high-priority patching target despite the absence of known active exploitation.

Exploitation steps

  1. Authenticate: Obtain valid DIRAC credentials — any low-privilege authenticated account is sufficient to call the export_checkDataset service endpoint.
  2. Identify the target endpoint: Locate the DIRAC FileCatalog service exposing export_checkDataset (typically accessible via the DIRAC RPC interface).
  3. Craft a malicious dataset name: Construct a datasetName parameter containing SQL injection syntax designed to manipulate the SELECT MetaQuery, DatasetHash, TotalSize, NumberOfFiles FROM FC_MetaDatasets WHERE DatasetName='...' query so that the returned MetaQuery column value contains arbitrary Python code (e.g., __import__('os').system('id')).
  4. Trigger the injection: Submit the crafted datasets argument to the export_checkDataset RPC call. The unescaped f-string query is executed against the database, returning the attacker-controlled value.
  5. Achieve code execution: The returned value is passed directly to eval() in DatasetManager.py (line 409), executing the injected Python code on the server with the privileges of the DIRAC service process.
  6. Post-exploitation: Use the code execution to read dirac.cfg for database passwords, export stored proxies/tokens, establish persistence, or delete local logs to cover tracks (DIRAC Advisory).

Indicators of compromise

  • Network: Unusual or malformed RPC calls to the DIRAC FileCatalog service's export_checkDataset endpoint with anomalous datasetName parameter values containing SQL metacharacters (e.g., single quotes, UNION SELECT, --).
  • Logs: DIRAC service logs showing unexpected SQL errors or anomalous query patterns in FC_MetaDatasets table access; missing or truncated log entries that may indicate log tampering by an attacker.
  • File System: Unexpected access or modification of dirac.cfg; new files written to the server by the DIRAC service process; unauthorized export of proxy or token files.
  • Process: Unusual child processes spawned by the DIRAC FileCatalog service process (e.g., shell commands, network utilities like curl, wget, or nc); unexpected outbound network connections from the DIRAC server (DIRAC Advisory).

Mitigation and workarounds

Upgrade DIRAC to one of the patched versions: 8.0.79, 9.0.22, or 9.1.10, available on PyPI. As interim mitigations, restrict access to the FileCatalog checkDataset function to only highly trusted authenticated users, and enforce the principle of least privilege on database connection permissions to limit what an injected query can return or modify. Review other functions in DatasetManager.py for similar f-string/eval patterns that may present additional attack surface (GitHub Advisory, DIRAC Advisory).

Community reactions

The vulnerability was reported by security researcher sfayer and published by DIRAC maintainer fstagni on July 13, 2026. No significant broader media coverage or notable public researcher commentary beyond the GitHub advisory has been identified at this time (GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related Python vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-61667CRITICAL9.9
  • Python logoPython
  • dirac
NoYesSep 15, 2026
CVE-2026-45579CRITICAL9.9
  • Python logoPython
  • dirac
NoYesSep 15, 2026
CVE-2026-61668HIGH8.1
  • Python logoPython
  • dirac
NoYesSep 15, 2026
CVE-2026-55863MEDIUM5.3
  • Python logoPython
  • motioneye
NoYesSep 15, 2026
CVE-2026-53954MEDIUM4.3
  • Python logoPython
  • bugsink
NoYesSep 15, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management