{
 "id": "CVE-2026-103435",
 "description": "Claude Code validated that a target file path resided within the project working directory at permission-check time, but re-resolved the path at write time without repeating that validation. This time-of-check to time-of-use (TOCTOU) gap allowed an attacker who could write to the workspace to atomically replace a project file with a symlink, causing Claude Code to follow the symlink and write its output to an arbitrary file outside the project sandbox. Exploitation required the ability to win a race condition against the write operation and write access to the shared workspace, enabling a lower-privileged attacker to redirect benign edits to sensitive files (e.g., shell configuration) in a higher-privileged session.\n\nUsers on standard Claude Code auto-update have received this fix already. Users performing manual updates are advised to update to the latest version.\n\nThank you to hackerone.com/c_h4ck_0 for reporting this issue.",
 "published": "2026-10-07",
 "last_modified": "2026-10-07",
 "vuln_status": "Awaiting Analysis",
 "cna": "98a01053-8a31-4f6d-9aa9-252be161adc6",
 "cvss": {
  "version": "4.0",
  "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",
  "source": "98a01053-8a31-4f6d-9aa9-252be161adc6"
 },
 "cwe": [
  "CWE-22",
  "CWE-61",
  "CWE-367"
 ],
 "products": [
  {
   "vendor": "Anthropic",
   "product": "Claude Code",
   "versions_affected": null,
   "fixed_in": null,
   "product_id": null
  }
 ],
 "category": "product",
 "surface": [
  "path_traversal"
 ],
 "kev": null,
 "fix": {
  "status": "unknown",
  "version": null,
  "url": null
 },
 "references": [
  {
   "url": "https://github.com/anthropics/claude-code/security/advisories/GHSA-5j29-h97v-84ch",
   "source": "98a01053-8a31-4f6d-9aa9-252be161adc6",
   "tags": []
  }
 ],
 "related_agents": [
  "anthropic-claude-code"
 ],
 "related_incidents": [],
 "match": {
  "tests": [
   "A:name"
  ],
  "terms": [
   "claude-code:Claude Code"
  ]
 },
 "status": "candidate",
 "note": null,
 "reviewer": null,
 "checked_on": null,
 "retrieved_on": "2026-10-25"
}