Jeecgboot-sql布尔盲注
最近大四在找实习工作,实在没什么心思学习,准备入职还被hr阴阳怪气,难受死我了
昨天看到微步发的jeecgboot的sql注入
其实主要是绕过sql黑名单检查,不止/show接口存在sql注入
漏洞分析
上一篇模板注入那里有提到sql注入黑名单检查
jimureport-spring-boot-starter-1.5.8.jar!\org\jeecg\modules\jmreport\common\b\i.class
public static void a(String var0) {
String[] var1 = " exec |peformance_schema|information_schema|extractvalue|updatexml|geohash|gtid_subset|gtid_subtract| insert | alter | delete | grant | update | drop | chr | mid | master | truncate | char | declare |user()|".split("\\|");
if (var0 != null && !"".equals(var0)) {
b(var0);
var0 = var0.toLowerCase();
c(var0);
var0 = var0.replaceAll("/\\*.*\\*/", "");
for(int var2 = 0; var2 < var1.length; ++var2) {
if (var0.indexOf(var1[var2]) > -1 || var0.startsWith(var1[var2].trim())) {
a.error("请注意,存在SQL注入关键词---> {}", var1[var2]);
a.error("请注意,值可能存在SQL注入风险!---> {}", var0);
throw new JimuReportException(1001, "请注意,值可能存在SQL注入风险!--->" + var0);
}
}
if (Pattern.matches("show\\s+tables", var0) || Pattern.matches("user[\\s]*\\([\\s]*\\)", var0)) {
throw new RuntimeException("请注意,值可能存在SQL注入风险!--->" + var0);
}
}
}
这个漏洞就是黑名单检查不全面,用布尔盲注绕过黑名单
上面提到的show接口
其他相关接口同样存在问题,如CVE-2023-1454
的qurestSql
本文作者:uein
本文链接:https://www.cnblogs.com/uein/p/17706951.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步