Skip to main content

用于 CodeQL 分析的 C# 查询

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

谁可以使用此功能?

Code scanning 可用于 GitHub Enterprise Server 中的组织拥有的存储库。 此功能需要 GitHub Advanced Security 的许可证。 有关详细信息,请参阅“关于 GitHub 高级安全性”。

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

用于 C# 分析的内置查询

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

注意: GitHub Enterprise Server 3.12 的初始版本包括 CodeQL 操作和 CodeQL CLI 2.15.5,可能不包括所有这些查询。 网站管理员可以将 CodeQL 版本更新到较新版本。 有关详细信息,请参阅“为设备配置代码扫描”。

查询名称相关的 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
页面请求验证已禁用16
正则表达式注入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
值影子处理348
值影子处理:服务器变量348