Wordpress IP验证不当漏洞修复
近来阿里云服务器报警 Wordpress IP验证不当漏洞,修复方案如下。
漏洞原理
/wp-includes/http.php 文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF。
解决方案
备份并打开 wp-includes/http.php 文件
查找
$same_host = strtolower( $parsed_home['host'] ) === strtolower( $parsed_url['host'] );
替换成
$same_host = ( strtolower( $parsed_home['host'] ) === strtolower( $parsed_url['host'] ) || 'localhost' === strtolower( $parsed_url['host'] ) );
接着查找(最新版本已经修正,无需修改)
if ( 127 === $parts[0] || 10 === $parts[0]
修改成
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]
保存退出即可修复。