Headline
CVE-2022-36272: Mingsoft MCMS v5.2.8 SQL注入【后台】 · Issue #97 · ming-soft/MCMS
Mingsoft MCMS 5.2.8 was discovered to contain a SQL injection vulnerability in /mdiy/page/verify URI via fieldName parameter.
漏洞分析
漏洞路由位置/${ms.manager.path}/mdiy/page/verify,漏洞点在如下方法,if…else两个条件中的validated方法均存在问题。
调用了父类的validated方法,validated方法中将传入的fieldName和fieldValue复制where对象中,并调用了appBiz.queryBySQL方法。
queryBySQL的实现方法如下调用了getDao().queryBySQL(table, fields, wheres, null,null, null, null,null);
getDao().queryBySQL调用的具体SQL语句如下,其中key值对应的Map类型对象where,也就是前端传进来的fieldName
漏洞验证
构造如下请求包,如果数据库长度大于1,即成功睡眠3秒。
debug输出sql语句