J9国际集团|Home

135-2716-3909
网站建设资讯详细

微信支付□□□□接口存在XML解析安全·漏洞

发表日期:2026-06-07 09:01:29   作者来源:J9国际集团   浏览:6448   标签:微信支付接口    

微信支付接口安全漏洞

最近比较□□□□火的是微□□丨信支付◈接□□口存在XML外部实体□□□注入漏洞(XML External Entity Injection,简称 XXE)。该安全问□□题是由XML组件默认◢没有禁用□□□□外部实体□□引用导致,黑客可以△伪造一个□□□请求让支□□付商户误□□□以为订单•支付了,其实订单▽并没有支◥付,这样黑客□□□就可以0元买任何♦商品。

这个漏洞❖是在微信□□支付接口▽通知是否□□□支付的环□□□□节出现漏·洞。主要发生□□□在以下场◢景。

场景1:支付成功□□□通知;
场景2:退款成功❖通知;
场景3:委托代扣□□签约、解约、扣款通知;
场景4:车主解约□□□通知;

这个漏洞□□□□影响性还□□是蛮大的,可以直接□□□导致商家□□□□金钱损失,尤其是有○微信支付□□□功能模块□□□的自动发□□□丨货的系□□□统●及销售虚□□□拟商品的◈商城。

黑客能利※用这个漏□□洞的条件□□有两个:

一、知道怎么□□□□使用XML外部实体□□□注入漏洞;(因为漏洞※已经被公□□□开,大家都知□□□□道,可恨的是□□□很多人把□□□□攻击的方□□□□式都公开□□了!!!!)
二、知道微信支付通知的地址;(这个开源建站系统因为源代码是公开的,所以基本不用猜都知道,而定制建站系统则比较难猜,所以定制建站系统还有一层防护)

所以对于开源建站系统,源代码大家都知道,微信支付通知的地址自然是清楚了,这也暴露了很多开源建站系统的软肋,J9国际集团□□□□建议:做网站还是建议□□□采用定制❖建站,就算出现□□□□漏洞,因为代码□□□不开源,所以自然□□□□而然多一□□□□重安全保□□□障。

这个漏洞□□□□如何修补☆呢?

如果是PHP网站,非常简单,一句话解□□□□决libxml_disable_entity_loader(true);

如下代码□□示例:

//将XML转为array
function xmlToArray($xml) {
    //禁止引用□□外部xml实体 libxml_disable_entity_loader(true);
    $values = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);
    return $values;
}

如果是ASP.NET网站

【.Net】 
XmlDocument doc= new XmlDocument();
doc.XmlResolver = null;

微信官方□□□□也给每个□□丨商户推□□□送□□了这个接□□口安全漏□□□洞,也给出了□□□各个程序△语言的修□□□□复方法,APP SDK 不受影响,主要还是●网站。

如果你是□□□□商家,这个漏洞□□□还没有修◉复,建议财务□□□□对每一笔□□□□订单进行□□二次审核,通过登录□□微信支付□□□管理后台□□查看订单□□数据,再次审核•订单支付※是否真实□□□来决定是□□否发货。

如果你是□□□J9国际集团□□□的客户,那么你不□□□□用担心,我们技术□□会免费为□□□□你修补这□□□个漏洞。

J9国际集团□□□专注于网◤站建设、微信小程□□□□序、APP开发,目前在深圳和广州均·有分公司,欢迎广大□□□客户咨询135-2716-3909!

如没特殊注明,文章均为J9国际集团原创,转载请注明来自https://www.lyzhuzao.com/news/4397.html