swagger-typescript-api генерирует клиенты API для Fetch или Axios на основе спецификации OpenAPI. До версии 13.12.2 src/schema-parser/base-schema-parsers/enum.ts передает значенияComponents.schemas.*.enum[i] в Ts.StringValue в src/configuration.ts без экранирования перед тем, как templates/base/enum-data-contract.ejs отображает объявления перечислений TypeScript, позволяя контролируемой злоумышленником спецификации OpenAPI внедрить код, который выполняется, когда сгенерированный модуль импортируется. Эта проблема исправлена в версии 13.12.2.
Показать оригинальное описание (EN)
swagger-typescript-api generates API clients for Fetch or Axios from an OpenAPI Specification. Prior to 13.12.2, src/schema-parser/base-schema-parsers/enum.ts passes components.schemas.*.enum[i] values to Ts.StringValue in src/configuration.ts without escaping before templates/base/enum-data-contract.ejs renders TypeScript enum declarations, allowing an attacker-controlled OpenAPI spec to inject code that executes when the generated module is imported. This issue is fixed in version 13.12.2.
Характеристики атаки
Последствия
Строка CVSS v3.1