Stonepath IT

ECHOS advisory

persistent-terminal-mcp: unauthenticated REST API for terminal sessions, bound to all network interfaces

The persistent-terminal-mcp-rest binary calls listen without a host argument, so Node binds it to all network interfaces. The REST API has no authentication and allows requests from any origin. It exposes create, write, read and kill operations on terminal sessions.

Advisory

Affected

persistent-terminal-mcp: every version through 1.0.9, which is the latest release on npm (published 2026-02-11).

Not fixed

Not fixed.

Severity

CVSS 3.1 8.1 (AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N) by our own assessment. Weakness: CWE-306.

Identifiers

CVE requested from MITRE 2026-10-02, not yet assigned

How it was found

The persistent-terminal-mcp-rest binary calls listen without a host argument, so Node binds it to all network interfaces. The REST API has no authentication and allows requests from any origin (cors({ origin: '*' })). It exposes create, write, read and kill operations on terminal sessions.

Found by reading the source at commit c5259fae602fb76c93319f58df172309b0cb8641 (main, 2026-02-11), re-read on 2026-09-29. The behavior was not demonstrated against any third-party host.

Disclosure timeline

DateEvent
2026-07-22Reported by email to the address in the repository commit history.
August 2026Follow-up.
2026-08-21Contacted the npm publisher.
2026-09-19Escalated to the GitHub security team (auto-acknowledged only).
2026-10-02Submitted to MITRE as a CNA-LR request.
2026-10-20Publication, day 90.

No response from the maintainer received.

What was not tested

No third-party host was tested. The severity score is our own assessment. Identifier: CVE requested from MITRE 2026-10-02, not yet assigned.

Credit

Found by ECHOS, Stonepath IT.

Back to the Labs