Description
Open and provider-neutral, LoopX is a lightweight state kernel and local-first control plane for loop engineering. From version 0.0.1 until 0.4.5, `loopx serve-status` in `loopx/status_server.py` uses `StatusRequestHandler._send_json()` and `do_OPTIONS()` to send `Access-Control-Allow-Origin: *` for unauthenticated responses on predictable loopback ports. A remote attacker can cause an operator who visits attacker-controlled web content to issue cross-origin requests to `GET /status.json`, `GET /review-material?goal_id=...&path=...`, `GET /`, and `POST /control-plane/configure-goal/dry-run`, exposing control-plane state, goal and run information, local absolute paths, private Markdown files below registered goal roots, and dry-run configuration projections. The affected routes do not provide cross-origin writes or arbitrary-file access. This issue is fixed in version 0.4.5.
Published: 2026-10-16
Score: 7.1 High
EPSS: n/a
KEV: No
Impact: Data Exposure of Control-Plane State and Private Files
Action: Immediate Patch
AI Analysis

Impact

LoopX is a lightweight state kernel for loop engineering. Beginning with version 0.0.1, the serve-status component sends an Access-Control-Allow-Origin:* header for all unauthenticated responses on local-loopback ports. A malicious webpage can trigger cross‑origin requests to endpoints such as /status.json, /review‑material, /, and /control‑plane/configure‑goal/dry‑run. The result is exposure of control‑plane state, goal and run information, local absolute paths, and private Markdown files stored under goal roots. The flaw does not permit cross‑origin writes or arbitrary file reads, but it does provide the attacker with sensitive data and internal paths, constituting a confidentiality breach.

Affected Systems

The vulnerability impacts LoopX, a product from the huangruiteng vendor. Versions from 0.0.1 through 0.4.4 are affected. Version 0.4.5, released in October 2026, contains the fix, so any deployment using 0.4.5 or later is no longer vulnerable. Administrators should verify the installed LoopX version and apply the update if necessary.

Risk and Exploitability

The CVSS score of 7.1 reflects a medium severity due to partial confidentiality impact and lack of authentication. No EPSS data is available, and the vulnerability is not listed in the CISA KEV catalog. The flaw can be exploited by an external attacker who convinces a user’s browser to contact the local LoopX interface through a malicious webpage. Because the wildcard CORS header permits any origin, the browser can read the returned JSON data and private files without requiring any prior credentials. The simple exploitation path – an HTML link or script that targets the predictable local ports – means that a knowledgeable attacker can obtain sensitive configuration and development content with minimal effort.

Generated by OpenCVE AI on October 16, 2026 at 22:30 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade LoopX to version 0.4.5 or later to remove the permissive CORS header and close the vulnerable endpoints.
  • If an upgrade is not immediately possible, configure firewall rules or LoopX settings to block external access to the local loopback ports where serve-status runs, limiting exposure to trusted hosts only.
  • As a temporary workaround, edit the file loopx/status_server.py to remove or tighten the Access‑Control‑Allow‑Origin header for unauthenticated requests, ensuring the header is omitted or set to only trusted origins.

Generated by OpenCVE AI on October 16, 2026 at 22:30 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 16 Oct 2026 21:45:00 +0000

Type Values Removed Values Added
Description Open and provider-neutral, LoopX is a lightweight state kernel and local-first control plane for loop engineering. From version 0.0.1 until 0.4.5, `loopx serve-status` in `loopx/status_server.py` uses `StatusRequestHandler._send_json()` and `do_OPTIONS()` to send `Access-Control-Allow-Origin: *` for unauthenticated responses on predictable loopback ports. A remote attacker can cause an operator who visits attacker-controlled web content to issue cross-origin requests to `GET /status.json`, `GET /review-material?goal_id=...&path=...`, `GET /`, and `POST /control-plane/configure-goal/dry-run`, exposing control-plane state, goal and run information, local absolute paths, private Markdown files below registered goal roots, and dry-run configuration projections. The affected routes do not provide cross-origin writes or arbitrary-file access. This issue is fixed in version 0.4.5.
Title LoopX serve-status permissive CORS policy exposes control-plane state and private Markdown files
Weaknesses CWE-346
CWE-942
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-16T21:29:13.757Z

Reserved: 2026-10-09T21:36:27.042Z

Link: CVE-2026-108372

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-16T22:17:14.457

Modified: 2026-10-16T22:17:14.457

Link: CVE-2026-108372

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-16T22:30:14Z

Weaknesses
  • CWE-346

    Origin Validation Error

  • CWE-942

    Permissive Cross-domain Security Policy with Untrusted Domains