SuperAPI AI 工具集

security-report-check

安全与审计

查看项目

更新于 10-16 00:32

技能介绍

用途:该文档说明 TypeScript 编译器(tsc)在处理不可信输入时的安全保证与非保证,供安全研究者在报告问题前参考。

主要保证:在未启用内容映射器(content mapper)时,运行 tsc 处理恶意 .ts 或 tsconfig.json 不会执行输入代码,编译器只做解析、类型检查与产出,不含编译期 eval、宏系统或运行作者代码的插件;默认副作用限于文件系统与进程 I/O;部分对抗性输入可致崩溃,但会正常展开进程,不作为内存安全漏洞来源。

非保证:输出路径由 tsconfig.json 决定,可写入调用用户有权限的任意路径;tsc --build --clean 可能删除文件;文件读取无沙箱,import 与 reference 可触发任意可读文件的读取,诊断信息可能回显部分内容;类型系统图灵完备,恶意输入可耗尽 CPU 或内存;.tsbuildinfo 应与 tsconfig.json 同等视为敏感文件;语言服务(LS)同样无资源上限。

开启 --runExternalCode 会启用第三方代码执行,仅在确认可用内容映射器可接受时才使用。对不可信输入应在外部施加资源与文件系统限制(如 ulimit、cgroups、进程超时、容器或沙箱)。

限制:资源耗尽、输出到意外可写路径、读取本机文件、输入代码产出对应输出代码等,均不属于有效安全报告。