Every CVESearch/Get API key

GHSA-3xjw-9qpc-53mh

Arbitrary file read via workspace confinement bypass in local-operator /v1/chat/agents/{id}/edit

7.5 HighFix available

The /v1/chat/agents/{agent_id}/edit endpoint in local-operator versions before 0.47.5 resolves the caller-supplied file_path with expanduser().resolve() and reads it without checking that it lies inside the agent's workspace. An unauthenticated client with network access to the API can supply an absolute path or a path containing traversal sequences and obtain the contents of any file readable by the server process, which are placed in the model prompt and returned in the response.

Version 0.47.5 resolves server-side reads within the agent's configured workspace and rejects canonical paths outside it (including symlink and junction escapes) before any model call, adds an optional file_content request field so clients can submit a buffer without host path resolution, and binds lop serve to 127.0.0.1 by default.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
None

What each source reports

OSV Score usedPYSEC-2026-40107.5

Arbitrary file read via workspace confinement bypass in local-operator /v1/chat/agents/{id}/edit

The /v1/chat/agents/{agent_id}/edit endpoint in local-operator versions before 0.47.5 resolves the caller-supplied file_path with expanduser().resolve() and reads it without checking that it lies inside the agent's workspace. An unauthenticated client with network access to the API can supply an absolute path or a path containing traversal sequences and obtain the contents of any file readable by the server process, which are placed in the model prompt and returned in the response.

Version 0.47.5 resolves server-side reads within the agent's configured workspace and rejects canonical paths outside it (including symlink and junction escapes) before any model call, adds an optional file_content request field so clients can submit a buffer without host path resolution, and binds lop serve to 127.0.0.1 by default.

Record
PYSEC-2026-4010
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weakness
CWE-22, CWE-200
Updated
2026-11-02

Affected packages

Affected packages
PackageAffectedFixed
local-operator
PyPI
before 0.47.5, plus listed versions
0.0.10.0.100.0.110.0.120.0.13
Show 45 moreShow less
0.0.140.0.150.0.160.0.170.0.180.0.190.0.20.0.200.0.210.0.220.0.230.0.240.0.250.0.260.0.270.0.280.0.290.0.30.0.40.0.50.0.60.0.70.0.90.1.00.1.10.1.20.1.30.1.3b00.1.40.1.50.1.60.1.70.10.00.11.00.11.10.11.20.11.30.11.40.12.00.12.10.13.00.14.00.14.10.14.20.15.0
0.47.5

History

History
RecordedChangedSources
first indexedOSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

GHSA-3xjw-9qpc-53mh is a high vulnerability (CVSS 7.5) in local-operator, published September 5, 2026. No source lists public exploit code. Fixed in local-operator 0.47.5.

References

This page doesn't list everything

Left out here: 600 versions. The JSON record has them.

MoveEnter Open