wordpress IP验证不当漏洞(4.9.8版本)

oyhk 学习笔记

近日使用阿里云服务器搭建wordpress个人博客系统,云盾里检查到又漏洞。

漏洞信息

  • 漏洞名称:wordpress IP验证不当漏洞
  • 提示信息:wordpress /wp-includes/http.php文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF。

如何解决

找到对应的 /wp-includes/http.php,我的wordpress 4.9.8 版本在文件中的 533 行,代码截图

我们需要把这行代码修改为

具体代码
旧代码

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

修改为

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 IP验证不当漏洞(4.9.8版本)