阿里云提示wordpress IP验证不当漏洞 修复 图文教程

来源: 老季博客
日期: 2018-5-6
作者: 腾讯云/服务器VPS推荐评测/Vultr
阅读数: 49

阿里云经常提示有wordpress IP验证不当漏洞,实际上这个漏洞影响并不大,阿里云只是为了让你购买它的付费版的云盾服务器安全服务(安骑士)。其实我们自己手动就可以修复这个漏洞,下面是如何修复漏洞的方法。

漏洞名称:wordpress IP验证不当漏洞

补丁编号:7292650

补丁文件:wp-includes/http.php

补丁来源:云盾自研

漏洞描述:
wordpress /wp-includes/http.php文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF。【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了改漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示】

漏洞修复方法:

找到wp-includes/http.php这个文件,在文件的526行(不同的WordPress版本行数不同,可以搜索下面代码来找出这个位置)附近找到:

$same_host = strtolower( $parsed_home['host'] ) === strtolower( $parsed_url['host'] );

把上面这行代码删除,然后添加下面代码。

if (isset($parsed_home['host'])) {
    $same_host = (strtolower($parsed_home['host']) === strtolower($parsed_url['host']) || 'localhost' === strtolower($parsed_url['host']));} else {
    $same_host = false;};

如果你的 WordPress 版本不是最新版,在 541行左右找以下代码(最新版WordPress已经不需要修改这一项了。)

if ( 127 === $parts[0] || 10 === $parts[0]

替换成

if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]

如果发现上面这行代码跟源文件中的一样,则不用修改了,最新版 WordPress 已经是这样的代码了。。

修改完之后,登录阿里云,打开云盾服务器安全,找到这个漏洞,在后面点击验证一下,验证通过之后,就不提示这个漏洞了。

链接到文章: https://jiloc.com/43586.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注