漏洞简介
LEAN MES系统是由深圳市深科特信息技术有限公司开发的一款应用系统,主要用于生产调度、产品跟踪、质量控制等车间管理功能。LEAN MES精益制造执行系统通过强调制造过程的信息化和透明化,帮助企业由粗放式向精益化管理模式升级。该系统/Handler/EquipmentTree.ashx接口存在SQL注入漏洞,攻击者可以通过构造恶意的SQL语句,获取数据库中的敏感信息或对数据库进行未授权操作,可能导致数据泄露、篡改或系统崩溃。
影响版本
fofa语法
(title="LEAN MES - 用户登录" && body="LEAN MES") || body="Content/js/skt.utility.checkmobile.js" || body="../MobileApp/VerifyError.aspx" || body="Content/login/login2/multiplant_top.png"
漏洞分析
先看下 EquipmentTree.ashx 引用的代码逻辑在哪里

在bin目录找到SKT.LeanMES.Web.dll文件,在其中找到Handler.EquipmentTree的实现逻辑

参数id不为空的情况下,根据 id 是否包含逗号 ,,将其直接拼接到 "PID=" 或 "EquipmentTypeId in" 之后,生成 SQL WHERE 子句的一部分,并赋值给 searchSettings.ExtensionCondition 变量。
然后带入equipmentType.GetAllTree方法,继续跟进看下它的实现

拼接后的条件未经任何过滤或参数化处理,直接拼接到调用ExecuteReaderStoredProcedure储存过程执行,导致了SQL 注入漏洞。
漏洞复现
POST /Handler/EquipmentTree.ashx HTTP/1.1
Host: lean.mes.mrxn.net
Content-Type: application/x-www-form-urlencoded
id=SQLI_POC

成功通过报错注入,在响应里回显数据库版本信息


