Skip to main content

用于 CodeQL 分析的 C# 查询

当您选择 defaultsecurity-extended 查询套件时,浏览 CodeQL 用于分析使用 C# 编写的代码的查询。

谁可以使用此功能?

Code scanning 可用于 GitHub.com 上的所有公共存储库。 Code scanning 也可用于使用 GitHub Enterprise Cloud 并拥有 GitHub Advanced Security 许可证的组织所拥有的专用存储库。 有关详细信息,请参阅“关于 GitHub 高级安全性”。

CodeQL 包含许多用来分析 C# 代码的查询。 默认情况下,default 查询套件中的所有查询都会运行。 如果选择使用 security-extended 查询套件,则会运行其他查询。 有关详细信息,请参阅“CodeQL 查询套件”。

用于 C# 分析的内置查询

下表列出了最新版本的 CodeQL 操作和 CodeQL CLI 的可用查询。 有关详细信息,请参阅 CodeQL 文档中的 CodeQL 更改日志

注意:**** code scanning 的 GitHub 自动修复功能为 beta 版。 功能和文档可能会有变动。 在此阶段,此功能仅限用于 CodeQL 标识的 JavaScript、TypeScript 和 、Python 和 Java 警报。 如果你有企业帐户并使用 GitHub Advanced Security,则你的企业有权访问 beta 版本。

查询名称相关的 CWE默认延期自动修复
'requireSSL' 属性未设置为 true319、614
存档提取期间的任意文件访问权限(“Zip Slip”)022
ASP.NET 配置文件可启用目录浏览548
程序集路径注入114
敏感信息的明文存储312、315、359
Cookie 安全性:过于广泛的域287
Cookie 安全性:过于广泛的路径287
Cookie 安全性:永久性 Cookie539
创建 ASP.NET 调试二进制文件时可能会显示敏感信息11、532
跨站脚本079、116
将用户输入与昂贵的正则表达式进行比较而导致拒绝服务1333、730、400
不受信任数据的反序列化502
反序列化的委派502
使用 ECB 加密327
私人信息泄露359
放弃会话失败384
已禁用标头检查113
代码生成的不当控制094、095、096
通过异常泄漏信息209、497
通过传输数据泄漏信息201
不安全的随机性338
从用户控制的来源生成的 LDAP 查询090
从用户输入创建的日志项目117
跨网站请求伪造令牌验证缺失352
全局错误处理程序缺失12、248
X-Frame-Options HTTP 头缺失451、829
正则表达式注入730、400
资源注入099
从用户控制的来源生成的 SQL 查询089
不受控命令行078、088
路径表达式中使用的不受控数据022、023、036、073、099
不受控制的格式字符串134
不安全地读取不受信任的 XML611、827、776
未经验证的本地指针算术119、120、122、788
来自远程来源的 URL 重定向601
用户控制的敏感方法绕过807、247、350
弱加密327
弱加密:RSA 填充不足327、780
弱加密:密钥大小不足326
XML 注入091
XPath 注入643
配置文件内的空密码258、862
带有凭证的硬编码连接字符串259、321、798
硬编码凭证259、321、798
不安全的直接对象引用639
不安全的 SQL 连接327
函数级别访问控制缺失285、284、862
XML 验证缺失112
密码存储在配置文件内13、256、313
绕过序列化检查20
ICryptoTransform 对象的线程不安全捕获362
静态 ICryptoTransform 字段的线程不安全使用362
使用文件上传434