{"answers":{"affected":"2 open source packages ship an affected version, including @anthropic-ai/sdk. It affects 1 product.","exploited":"There is no known exploitation of CVE-2026-41686 in the wild and no public exploit code.","fix":"Upgrade @anthropic-ai/sdk to 0.91.1 or later.","what":"CVE-2026-41686 is a medium-severity vulnerability in anthropics anthropic-sdk-typescript, published on 4 May 2026. It can only be exploited from the same machine or local network, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2026-41686 and fix it if it is affected.\n\nWhat it is: CVE-2026-41686 is a medium-severity vulnerability in anthropics anthropic-sdk-typescript, published on 4 May 2026. It can only be exploited from the same machine or local network, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2026-41686 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- @anthropic-ai/sdk (npm): affected from 0.79.0; fixed in 0.91.1\n- @anthropic-ai/sdk (npm): affected from 0.79.0; fixed in 0.91.1\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-41686/ (Markdown: https://insights.sbomify.com/CVE-2026-41686/index.md)","id":"CVE-2026-41686","markdown":"https://insights.sbomify.com/CVE-2026-41686/index.md","name":"CVE-2026-41686","record":{"aliases":["GHSA-p7fg-763f-g4gf","MINI-6c97-m979-9qgf"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["data_read","data_modify"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"TypeScript SDK","requires_auth":"low_privilege","summary":"Local attackers can read or modify agent memory files due to insecure default permissions in the Claude TypeScript SDK.","user_interaction":"not_required","vuln_class":"misconfiguration"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"claude_sdk_for_typescript","vendor":"anthropic"}],"cvss":{"score":4.8,"severity":"medium","source":"cna","vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N","version":"4.0"},"cwes":[{"id":"CWE-732","name":"Incorrect Permission Assignment for Critical Resource"}],"description":"Claude SDK for TypeScript provides access to the Claude API from server-side TypeScript or JavaScript applications. From version 0.79.0 to before version 0.91.1, the BetaLocalFilesystemMemoryTool in the Anthropic TypeScript SDK created memory files and directories using the Node.js default modes (0o666 for files, 0o777 for directories), leaving them world-readable on systems with a standard umask and world-writable in environments with a permissive umask such as many Docker base images. A local attacker on a shared host could read persisted agent state, and in containerized deployments could modify memory files to influence subsequent model behavior. This issue has been patched in version 0.91.1.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Claude SDK for TypeScript has Insecure Default File Permissions in Local Filesystem Memory Tool","id":"CVE-2026-41686","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":null,"products":[],"type":"misconfiguration","year":"2026"},"n_packages":2,"n_references":1,"next":{"headline":"Wallos: SSRF CGNAT Bypass in subscription/payments Logo URL — is_cgnat_ip() Not Used in Inline Checks","id":"CVE-2026-41687"},"packages":[{"ecosystem":"npm","fixed":["0.91.1"],"introduced":["0.79.0"],"last_affected":[],"package":"@anthropic-ai/sdk","purl":null,"source":"GHSA-p7fg-763f-g4gf"},{"ecosystem":"npm","fixed":["0.91.1"],"introduced":["0.79.0"],"last_affected":[],"package":"@anthropic-ai/sdk","purl":"pkg:npm/%40anthropic-ai/sdk","source":"GHSA-p7fg-763f-g4gf"}],"prev":{"headline":"Incus: Unbounded binary import disk exhaustion","id":"CVE-2026-41685"},"products":["anthropic-sdk-typescript"],"published":"2026-05-04","related":[{"cvss_score":6.3,"headline":"Claude SDK for TypeScript: Memory Tool Path Validation Allows Sandbox Escape to Sibling Directories","id":"CVE-2026-34451","kev_date_added":null,"published":"2026-03-31"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2026-05-05","vendors":["anthropics"]},"summary":"Local attackers can read or modify agent memory files due to insecure default permissions in the Claude TypeScript SDK.","url":"https://insights.sbomify.com/CVE-2026-41686/"}