CodeQL 2.27.4调整CWE标签:Python等语言报告要注意什么
CodeQL 2.27.4移除Python等语言部分查询的CWE-730标签,其他标签仍保留;此次更新还减少误报,调整CLI输出、pack目录检查与TypeScript提取器配置。
升级CodeQL 2.27.4后,安全报告中的CWE-730标签可能减少,但这并不等于相关漏洞查询被关闭。此次更新把多种语言的查询元数据、误报修正和CLI行为调整放在同一版本中,阅读报告时需要区分“标签变了”和“分析逻辑变了”。

Python等语言移除CWE-730,其他标签保留
Python受影响的查询包括py/redos、py/polynomial-redos和py/regex-injection。GitHub说明,CWE-730已被MITRE标记为不允许用于漏洞映射,因此这些查询移除了该标签,同时保留其他CWE标签。不要把这一元数据变化解释成正则表达式拒绝服务或正则注入风险已经消失。
同类调整还涉及C#、Java/Kotlin、JavaScript/TypeScript、Ruby和Swift。若团队按CWE编号汇总、过滤或对比扫描报告,升级后应先核对标签规则,再解释统计差异;单凭某个标签下的条目数,无法判断代码安全性是否改善。
查询准确性也有变化,要结合语言判断
Java/Kotlin扩展了日志注入查询对JDK、Apache Commons Lang和Text、Guava、OWASP Java Encoder、Spring Framework中清理器及清理条件的识别,路径注入分析也识别更多子串条件和字符串替换、删除操作。Rust则减少了分配大小、日志注入和明文日志相关查询中的部分误报。
C/C++对std::byte*缓冲区有意指针运算的可疑缩放误报得到修正,标有[[maybe_unused]]的相应变量也不再触发未使用报告;版本还新增了面向可维护性与可靠性问题的cpp-code-quality套件。JavaScript/TypeScript的js/invalid-prototype-value不再误报对象字面量中的计算型__proto__属性。

本地脚本与自定义查询包再检查两处
CLI现在把Java虚拟机警告和初始化错误送往标准错误,以免混入JSON等机器可读标准输出。通过Python等脚本解析CLI结果时,可以将诊断流与结果流分别检查,避免把警告当作JSON内容。
codeql pack bundle和codeql pack publish增加了符号链接解析后的目录边界检查:文件若指向pack根目录之外,将被排除并给出警告。自定义查询包维护者需要查看警告与归档结果。另外,JavaScript/TypeScript提取器已不再支持SEMMLE_TYPESCRIPT_HOME,会忽略该环境变量并使用自带的TypeScript编译器。
日期与部署范围:云端自动更新,自建环境另行确认
CodeQL 2.27.4变更日志标注2026年11月2日,GitHub产品公告发布于11月4日。GitHub.com上的code scanning会自动部署新CodeQL版本;本版功能还将纳入GitHub Enterprise Server 3.24,使用较旧GHES版本的团队可按官方说明手动升级CodeQL。
因此,核验一次升级不能只看报告中的告警数量。先确认执行环境和版本,再核对查询配置、CWE过滤规则、CLI输出解析及pack归档内容,才能分清报告差异来自代码修改还是分析工具调整。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













