今天,微信支付发布了一则紧急通知:

尊敬的微信支付商户:

您的系统在接受微信支付XML格式的商户回调通知(支付成功通知、退款成功通知、委托代扣签约/解约/扣款通知、车主解约通知)时,如未正确地进行安全设置或编码,将会引入有较大安全隐患的XML外部实体注入漏洞(XML External Entity Injection,简称 XXE)。

请贵司研发人员务必参考微信支付安全实践指引:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=23_5 ,进行安全隐患确认和排除。

微信支付团队

2018年7月4号

科普

XXE漏洞全称XML External Entity Injection即xml外部实体注入漏洞,XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件,造成文件读取、命令执行、内网端口扫描、攻击内网网站、发起dos攻击等危害。xxe漏洞触发的点往往是可以上传xml文件的位置,没有对上传的xml文件进行过滤,导致可上传恶意xml文件。

微信支付将大面积受影响

在微信支付回调过程中,微信默认使用了XML格式的数据,因此几乎所有微信支付流程都面临XXE漏洞的风险。

XXE危害有多大?轻则攻击者可以不花一分钱完成一个“已支付”订单,重则整个系统沦陷。

攻击难度如何?

网上搜“XXE”即可看到各种完整的攻击教程,完成一次攻击只需要1分钟!所以不要心存侥幸!

别急,有我们在!

Senparc 团队在第一时间已经提供了修补程序,请将你的系统升级到 Senparc.Weixin SDK 最新版本,包括全系列MP(公众号)、WxOpen(小程序)、Open(开放平台)、Work(企业微信)等模块。

同时,系统底层公共模块 Senparc.CO2NET 也为所有 C# 程序提供了彻底的一站式解决方案,在 CO2NET 最新版本(v0.1.6.1)中,提供了名为 XmlDocument_XxeFixed 的类(命名空间:Senparc.CO2NET.ExtensionEntities),全局使用 XmlDocument_XxeFixed 取代 XmlDocument 即可修补此漏洞。

Senparc.Weixin SDK 升级包地址:

MP(v5.0.6.1):

https://www.nuget.org/packages/Senparc.Weixin.MP

WxOpen(2.0.6.2):

https://www.nuget.org/packages/Senparc.Weixin.WxOpen

Open(v3.0.6.1):

https://www.nuget.org/packages/Senparc.Weixin.Open

Work(v2.0.6.1):

https://www.nuget.org/packages/Senparc.Weixin.Work

CO2NET 升级包地址:

https://www.nuget.org/packages/Senparc.CO2NET

(Senparc.Weixin 已经自带最新 CO2NET)

感谢本次发布 SDK 版本的贡献者们:

Senparc 团队

TomLiu-GitHub

lhg0302

lishewen

e4ky

风格

加入XXE解决方案讨论群:

QQ群:622959308

重要的事情说三遍:

马上升级!

马上升级!

马上升级!

【红色警报】XXE 高危漏洞将大面积影响微信支付安全,可能导致系统沦陷,请升级你的系统!的更多相关文章

  1. ASP.NET微信支付XXE漏洞修复

    1. XXE场景 关于XML解析存在的安全问题指引 微信支付商户,最近暴露的XML外部实体注入漏洞(XML External Entity Injection,简称 XXE),该安全问题是由XML组件 ...

  2. Struts2漏洞拉响网站安全红色警报以及把Struts2更新为最新版本Struts2.3.15.1步骤

    360网站安全检测平台今日发布红色警报称,广泛应用在国内大型网站系统的Struts2框架正在遭到黑客猛烈攻击.利用Struts2“命令执行漏洞”,黑客可轻易获得网站服务器ROOT权限.执行任意命令,从 ...

  3. OpenSSL再爆多处高危漏洞

    OpenSSL团队于北京时间6月5号晚8点左右发布了5个安全补丁,这次的更新涉及多处高危漏洞,连接:http://www.openssl.org/news/ 受影响的版本包括: OpenSSL 1.0 ...

  4. 【更新WordPress 4.6漏洞利用PoC】PHPMailer曝远程代码执行高危漏洞(CVE-2016-10033)

    [2017.5.4更新] 昨天曝出了两个比较热门的漏洞,一个是CVE-2016-10033,另一个则为CVE-2017-8295.从描述来看,前者是WordPress Core 4.6一个未经授权的R ...

  5. “织梦”CMS注入高危漏洞情况

    "织梦"CMS注入高危漏洞情况 作者:    时间:2014-04-17   "织梦"CMS是由上海卓卓网络科技有限公司研发的一款网站建站系统软件,又称&quo ...

  6. L2-013 红色警报 (25 分) (并查集)

    链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805063963230208 题目: 战争中保持各个城市间的连通性非 ...

  7. 微信支付的安全漏洞之XXE

    1.场景:国外安全社区公布微信支付官方SDK存在严重漏洞,可导致商家服务器被入侵(绕过支付的效果).目前,漏洞详细信息以及攻击方式已被公开,影响范围巨大(已确认陌陌.vivo因使用该SDK而存在该漏洞 ...

  8. Oracle数据库XXE注入漏洞(CVE-2014-6577)分析

    在这篇文中,我们将共同分析一下Oracle数据库的XXE注入漏洞(CVE-2014-6577),Oracle公司1月20日发布了针对该漏洞的相关补丁. 有关XXE的相关知识,可以查看安全脉搏站内的另一 ...

  9. PAT L2-013 红色警报(并查集求连通子图)

    战争中保持各个城市间的连通性非常重要.本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报.注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不 ...

随机推荐

  1. PCIe link up bug 分析

    Xilinx两块开发版PCIe link up时间相差很大,Virtex-6开发版PCIe link up时间超过60ms,而Virtex-7 PCIe link up时间只有~25ms.   分析过 ...

  2. linux中service XX start与直接运行/usr/bin/xx start的区别

    在linux想要运行启动一个服务有两种方法: 1,运行/etc/init.d/目录下的shell脚本,还可以有快捷方式,service *** start/ stop/restart /status, ...

  3. RabbitMQ的学习

    生成者就是发送信息,消费者就是接收信息,队列就是存储数据的排队.消息通过你的应用程序和RabbitMQ进行传输,它们只能存储在队列中,队列容量没有限制,你要存储多少消息都可以——基本上是一个无限的缓冲 ...

  4. 新建VS工程与填坑:解决方案与项目不在同一目录

    A.新建项目->空工程 B.添加依赖库 1.属性->C/C++->附加包含目录 注:添加头文件目录,必须指向子文件夹 2.属性->链接器->常规->附加库目录 注: ...

  5. 九、mybatis模糊查询2种方式

    1. 2. 3.

  6. apache-tomcat 部分中文.html .jsp 连接 404问题

    修改文件到 自己的安装目录:\apache-tomcat-7.0.79\conf 添加   Connector URIEncoding="utf-8" <Connector ...

  7. 探索未知种族之osg类生物---状态树与渲染树以及节点树之间的关系

    节点树 首先我们来看一个场景构建的实例,并通过它来了解一下“状态节点”StateGraph 和“渲染叶”RenderLeaf 所构成的状态树,“渲染台”RenderStage 和“渲染元”Render ...

  8. ASP.NET Core Web API 如何 数据分页 以及遇到'OFFSET' 附近有语法错误

    最近领导叫我做的一个B/S端的小项目,突发奇想想用到core web api 今天写数据分页的时候,就想着 用linq分页查询吧,直接上代码 _context.Skip(Size * (PageNum ...

  9. Mad Libs游戏

    一. 简单的输入输出 输入代码 name1=input('请输入姓名:') name2=input('请输入一个句子:') name3=input('请输入一个地点:') name4=input('请 ...

  10. 洛谷P3916||图的遍历||反向建图||链式前向星||dfs

    题目描述 给出 NN 个点, MM 条边的有向图,对于每个点 vv ,求 A(v)A(v) 表示从点 vv 出发,能到达的编号最大的点. 解题思路 看起来很简单的一道题, 但我依然调了一天,我还是太菜 ...