
Analyzes CVE-2025-60423, an authentication bypass in JEECG versions 7.2.8 and 7.2.9, detailing path traversal and URL encoding techniques to bypass filters and access protected endpoints.
这个鉴权绕过和shiro的权限绕过类似
在sessionfilter这个类中的dofilterInternal⽅法中,默认dofilter参数是true,只有当其为false的时候,才能不被鉴权
跟到matches⽅法中,看这个代码他会匹配url和patterns中的134个路径字符串,当匹配成功的时候就会返回true,就可以使dofilter为true
然后⼀直调试直到循环可以进到判断当中,这时候pattern为/static.*?

所以只要在任意后台⽬录路径前添加/static/..就可以绕过鉴权 其实这⾥这⾥不只是/static/..可以,在patterns中只要是单层路径且后⾯有.*?都可以绕过 举例:
/error/.*?
/adminseal.zz/.*?
/dwr/.*?
...
我没有都找出来,但是符合这个规则的都可以
在新版本7.2.9中多了⼀步检查url

跟如checkErrorUrl中,发现他会检查是否存在..

依旧结合shiro那⼏个cve绕过思路,将..进⾏⼀次url编码成功绕过
Payload:
POST /static/%2e%2e/je/sysConfig/sysConfig/loadSysVariables HTTP/1.1 1
泄露web端⽆加密密码
