1 Star 0 Fork 905

rabbit/OA-CRM-HRM-WMS-点狮

 / 详情

Dianshi-OA validRoleKey?sysRole.key has SQL injection(CVE-2024-57768)

待办的
拥有者
创建于  
2025-01-15 09:42

CVE-2024-57768
find by Chaitin Security Research Lab
Vulnerability Product: 点狮/OA-CRM-HRM-WMS-点狮
Vulnerability version: before 2025.01.01
Vulnerability type: SQL injection
Vulnerability Details:

  1. By analyzing the WEB-INF/admin/sys/role/edit.html:85 path, it is found that when the user saves the role information on the edit page and clicks the Save button, the URL will be directly specified to verify whether the role identifier already exists. The parameter value of the verification is sysRole.key. By analyzing the request path, it can be known that the operation is completed in the validRoleKey() method of the role check page.
    输入图片说明
  2. Coming to the validRoleKey() method in com/pointlion/mvc/admin/sys/role/RoleController.java:185, the parameter value will be obtained directly from the user-side model and passed to the getRoleByRoleKey() method.
    输入图片说明
  3. Enter the getRoleByRoleKey() method in com/pointlion/mvc/common/model/SysRole.java:185. The parameter value passed by the user is directly concatenated with the SQL query statement and passed to the findFirst() method. This process does not process the parameters in any way.
    输入图片说明
  4. Track the findFirst() method to /Users/admin/.m2/repository/com/jfinal/jfinal/4.6/jfinal-4.6.jar!/com/jfinal/plugin/activerecord/Model.class:540 and return the SQL statement just concatenated to the findFirst() method of the /Users/admin/.m2/repository/com/jfinal/jfinal/4.6/jfinal-4.6.jar!/com/jfinal/plugin/activerecord/Model.class:534 path. In this method, the SQL query statement is directly executed and the result is returned. During the whole process, the parameter sysRole.key is not filtered or escaped. Therefore, the parameter sysRole.key is controllable, and there is a SQL injection vulnerability here.
    输入图片说明
  5. Construct POC, log in to the backend, and access the router
http://localhost:8089/JPointLion_war_exploded/admin/sys/role/validRoleKey?sysRole.key=1'+and+updatexml(1,concat(0x7e,user(),0x7e),1)--+-

输入图片说明

评论 (0)

rabbit 创建了任务 3个月前
rabbit 修改了标题 3个月前
rabbit 修改了描述 3个月前
展开全部操作日志

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(1)
rabbit-r1bbit
Java
1
https://gitee.com/r1bbit/JFinalOA.git
git@gitee.com:r1bbit/JFinalOA.git
r1bbit
JFinalOA
OA-CRM-HRM-WMS-点狮

搜索帮助