WordPress漏洞IP验证不当

漏洞简介

WordPress程序的/wp-includes/http.php文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可以构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF等操作。

漏洞科普

SSRF是服务器端请求伪造,利用漏洞伪造服务器端发起请求,从而突破客户端获取不到数据的限制。

SSRF可以做什么:

  1. 内网外网的端口和服务扫描;
  2. 服务器本地敏感数据的读取;
  3. 内外网主机应用程序漏洞的利用;
  4. 内网外网Web站点漏洞的利用。

解决方案

修改/wp-includes/http.php文件中533行、549行,替换内容如下:

  • 533行
  1. $same_host = strtolower( $parsed_home[‘host’] ) === strtolower( $parsed_url[‘host’] );
  2. #改为
  3. 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行
  1. if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]
  2. #改为
  3. if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]  || 0 === $parts[0]
西数超哥学习乐园,西数超哥基础运维经验教程分享的学习乐园,西数超哥博客,运维经验教程交流学习分享的博客

原创文章,作者:zhang sir,如若转载,请注明出处:https://www.ysidc.top/439.html