{"schemaVersion":3,"id":"CVE-2025-54794","aliases":["GHSA-pmw4-pwvc-3hx2"],"status":"published","duplicateOf":null,"title":"Claude Code Research Preview has a Path Restriction Bypass which could allow unauthorized file access","description":"Claude Code is an agentic coding tool. In versions below 0.2.111, a path validation flaw using prefix matching instead of canonical path comparison, makes it possible to bypass directory restrictions and access files outside the CWD. Successful exploitation depends on the presence of (or ability to create) a directory with the same prefix as the CWD and the ability to add untrusted content into a Claude Code context window. This is fixed in version 0.2.111.","dates":{"published":"2025-08-05T00:08:13.864Z","modified":"2025-08-05T14:17:31.870Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":9.1,"severity":"critical","version":"3.1","versionLabel":"v3.1","source":"NVD","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N","computed":false,"selection":"backend-summary"},"metrics":[{"version":"4.0","versionLabel":"v4.0","source":"CVE.org","score":7.7,"severity":"high","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","exploitability":null,"impact":null,"computed":false},{"version":"4.0","versionLabel":"v4.0","source":"OSV · Npm","score":7.7,"severity":"high","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","exploitability":null,"impact":null,"computed":true},{"version":"4.0","versionLabel":"v4.0","source":"NVD","score":7.7,"severity":"high","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":9.1,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.01357,"percentile":0.71435,"severity":"low","asOf":"2026-10-22T00:00:00.000Z","change":{"pp":0,"baselineDate":"2026-09-22T00:00:00.000Z","baselineScore":0.01357},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.01357,"percentile":0.71435}],"last30":[{"date":"2026-09-22T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.01357,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.01357,"percentile":0.71435}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')","description":"The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/22.html"}],"affected":[{"vendor":"anthropic","product":"claude_code","name":"claude code","label":"claude_code","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 0.2.111","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.2.111","eol":null,"hubHref":"/vendor/anthropic/claude_code"},{"vendor":"anthropics","product":"claude-code","name":"claude-code","label":"claude-code","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 0.2.111","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.2.111","eol":null,"hubHref":"/vendor/anthropics/claude-code"},{"vendor":"@anthropic-ai","product":"claude-code","name":"@anthropic-ai/claude-code","label":"claude-code","ecosystem":"Npm","cpePart":null,"purl":"pkg:npm/@anthropic-ai/claude-code","purlType":"npm","versions":[{"text":"< 0.2.111","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.2.111","eol":null,"hubHref":null}],"affectedCount":3,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/anthropics/claude-code/security/advisories/GHSA-pmw4-pwvc-3hx2","label":"github.com/anthropics/claude-code/security/advisories/GHSA-pmw4-pwvc-3hx2","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Vendor Advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-54794","label":"nvd.nist.gov/vuln/detail/CVE-2025-54794","hostname":"nvd.nist.gov","tags":["Advisory"]},{"url":"https://github.com/anthropics/claude-code","label":"github.com/anthropics/claude-code","hostname":"github.com","tags":["PACKAGE"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2025-08-05T00:08:13.864Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2025-08-05T14:17:31.870Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":70,"level":"high","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T17:41:36.760Z","stale":false,"partial":false}}