PHP微信支付----xxe攻击

这两天,微信支付有bug的消息迅速传播,那这个到底是什么导致的呢:

微信支付后回调通知的xml文件中,被人恶意添加数据,导致返回信息不准确,微信有官方文档说明:点击打开链接

我们项目用的是PHP作为开发语言,接到领导通知要我看看我们的项目有没有受影响,可是,这个支付功能是很久以前就写好的,而我才来不久,也没接触过微信支付的功能,心中已泪千行, 不知从何下手大哭

于是,就疯狂找资料,了解到,微信官方提出的解决方案为一个函数:libxml_disable_entity_loader(true); //防止引入外部xml文件,那么,它具体要被加到哪里呢,很疑惑。。。。

看了资料,关于xml和array相互转换,在xml数据转换为array时,要加这一个函数:点击打开链接

后来,又看资料说更新一下微信支付的sdk包,因为微信的sdk已修复了这个bug,这下,终于找到地方了大笑

下载最新安装包后,就与线上的旧sdk进行对比,最后发现新sdk,lib/WxPay.Data.php中新增libxml_disable_entity_loader(true)函数




猜你喜欢

转载自blog.csdn.net/zhangzhangdan/article/details/80929875