{"id":"CVE-2026-86115","state":"PUBLISHED","title":"Sim before 0.8.14 Confused Deputy in Tool URL Routing Mints an Internal Token for a User-Supplied /api/ Path","description":"Sim before 0.8.14 classifies tool requests as internal based on URL prefix matching without scheme normalization, skipping SSRF validation and minting internal authentication tokens. Authenticated workflow authors can bypass external URL validation by supplying paths starting with /api/ in HTTP blocks to reach internal-only endpoints like POST /api/function/execute.","publishedAt":"2026-09-05T09:59:06.026Z","updatedAt":"2026-09-24T14:21:02.444Z","severity":{"score":5.3,"label":"Medium","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:L/SI:N/SA:N","source":"VulnCheck"},"assigner":"VulnCheck","products":["simstudioai sim"],"affected":[{"vendor":"simstudioai","product":"sim","packageURL":"pkg:github/simstudioai/sim","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"0.8.14","versionType":"semver"}],"repo":"https://github.com/simstudioai/sim"}],"references":["https://github.com/geo-chen/oss/blob/main/sim.md","https://github.com/simstudioai/sim/blob/v0.8.13/apps/sim/tools/index.ts","https://github.com/simstudioai/sim/blob/v0.8.13/apps/sim/lib/auth/hybrid.ts","https://github.com/simstudioai/sim/pull/7179","https://github.com/simstudioai/sim","https://www.vulncheck.com/advisories/sim-before-0.8.14-confused-deputy-in-tool-url-routing-mints-an-internal-token-for-a-user-supplied-api-path"],"weaknesses":["CWE-441"],"ingestedAt":"2026-10-29T20:13:26.108Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/86xxx/CVE-2026-86115.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-86115","state":"PUBLISHED","datePublished":"2026-09-05T09:59:06.026Z","dateUpdated":"2026-09-24T14:21:02.444Z","assignerShortName":"VulnCheck","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateReserved":"2026-09-05T01:59:20.600Z"},"containers":{"cna":{"title":"Sim before 0.8.14 Confused Deputy in Tool URL Routing Mints an Internal Token for a User-Supplied /api/ Path","descriptions":[{"lang":"en","value":"Sim before 0.8.14 classifies tool requests as internal based on URL prefix matching without scheme normalization, skipping SSRF validation and minting internal authentication tokens. Authenticated workflow authors can bypass external URL validation by supplying paths starting with /api/ in HTTP blocks to reach internal-only endpoints like POST /api/function/execute."}],"affected":[{"vendor":"simstudioai","product":"sim","packageURL":"pkg:github/simstudioai/sim","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"0.8.14","versionType":"semver"}],"repo":"https://github.com/simstudioai/sim"}],"references":[{"url":"https://github.com/geo-chen/oss/blob/main/sim.md","tags":["technical-description"],"name":"Researcher write-up"},{"url":"https://github.com/simstudioai/sim/blob/v0.8.13/apps/sim/tools/index.ts","tags":["technical-description"],"name":"isInternalRoute prefix check and addInternalAuthIfNeeded"},{"url":"https://github.com/simstudioai/sim/blob/v0.8.13/apps/sim/lib/auth/hybrid.ts","tags":["technical-description"],"name":"checkInternalAuth accepts the minted internal JWT"},{"url":"https://github.com/simstudioai/sim/pull/7179","tags":["patch","issue-tracking"],"name":"refactor(tools): execute internal operations in process (#7179)"},{"url":"https://github.com/simstudioai/sim","tags":["product"]},{"url":"https://www.vulncheck.com/advisories/sim-before-0.8.14-confused-deputy-in-tool-url-routing-mints-an-internal-token-for-a-user-supplied-api-path","name":"VulnCheck Advisory: Sim before 0.8.14 Confused Deputy in Tool URL Routing Mints an Internal Token for a User-Supplied /api/ Path","tags":["third-party-advisory"]}],"metrics":[{"format":"CVSS","cvssV4_0":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:L/SI:N/SA:N","attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"LOW","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"LOW","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":5.3,"baseSeverity":"MEDIUM"}},{"format":"CVSS","cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"CHANGED","confidentialityImpact":"LOW","integrityImpact":"NONE","availabilityImpact":"NONE","baseScore":5,"baseSeverity":"MEDIUM"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-441","lang":"en","description":"Unintended Proxy or Intermediary ('Confused Deputy')","type":"CWE"}]}],"providerMetadata":{"shortName":"VulnCheck","orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateUpdated":"2026-09-24T14:21:02.444Z"},"datePublic":"2026-09-04T00:00:00.000Z","cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:sim:sim:*:*:*:*:*:*:*:*","versionEndExcluding":"0.8.14"}]}]}],"credits":[{"lang":"en","value":"George Chen","type":"finder"}],"x_generator":{"engine":"vulncheck-endgame"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-09-08T18:09:00.618331Z","id":"CVE-2026-86115","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-08T18:09:11.869Z"}}]}}}