CVE-2026-22785orval是一个用于从OpenAPI v3或Swagger v2规范生成类型安全JavaScript客户端(TypeScript)的工具。在7.18.0之前的版本中,MCP服务器生成逻辑依赖于字符串操作,将OpenAPI规范中的summary字段内容直接嵌入代码中,而没有进行适当的验证或转义处理。攻击者可以通过在summary字段中注入恶意代码,实现字符串字面量逃逸,从而在生成的代码中注入任意代码。由于该工具通常在持续集成/持续部署(CI/CD)流程中自动运行,生成的代码会被进一步编译和部署,因此注入的恶意代码可能在下游系统中被执行,造成严重的远程代码执行风险。
该漏洞的根本原因在于orval的MCP服务器代码生成模块使用了不安全的字符串拼接方式。当处理OpenAPI规范中的summary字段时,代码直接将该字段的值插入到生成的TypeScript代码字符串中,而没有对特殊字符(如单引号、反引号、换行符等)进行转义或验证。攻击者可以构造一个包含恶意payload的summary字段,例如在summary中包含反引号和JavaScript代码片段,利用模板字符串的特性逃逸出字符串上下文。例如,summary字段设置为`test"; require('child_process').exec('malicious_command'); //`可能导致生成的代码被注入任意系统命令执行。由于orval生成的代码通常直接用于生产环境,此漏洞可导致严重的远程代码执行(RCE)后果。