Every CVESearch/Get API key

GHSA-22mg-8gw7-636x

Path traversal and arbitrary directory deletion/overwrite via agent profile import in local-operator

9.1 CriticalFix available

GHSA-22mg-8gw7-636x is a critical vulnerability (CVSS 9.1) in local-operator, published September 5, 2026. No source lists public exploit code. Fixed in local-operator 0.47.5.

What does this mean?
Severity
9.1 CriticalCVSS 3.1, OSV
Exploit chance
UnscoredNo EPSS score yet
Exploitation
None knownNot on CISA’s or ENISA’s lists
Fixed in
0.47.5local-operator

Description

The /v1/agents/import endpoint and AgentRegistry.import_agent() in local-operator versions before 0.47.5 trust the id field inside agent.yml of an uploaded agent profile archive when constructing the destination directory. A crafted id containing directory traversal sequences makes shutil.rmtree and shutil.copy2 operate outside the agent registry, allowing an unauthenticated client with network access to the API to recursively delete arbitrary directories and write files with the privileges of the server process. Even without traversal, an imported archive could overwrite or delete existing local agent profiles.

Version 0.47.5 assigns a fresh server-generated identifier to every imported profile, never derives a filesystem path from archive metadata, creates destination directories exclusively, 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
None
Integrity
High
Availability
High

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

What each source reports

OSV Score usedPYSEC-2026-40099.1

Path traversal and arbitrary directory deletion/overwrite via agent profile import in local-operator

The /v1/agents/import endpoint and AgentRegistry.import_agent() in local-operator versions before 0.47.5 trust the id field inside agent.yml of an uploaded agent profile archive when constructing the destination directory. A crafted id containing directory traversal sequences makes shutil.rmtree and shutil.copy2 operate outside the agent registry, allowing an unauthenticated client with network access to the API to recursively delete arbitrary directories and write files with the privileges of the server process. Even without traversal, an imported archive could overwrite or delete existing local agent profiles.

Version 0.47.5 assigns a fresh server-generated identifier to every imported profile, never derives a filesystem path from archive metadata, creates destination directories exclusively, and binds lop serve to 127.0.0.1 by default.

Record
PYSEC-2026-4009
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
Weakness
CWE-22
Updated
2026-11-02

History

History
RecordedChangedSources
first indexedOSV

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

References

This page doesn't list everything

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

MoveEnter Open