CodeQL 包含许多用于分析 Python 代码的查询。默认情况下会运行 `default` 查询套件中的所有查询。如果您选择使用 `security-extended` 查询套件,则会运行其他查询。有关更多信息,请参阅“CodeQL 查询套件”。
用于 Python 分析的内置查询
此表列出了 CodeQL 操作和 CodeQL CLI 的最新版本中提供的查询。有关更多信息,请参阅 CodeQL 文档网站上的 CodeQL 更改日志。
查询名称 | 相关的 CWE | 默认 | 扩展 | Copilot 自动修复 |
---|---|---|---|---|
使用 Paramiko 时接受未知 SSH 主机密钥 | 295 | |||
错误的 HTML 过滤正则表达式 | 116, 020, 185, 186 | |||
将套接字绑定到所有网络接口 | 200 | |||
敏感信息的明文日志记录 | 312, 359, 532 | |||
敏感信息的明文存储 | 312, 315, 359 | |||
代码注入 | 094, 095, 116 | |||
使用用户提供的输入构造 Cookie | 20 | |||
CSRF 防护减弱或禁用 | 352 | |||
默认版本的 SSL/TLS 可能不安全 | 327 | |||
用户控制数据的反序列化 | 502 | |||
未能使用安全 Cookie | 614, 1004, 1275 | |||
Flask 应用程序在调试模式下运行 | 215, 489 | |||
完整的服务器端请求伪造 | 918 | |||
HTTP 响应拆分 | 113, 079 | |||
主机名的正则表达式不完整 | 020 | |||
URL 子字符串清理不完整 | 20 | |||
效率低的正则表达式 | 1333, 730, 400 | |||
通过异常泄露信息 | 209, 497 | |||
不安全的临时文件 | 377 | |||
从用户控制的源构建 LDAP 查询 | 090 | |||
NoSQL 注入 | 943 | |||
过于宽松的正则表达式范围 | 020 | |||
由于使用不当导致的 PAM 授权绕过 | 285 | |||
对不受控制的数据使用多项式正则表达式 | 1333, 730, 400 | |||
反映的服务器端跨站点脚本 | 079, 116 | |||
正则表达式注入 | 730, 400 | |||
从用户控制的源构建 SQL 查询 | 089 | |||
不受控制的命令行 | 078, 088 | |||
路径表达式中使用不受控制的数据 | 022, 023, 036, 073, 099 | |||
来自远程源的 URL 重定向 | 601 | |||
使用已损坏或弱的加密算法 | 327 | |||
对敏感数据使用已损坏或弱的加密哈希算法 | 327, 328, 916 | |||
使用不安全的 SSL/TLS 版本 | 327 | |||
使用弱加密密钥 | 326 | |||
XML 外部实体扩展 | 611, 827 | |||
XML 内部实体扩展 | 776, 400 | |||
从用户控制的源构建 XPath 查询 | 643 | |||
在 tarfile 提取期间任意文件写入 | 022 | |||
硬编码凭据 | 259, 321, 798 | |||
Jinja2 模板化,autoescape=False | 079 | |||
日志注入 | 117 | |||
过于宽松的文件权限 | 732 | |||
部分服务器端请求伪造 | 918 | |||
无证书验证的请求 | 295 | |||
从库输入构建不安全的 shell 命令 | 078, 088, 073 |