{"id":"CVE-2026-63188","title":"Logto is the modern, open-source auth infrastructure for SaaS and AI apps","summary":"Logto is the modern, open-source auth infrastructure for SaaS and AI apps. Prior to 0.3.9, the Logto Tunnel npm package enabled createStaticFileProxy from packages/tunnel/src/commands/tunnel/index.ts and passed request.url from static as…","severity":"high","cwe":["CWE-22"],"vendor":"logto","product":"@logto/tunnel","affected":["@logto/tunnel <= 0.3.8"],"patched":["@logto/tunnel 0.3.9"],"published":"2026-08-19","updated":"2026-09-09","sourceUpdated":"2026-09-09T21:15:59.613","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-63188","references":[{"url":"https://github.com/logto-io/logto/commit/5686815955534f803d3d50738259efd0f741e62c","label":"security-advisories@github.com"},{"url":"https://github.com/logto-io/logto/pull/9113","label":"security-advisories@github.com"},{"url":"https://github.com/logto-io/logto/releases/tag/@logto/tunnel@0.3.9","label":"security-advisories@github.com"},{"url":"https://github.com/logto-io/logto/security/advisories/GHSA-rxjr-6c9q-h67x","label":"security-advisories@github.com"},{"url":"https://github.com/advisories/GHSA-rxjr-6c9q-h67x"}],"tags":["nvd","ghsa","npm"],"epss":0.00441,"epssPercentile":0.37766,"aliases":["GHSA-rxjr-6c9q-h67x"],"ecosystem":"npm","ingestedAt":"2026-08-19T20:44:41.349Z","slug":"CVE-2026-63188","body":"## Overview\n\nLogto is the modern, open-source auth infrastructure for SaaS and AI apps. Prior to 0.3.9, the Logto Tunnel npm package enabled createStaticFileProxy from packages/tunnel/src/commands/tunnel/index.ts and passed request.url from static asset requests through packages/tunnel/src/commands/tunnel/utils.ts using path.join(staticPath, request.url) and then fs.open(requestPath, \"r\") without URL normalization or a containment check. When --experience-path was enabled and the tunnel port was reachable, an unauthenticated requester could send a path containing ../ to createStaticFileProxy and read files outside the configured static directory that were readable by the logto-tunnel process. The service used server.listen(port), which could expose the tunnel to other hosts depending on the platform and deployment. This issue is fixed in version 0.3.9.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Package advisory (CVE-2026-63188)\n\nAffected packages:\n\n- `@logto/tunnel <= 0.3.8`\n\nPatched in:\n\n- `@logto/tunnel 0.3.9`\n\nSource: https://github.com/advisories/GHSA-rxjr-6c9q-h67x","depth":"twilight","depthScore":41,"depthScoreParts":{"impact":41.3,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}