天天看点

EasyWechat 3.0修复微信支付XXE漏洞

微信支付近期有XXE重大漏洞,如果不修复,可能会让您的支付功能停用。

使用了官方SDK还好说,那么,使用旧版本的EASYWECHAT用户该怎么修复呢?

1.首先,我们需要找到文件XXX\vendor\overtrue\wechat\src\Support\XML.php

2.我们更改文件中的parse方法(大概在38行)为

public static function parse($xml)
    {
        $backup = libxml_disable_entity_loader(true);

        $result = self::normalize(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_COMPACT | LIBXML_NOCDATA | LIBXML_NOBLANKS));

        libxml_disable_entity_loader($backup);

        return $result;
    }
           

加入了libxml_disable_entity_loader(true);漏洞即可修复完毕