阿里云的云盾提醒“WordPress IP验证不当”,具体信息是“wordpress /wp-includes/http.php 文件中的 wp_http_validate_url 函数对输入 IP 验证不当,导致黑客可构造类似于 012.10.10.10 这样的畸形 IP 绕过验证,进行 SSRF”。它残忍的给出了两个方案:“自己流弊自己搞定,自己小白花钱我罩着!”
这样的方式我感觉有点像收保护费的意思,但是确实用户有这个诉求存在,普通用户不可能有精力和能去去盯着和解决安全漏洞。于是这样一个有着商业价值的需求自然会诞生商业的运作并呈现给我们。虽然一般用户是很不情愿花这笔钱的,这就跟现实中一般人请不起保镖一样,更多时候更愿意买一份保险,事后兜底。
为了省钱,当然人家提醒了你有漏洞,你也不能熟视无睹,万一哪天出问题了还是自己损失。于是我们下意识的搜索了一下,看看是不是有大侠放出了免费的解决办法。一搜之下,还真多,仔细看看基本是复制转帖的。但是看到下面这个感觉“是真的吗?”。就算不懂php,你这修不修改不是一回事么?传播的还挺广泛…这些人复制粘贴根本不管对错,让人有点担忧。
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] 将这段代码注释,然后在后面增加
if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] || 0 === $parts[0] 即可
其实是两处修改的地方,在wordpress目录下找到 wp-includes/http.php
第一处
/*将这一行代码 删除 */$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;};
第二处
(新版本WordPress此处已修改)/*将这一行代码 删除 */if ( 127 === $parts[0] || 10 === $parts[0]/* 并添加修改为这样 */if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]
现在用wordpress的用户确实越来越少了,加入的新用户少,旧有的用户在流失。最起码流行的也是“hexo + github”打一个静态博客。复制粘贴型的重量级选手当然是那些伪自媒体,开个百家号,在知道问答里恣意粘贴着所谓的回答,粘贴着连自己都不知道对错的是是而非的答案。好心又廉价的小白也在盲目转帖转发而根本不去深究。
导致的就是一个错误修复代码悄无声息的传播了,虽然附加的代码没什么危害,但这种众人盲目的行为确实又开启了一个漏洞,为社会工程学攻击提供的一种途径。
参考: