{"id":"CVE-2026-54662","aliases":["GHSA-hqj5-cw9f-rx67"],"url":"https://o3.security/vulnerability/CVE-2026-54662","summary":"swagger-typescript-api vulnerable to code injection via unescaped `servers[0].url` in fetch http-client template","details":"swagger-typescript-api generates API clients for Fetch or Axios from OpenAPI specifications. Prior to 13.12.2, src/code-gen-process.ts createApiConfig copies servers[0].url into apiConfig.baseUrl, and templates/base/http-clients/fetch-http-client.ejs interpolates apiConfig.baseUrl into the generated HttpClient baseUrl field without escaping, allowing an attacker-controlled OpenAPI spec to inject TypeScript static field code that executes when the generated fetch client module is imported. This issue is fixed in version 13.12.2.","published":"2026-07-29T14:26:15.992Z","modified":"2026-08-12T03:51:32.455750423Z","cvss":{"score":8.3,"severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H"},"epss":{"score":0.0027,"percentile":0.19194,"asOf":"2026-09-12"},"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"swagger-typescript-api","fixedVersion":"13.12.2"}],"fix":{"url":"https://github.com/acacode/swagger-typescript-api/commit/306d59acb8ffbb00f953f807b97234b21f51d9de","label":"acacode/swagger-typescript-api@306d59a"},"references":[{"type":"WEB","url":"https://github.com/acacode/swagger-typescript-api/releases/tag/v13.12.2"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54662.json"},{"type":"ADVISORY","url":"https://github.com/acacode/swagger-typescript-api/security/advisories/GHSA-hqj5-cw9f-rx67"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54662"},{"type":"FIX","url":"https://github.com/acacode/swagger-typescript-api/commit/306d59acb8ffbb00f953f807b97234b21f51d9de"},{"type":"FIX","url":"https://github.com/acacode/swagger-typescript-api/pull/1779"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:32.455750423Z"}}