跳至主要内容

用于 CodeQL 分析的 Java 和 Kotlin 查询

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

谁可以使用此功能?

CodeQL 可用于以下类型的代码库

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

用于 Java 和 Kotlin 分析的内置查询

此表列出了 CodeQL action 和 CodeQL CLI 最新版本中可用的查询。有关更多信息,请参阅 CodeQL 文档站点中的 CodeQL 变更日志

查询名称相关的 CWE默认扩展Copilot 自动修复
接受所有证书的TrustManager295
接受所有证书的 Android WebView295
启用了 Android 可调试属性489
Android 片段注入470
PreferenceActivity 中的 Android 片段注入470
Android 意图重定向926, 940
启用了 Android Webview 调试489
存档提取期间的任意文件访问(“Zip Slip”)022
使用字符串连接构建命令行078, 088
在 Cookie 中明文存储敏感信息315
跨站点脚本079
依赖于 JCenter/Bintray 作为构件存储库1104
反序列化用户控制的数据502
检测 JHipster Generator 漏洞 CVE-2019-16303338
禁用了 Netty HTTP 标头验证93, 113
禁用了 Spring CSRF 保护352
表达式语言注入 (JEXL)094
表达式语言注入 (MVEL)094
表达式语言注入 (Spring)094
在 Maven 构件上传/下载中未使用 HTTPS 或 SFTP URL300, 319, 494, 829
未使用安全 Cookie614
Groovy 语言注入094
HTTP 响应拆分113
复合赋值中的隐式缩小转换190, 192, 197, 681
隐式导出的 Android 组件926
广播接收器未正确验证意图925
低效的正则表达式1333, 730, 400
通过堆栈跟踪泄露信息209, 497
通过错误消息泄露信息209
不安全的 Bean 验证094
不安全的 LDAP 身份验证522, 319
不安全的本地身份验证287
不安全的随机性330, 338
意图 URI 权限操作266, 926
使用用户控制的名称进行 JNDI 查找074
从用户控制的来源构建 LDAP 查询090
缺少 JWT 签名检查347
使用用户控制的输入的 OGNL 表达式语言语句917
过于宽松的正则表达式范围020
来自远程的局部路径遍历漏洞023
在不受控制的数据上使用多项式正则表达式1333, 730, 400
从用户控制的来源构建查询089, 564
从可由世界写入的文件读取732
正则表达式注入730, 400
在用户控制的数据中解析 XML 外部实体611, 776, 827
服务器端请求伪造918
服务器端模板注入1336, 094
不受控制的命令行078, 088
在内容解析中使用不受控制的数据441, 610
在路径表达式中使用不受控制的数据022, 023, 036, 073
主机名验证不安全297
来自远程来源的URL转发552
来自远程来源的URL重定向601
使用已损坏或存在风险的加密算法327, 328
使用密钥大小不足的加密算法326
在安全随机数生成器中使用可预测的种子335, 337
使用外部控制的格式字符串134
使用隐式PendingIntents927
使用无OAEP的RSA算法780
数值转换中使用用户控制的数据197, 681
权限检查中使用用户控制的数据807, 290
使用静态初始化向量进行加密329, 1204
XPath注入643
使用用户控制的样式表进行XSLT转换074
通过JavaScript暴露访问Java对象方法079
Android APK安装094
Android缺少证书固定295
Android敏感键盘缓存524
Android WebSettings文件访问200
Android WebView JavaScript设置079
Android WebView设置允许访问内容链接200
允许应用程序备份312
使用注入的环境变量构建命令078, 088, 454
在Android文件系统中明文存储敏感信息312
使用'Properties'类明文存储敏感信息313
在Android上使用`SharedPreferences`明文存储敏感信息312
在Android上使用本地数据库明文存储敏感信息312
循环条件下窄类型与宽类型比较190, 197
使用相对路径执行命令078, 088
将敏感信息暴露给通知200
将敏感信息暴露给UI文本视图200
API调用中硬编码的凭据798
用户提供的数组索引验证不当129
用户提供的用于数组构造的大小验证不当129
不安全的Basic身份验证522, 319
不安全的JavaMail SSL配置297
为本地身份验证不安全地生成密钥287
将敏感信息插入日志文件532
通过ResultReceiver泄露敏感信息927
通过隐式Intent泄露敏感信息927
临时目录中的本地信息泄露200, 732
日志注入117
循环具有不可达的退出条件835
内容提供程序中缺少读取或写入权限926
部分路径遍历漏洞023
通过与可能不受信任的字符串连接构建查询089, 564
套接字身份验证中的竞争条件421
检查时-使用时竞争条件367
信任边界违规501
算术表达式中不受控制的数据190, 191
未释放的锁764, 833
不安全的证书信任273
Android WebView中不安全的资源获取749, 079
使用可能已损坏或存在风险的加密算法327, 328
使用潜在危险的函数676
用户控制的敏感方法绕过807, 290
算术表达式中使用用户控制的数据190, 191