紧急修复wordpress IP验证不当漏洞
在之前的时候,登录阿里云,然后看到一个cms漏洞,“wordpress IP验证不当漏洞”,然后在网上搜索了以下,解决方法,都是一样,虽然当时解决了漏洞,但是没有多久,漏洞有出来了,今天终于找到了方案。
以前的解决方法:
$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; };
———————–分割线————————–
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]
替换成
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] || 0 === $parts[0]
懂代码的人,一看就看了出来,这只是一个判断域名,没有做IP验证,所以漏洞实际上没有彻底修复。
正确解决方法如下:
preg_match(‘#^(([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)\.){3}([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)$#’, $host)
替换为
preg_match(‘#^(([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d|0+\d+)\.){3}([1-9]?\d|1\d\d|25[0-5]|2[0-4]\d)$#’, $host)
关于漏洞修复,就为大家介绍这里了,大家可以尝试一下。
声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益 请联系邮箱:1608196816@qq.com 我们将配合处理!