漏洞名称:wordpress IP验证不当漏洞
提示信息:wordpress /wp-includes/http.php文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF。
解决方案:
修改/wp-includes/http.php文件中533行、549行,替换内容如下:
533行
$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; } ;
549行
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]
#改为
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] || 0 === $parts[0]
以上两处修改完成后,保存文件。再次验证漏洞时,可以看到,漏洞已经不见了。
本文已通过「原本」原创作品认证,转载请注明文章出处及链接。