Description
OpenC3 COSMOS provides the functionality needed to send commands to and receive data from one or more embedded systems. From 5.12.0 until 7.3.0, an authenticated actor can write the pypi_url setting through set_setting at POST /openc3-api/api, then cause OpenC3::PluginModel.install_phase2 in openc3/lib/openc3/models/plugin_model.rb to interpolate the value into a shell command while installing a plugin with Python dependency metadata. Shell metacharacters in the setting are interpreted by the command shell, allowing arbitrary operating-system commands to run as the openc3 service user with access to Redis and bucket credentials. Open-source deployments permit any authenticated user to reach the affected operations, while Enterprise deployments require an administrator. This issue is fixed in version 7.3.0.
Published: 2026-09-23
Score: 8.8 High
EPSS: n/a
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

The vulnerability allows a well‑authenticated actor to inject shell metacharacters into the custom pypi_url setting. During plugin installation, the setting value is directly interpolated into a shell command, giving the attacker the ability to execute arbitrary operating‑system commands with the privileges of the openc3 service user. This can lead to disclosure of Redis credentials and bucket secrets, and ultimately full compromise of the host running openc3.

Affected Systems

OpenC3 COSMOS products between versions 5.12.0 and 7.3.0 are affected. In open‑source deployments any authenticated user can reach the vulnerable API, while in Enterprise deployments only administrators can perform the action.

Risk and Exploitability

The CVSS score of 8.8 indicates a high severity level. EPSS is not available, and the vulnerability is not listed in the CISA KEV catalog. Because the flaw requires authentication to write the pypi_url setting, the attacker must possess valid credentials and be able to call the authenticated POST /openc3-api/api endpoint. Once the payload is stored, installation of a plugin with Python dependency metadata triggers the vulnerable shell command, leading to remote code execution. Without the need for network traversal or interaction with external services, the exploitation path is relatively straightforward for anyone who can obtain user credentials.

Generated by OpenCVE AI on September 23, 2026 at 20:24 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade OpenC3 COSMOS to version 7.3.0 or later.
  • Restrict or reconfigure the set_setting API so that only privileged roles can modify the pypi_url setting.
  • If an upgrade is not immediately possible, disable plugin installation or remove the ability for users to specify pypi_url to prevent injection execution.

Generated by OpenCVE AI on September 23, 2026 at 20:24 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-vp3w-52v9-q57f OpenC3 COSMOS: Authenticated OS command injection via the `pypi_url` setting
History

Wed, 23 Sep 2026 22:00:00 +0000

Type Values Removed Values Added
First Time appeared Openc3
Openc3 cosmos
Vendors & Products Openc3
Openc3 cosmos

Wed, 23 Sep 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 23 Sep 2026 19:00:00 +0000

Type Values Removed Values Added
Description OpenC3 COSMOS provides the functionality needed to send commands to and receive data from one or more embedded systems. From 5.12.0 until 7.3.0, an authenticated actor can write the pypi_url setting through set_setting at POST /openc3-api/api, then cause OpenC3::PluginModel.install_phase2 in openc3/lib/openc3/models/plugin_model.rb to interpolate the value into a shell command while installing a plugin with Python dependency metadata. Shell metacharacters in the setting are interpreted by the command shell, allowing arbitrary operating-system commands to run as the openc3 service user with access to Redis and bucket credentials. Open-source deployments permit any authenticated user to reach the affected operations, while Enterprise deployments require an administrator. This issue is fixed in version 7.3.0.
Title OpenC3 COSMOS: Authenticated OS command injection via the `pypi_url` setting
Weaknesses CWE-78
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-23T19:28:50.877Z

Reserved: 2026-08-20T20:48:20.507Z

Link: CVE-2026-77601

cve-icon Vulnrichment

Updated: 2026-09-23T19:28:48.280Z

cve-icon NVD

Status : Deferred

Published: 2026-09-23T19:19:18.380

Modified: 2026-09-23T20:17:16.027

Link: CVE-2026-77601

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-23T21:45:02Z

Weaknesses
  • CWE-78

    Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')