基本信息
标题:WordPress IP 验证不当漏洞
简介:
WordPress /wp-includes/http.php 文件中的 wp_http_validate_url 函数对输入 IP 验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行 SSRF。
解决方案:
方案一:使用云盾自研补丁进行一键修复;
方案二:更新该软件到官方最新版本或寻求该软件提供商的帮助。
【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了该漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示】
说明
路径:/wp-includes/http.php
修复命令/修复方法:
找到/wp-includes/http.php 这个文件,在文件的465行附近找到:
$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; } ;
在文件的478行左右找到:
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]
修改为:
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] || 0 === $parts[0]