CodeQL 包含大量用于分析 Ruby 代码的查询。default 查询套件中的所有查询默认都会运行。如果您选择使用 security-extended 查询套件,将会运行额外的查询。欲了解更多信息,请参阅 CodeQL 查询套件。
用于 Ruby 分析的内置查询
此表列出了 CodeQL Action 和 CodeQL CLI 最新发布中可用的查询。欲了解更多信息,请参阅 CodeQL 文档站点中的 CodeQL 更新日志。
| 查询名称 | 相关 CWE | 默认值 | 扩展 | Copilot Autofix |
|---|---|---|---|---|
| 不良 HTML 过滤正则表达式 | 116, 020, 185, 186 | |||
| 锚点错误的正则表达式 | 020 | |||
| 明文记录敏感信息 | 312, 359, 532 | |||
| 明文存储敏感信息 | 312, 359, 532 | |||
| 代码注入 | 094, 095, 116 | |||
| 未启用 CSRF 防护 | 352 | |||
| CSRF 防护被削弱或禁用 | 352 | |||
| 使用未加密通信渠道下载依赖 | 300, 319, 494, 829 | |||
| 反序列化受用户控制的数据 | 502 | |||
| 通过不安全连接下载敏感文件 | 829 | |||
| 多字符清理不完整 | 020, 080, 116 | |||
| 主机名正则表达式不完整 | 020 | |||
| 字符串转义或编码不完整 | 020, 080, 116 | |||
| URL 子串清理不完整 | 020 | |||
| 低效正则表达式 | 1333, 730, 400 | |||
| 通过异常泄露信息 | 209, 497 | |||
| 不安全的大规模赋值 | 915 | |||
| 正则表达式范围过于宽松 | 020 | |||
| 在未受控数据上使用多项式正则表达式 | 1333, 730, 400 | |||
| 反射型服务器端跨站脚本攻击 | 079, 116 | |||
| 正则表达式注入 | 1333, 730, 400 | |||
| 从 GET 请求读取敏感数据 | 598 | |||
| 服务器端请求伪造 | 918 | |||
| 基于受用户控制来源构建的 SQL 查询 | 089 | |||
| 存储型跨站脚本攻击 | 079, 116 | |||
| 未受控的命令行 | 078, 088 | |||
| 未受控数据用于路径表达式 | 022, 023, 036, 073, 099 | |||
| 从库输入构建的不安全 HTML | 079, 116 | |||
| 从库输入构建的不安全 shell 命令 | 078, 088, 073 | |||
| 来自远程来源的 URL 重定向 | 601 | |||
使用 Kernel.open、IO.read 或类似 sink,且参数为非常量值 | 078, 088, 073 | |||
使用 Kernel.open、IO.read 或类似 sink,且输入受用户控制 | 078, 088, 073 | |||
| 使用破损或弱的加密算法 | 327 | |||
| 对敏感数据使用破损或弱的加密散列算法 | 327, 328, 916 | |||
| 使用受外部控制的格式字符串 | 134 | |||
| 弱的 Cookie 配置 | 732, 1275 | |||
| XML 外部实体展开 | 611, 776, 827 | |||
| 硬编码数据被解释为代码 | 506 | |||
| 日志注入 | 117 | |||
| 缺少正则表达式锚点 | 020 | |||
| 网络数据写入文件 | 912, 434 | |||
| 未进行证书验证的请求 | 295 | |||
| 从库输入构建的不安全代码 | 094, 079, 116 |