近日国外安全社区公布微信支付官方SDK存在严重漏洞,可导致商家服务器被入侵,一旦攻击者获得商家的关键安全密钥,就可以通过发送伪造信息来欺骗商家而无需付费购买任何东西。目前,漏洞详细信息以及攻击方式已被公开,影响范围巨大,建议用到JAVA SDK的商户快速检查并修复。
近日国外安全社区公布微信支付官方SDK存在严重漏洞,可导致商家服务器被入侵,一旦攻击者获得商家的关键安全密钥,就可以通过发送伪造信息来欺骗商家而无需付费购买任何东西。目前,漏洞详细信息以及攻击方式已被公开,影响范围巨大,建议用到JAVA SDK的商户快速检查并修复。
漏洞细节
微信支付SDK JAVA版的XXE漏洞,主要存在于商家服务器端的支付结果回调 URL 处。在该处使用DOM处理回传的XML格式的支付结果通知时,未禁用外部实体、参数实体、内联DTD等,从而导致存在XXE漏洞。
风险等级
360安全监测与响应中心风险评级为:高危
预警等级:蓝色预警(一般网络安全预警)
处置建议
微信官方目前已经修复了XXE漏洞。使用微信支付的企业用户请尽快更新微信支付的 JAVA SDK 进行漏洞修复。
技术分析
微信支付 JAVA SDK 在WXPayUtil.java 中提供了 xmlToMap,用于将 XML 数据转换为 Map 结构。其内部用到了 DocumentBuilderFactory 来以 DOM 方式解析 XML 数据。由于其允许外部实体解析,从而导致 XXE 漏洞。
目前,微信官方已通过禁止外部实体解析方式修复了该漏洞。如下图:
河南亿恩科技股份有限公司(www.enkj.com)始创于2000年,专注服务器托管租用,是国家工信部认定的综合电信服务运营商。亿恩为近五十万的用户提供服务器托管、服务器租用、机柜租用、云服务器、网站建设、网站托管等网络基础服务,另有网总管、名片侠网络推广服务,使得客户不断的获得更大的收益。
服务器/云主机 24小时售后服务电话:
0371-60135900
虚拟主机/智能建站 24小时售后服务电话:
0371-55621053
网络版权侵权举报电话:
0371-60135995
服务热线:
0371-60135900