Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privilege credentials
-
DeliveryAuthenticate to COSMOS web interface
-
ExploitCraft malicious HTTP request to get_tlm_values endpoint
-
ExecutionInject SQL payload in start_time parameter
-
PersistExecute arbitrary SQL in QuestDB
-
ImpactExfiltrate or delete telemetry data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires valid authentication credentials with 'tlm' permission, which is granted by default to Admin, Operator, Viewer, and Runner roles in standard COSMOS deployments. No additional configuration vulnerabilities or non-default settings are required-the flaw exists in default installations of affected versions. Attack is remotely executable (AV:N) against any network-accessible COSMOS instance with standard role-based access control. The vulnerable get_tlm_values endpoint is a core telemetry retrieval function, not an optional feature, meaning all deployments using QuestDB for time-series storage are exposed. Exploitation does NOT require: administrative privileges, physical access, social engineering, or chaining with other vulnerabilities. Limiting factor: attacker must first obtain valid user credentials through phishing, credential stuffing, or insider access. However, low-privilege 'Viewer' accounts intended for dashboard-only access are sufficient, lowering the barrier compared to vulnerabilities requiring administrative roles. |
| Impact | CVSS 9.6 (Critical) with network vector, low complexity, and changed scope accurately reflects the technical severity, but real-world risk requires contextualization. The vulnerability requires low-privilege authentication (PR:L) yet grants disproportionate impact due to COSMOS's permissive default role model-any user with read-only telemetry access can delete mission-critical historical data. Attack complexity is genuinely low (AC:L)-the GitHub advisory includes screenshots of working payloads requiring no specialized tools beyond HTTP clients. Changed scope (S:C) is justified as the vulnerability crosses trust boundaries from application-layer permissions into database-layer operations. However, EPSS data is not provided, and the vulnerability is NOT in CISA KEV, suggesting exploitation remains theoretical or undisclosed. The primary impact is availability (deleting telemetry archives for aerospace/industrial control systems) and confidentiality (exfiltrating sensitive operational data), with integrity risk limited to historical records rather than real-time command streams. Organizations using COSMOS in air-gapped or authentication-gated deployments face lower risk than internet-exposed instances. Critical risk factors: (1) proof-of-concept publicly available since GitHub advisory publication, (2) affects operational technology environments where data integrity is paramount, (3) minimal attacker skill required due to classic SQL injection pattern. Mitigating factors: (1) authentication required, (2) no evidence of active exploitation, (3) patch available in release candidate. Priority is HIGH for production COSMOS deployments managing critical telemetry, MEDIUM for development/testing environments with network exposure. |
| Exploit ScenarioDerived | An aerospace engineer with Viewer role credentials (intended for read-only telemetry monitoring) authenticates to a COSMOS instance managing satellite ground station data. They craft an HTTP POST request to the get_tlm_values RPC endpoint, injecting the payload 1' OR 1=1; DROP TABLE telemetry_archive; -- into the start_time parameter. The vulnerable tsdb_lookup function concatenates this input directly into a SQL query executed against QuestDB, breaking out of the WHERE clause to execute the DROP TABLE command. Within seconds, years of historical telemetry data is permanently deleted, disrupting mission analysis and regulatory compliance. Alternatively, the attacker uses UNION SELECT to exfiltrate proprietary spacecraft performance metrics to a competitor. The GitHub advisory provides working proof-of-concept payloads demonstrating both scenarios. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 04, 2026
SQL injection in OpenC3 COSMOS 6.7.0 to 7.0.0-rc2 allows authenticated users with minimal 'tlm' (telemetry viewer) privileges to execute arbitrary SQL commands against the QuestDB time-series database. Attackers can exfiltrate all telemetry data, drop tables, or manipulate historical records via the get_tlm_values RPC endpoint by injecting malicious SQL into the start_time parameter. Vendor-released patch available in version 7.0.0-rc3 (commit 9ba60c0). No active exploitation confirmed (not in CISA KEV), but GitHub advisory includes working proof-of-concept payloads demonstrating both data extraction and table deletion.
RemediationAI
Upgrade to OpenC3 COSMOS version 7.0.0-rc3 or later, which replaces string interpolation with parameterized queries (commit 9ba60c09c8836a37a2e4ea67ab35fe403e041415). Release available at https://github.com/OpenC3/cosmos/releases/tag/v7.0.0-rc3. If immediate patching is not feasible, implement these compensating controls with noted trade-offs: (1) Restrict 'tlm' permission to only trusted users-audit role assignments in COSMOS configuration to remove Viewer/Runner roles from untrusted accounts, though this breaks read-only telemetry access workflows. (2) Deploy web application firewall (WAF) rules to block SQL metacharacters (single quotes, semicolons, UNION keywords) in start_time/end_time parameters of /openc3-api/api requests to get_tlm_values endpoint, though sophisticated attackers may bypass signature-based filters using encoding. (3) Enable QuestDB query logging and monitor for abnormal queries containing DROP, ALTER, or UNION statements originating from COSMOS application user, though this provides detection rather than prevention. (4) Network segmentation: isolate COSMOS instances on non-routable networks accessible only via VPN with multi-factor authentication, reducing attack surface but not eliminating insider threat risk. No compensating control fully mitigates the vulnerability-patching remains the definitive solution.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in pypi, rubygems, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability resides in the tsdb_lookup function within cvt_model.rb (Ruby) and cvt_model.py (Python), which construct SQL queries for QuestDB (a time-series database optimized for telemetry storage) by directly concatenating user-supplied start_time and end_time parameters into WHERE clauses. The affected code performs string interpolation (e.g., WHERE T0.PACKET_TIMESECONDS < '#{start_time}') rather than parameterized queries, violating CWE-89 SQL injection prevention guidance. QuestDB supports PostgreSQL wire protocol, making it susceptible to classic SQL injection techniques including UNION-based data extraction and DDL statement execution (DROP TABLE). The get_tlm_values endpoint exposes this function to any authenticated user with 'tlm' permission (granted to Admin, Operator, Viewer, and Runner roles by default), significantly expanding the attack surface beyond privileged administrators. The patch (commit 9ba60c0) replaces string concatenation with parameterized queries using exec_params (Ruby) and cursor.execute with placeholder parameters (Python), binding user input as query parameters rather than embedding it in the SQL string.
Know when Cosmos gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
2DescriptionGitHub Advisory
OpenC3 COSMOS provides the functionality needed to send commands to and receive data from one or more embedded systems. From version 6.7.0 to before version 7.0.0-rc3, a SQL injection vulnerability exists in the Time-Series Database (TSDB) component of COSMOS. The tsdb_lookup function in the cvt_model.rb file directly places user-supplied input into a SQL query without sanitizing the input. As a result, a user can break out of the initial SQL statement and execute arbitrary SQL commands, including deleting data. This issue has been patched in version 7.0.0-rc3.
Executive ViewAI
OpenC3 COSMOS versions 6.7.0 through 7.0.0-rc2 contain a SQL injection vulnerability in the telemetry data retrieval function that allows authenticated users with basic viewer permissions to execute arbitrary commands against the underlying time-series database. An attacker with low-privilege access could exfiltrate sensitive telemetry data, destroy historical records, or corrupt the database, compromising mission-critical operational visibility and data integrity across all dependent systems.
If immediate upgrade to version 7.0.0-rc3 or later is not feasible: (1) Restrict network access to the get_tlm_values RPC endpoint via firewall or reverse proxy to authorized internal IP ranges only; (2) Implement database query logging and real-time alerting for SQL commands containing suspicious patterns (DROP, DELETE, UNION, comment sequences); (3) Deploy database-level read-only views for the 'tlm' user role to prevent data modification; (4) Conduct immediate audit of all users holding 'tlm' privileges and revoke unnecessary assignments; (5) Enable database transaction logging to support recovery if compromise is detected.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
Critical remote code execution vulnerability in OpenC3 COSMOS v6.0.0's Plugin Management component that allows unauthent
OpenC3 COSMOS versions before v6.0.2 contain hardcoded credentials embedded in the Service Account, allowing unauthentic
Critical authentication bypass vulnerability in OpenC3 COSMOS v6.0.0 caused by weak password requirements that enable br
Critical directory traversal vulnerability in OpenC3 COSMOS versions before 6.1.0 affecting the /script-api/scripts/ end
Directory traversal vulnerability in OpenC3 COSMOS versions before 6.1.0 that allows unauthenticated remote attackers to
A security vulnerability in OpenC3 COSMOS (CVSS 7.5) that allows attackers. Risk factors: public PoC available.
A cross-site scripting (XSS) vulnerability in OpenC3 COSMOS before v6.0.2 allows attackers to execute arbitrary web scri
Privilege escalation in OpenC3 COSMOS allows low-privileged authenticated users to bypass API authorization and perform
Authenticated OS command injection in OpenC3 COSMOS 5.12.0 through 7.2.1 allows a user with a valid session to run arbit
OpenC3 COSMOS provides the functionality needed to send commands to and receive data from one or more embedded systems.
OpenC3 COSMOS password change functionality accepts valid session tokens in lieu of current passwords, enabling attacker
OpenC3 COSMOS versions 5.0.6 through 7.2.x contain a stored cross-site scripting flaw in the shared-screen BUTTON widget
EUVD-2026-27063
GHSA-v529-vhwc-wfc5
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB