微信支付SDK XXE缝隙安全公告

颁布功夫 2018-07-03

缝隙编号和级别


无  高危


影响领域


受影响版本:


JAVA SDK,,,,, ,WxPayAPI_JAVA_v3


缝隙概述

微信在JAVA版本的SDK中提供callback回调职能,,,,, ,用来援手商家接管异步付款了局,,,,, ,该接口接受XML体式的数据,,,,, ,攻击者能够机关恶意的回调数据(XML体式)来窃取商家服务器上的任何信息。。 。。。。一旦攻击者获得了关键支付的安全密钥(md5-key和商家信息),,,,, ,将能够直接实现0元支付采办任何商品。。 。。。。当XML允许引用表部实体时,,,,, ,黑客能够通过机关恶意XML实体文件,,,,, ,实现远程读取肆意系统文件、远程执行系统号令等一系列危险操作,,,,, ,严沉风险商家服务器的系统安全。。 。。。。


XXE (XML External Entity Injection) 缝隙产生在利用法式解析 XML 输入时,,,,, ,没有不容表部实体的加载。。 。。。。是一种针对使用XML交互的Web利用法式的攻击步骤。。 。。。。


目前,,,,, ,微信官方尚未对SDK进行建复,,,,, ,但缝隙利用信息以及攻击方式已被公开,,,,, ,影响领域巨大(已经披露出的有陌陌、vivo确认存在该缝隙),,,,, ,建议用到微信支付JAVA SDK的企业立刻发展自查并关注微信官方安全公告。。 。。。。


2018年7月2号,,,,, ,该缝隙在国表缝隙披露网站初次颁布:


8827太阳集团(Macau)股份有限公司-Official website


本地验证截图:


8827太阳集团(Macau)股份有限公司-Official website


建复建议


期待微信官方升级规划。。 。。。。


用户可使用开发说话提供的禁用表部实体的步骤。。 。。。。java禁用表部实体的代码如下:


DocumentBuilderFactory dbf =DocumentBuilderFactory.newInstance();
dbf.setExpandEntityReferences(false);


参考链接

http://seclists.org/fulldisclosure/2018/Jul/3。。 。。。。