非官方:WordPress 2.8.3漏洞及修复
这个问题是国外一位爱好者发现的,被WopusIDC一个用户含笑发现,并及时在WopusIDC群里通报。
BUG描述:
漏洞文件:wp-login.php
漏洞产生原因:WordPress < = 2.8.3 Remote admin reset password
说白了就会跳过验证码重新设置管理员的密码,但是管理员不会收到邮件,攻击者也无法得知被修改的密码是什么。
但如果能取得管理员的mail权限,博客权限也就拿下了。
BUG修复:
修复方法:WP官方目前尚未发布该漏洞的patch,建议暂时禁用密码找回功能。临时解决方法如下:
使用编辑器打开wp-login.php文件,搜索
function reset_password($key) {
在函数的的第一行直接插入错误返回代码:
return new WP_Error('invalid_key', __('Invalid key'));
题外话:及时升级,多关注WordPress。
另外,尽量抹去自己博客的版本号,因为2.7也出现过这样的问题。漏洞都是针对某一个版本,所以隐藏版本号能很好的保护自己。
2.8.1会不会有问题? O.O
我这边的消息是只影响2.8.3.
官方还是一如既让的没有说明都影响哪些版本。
这个漏洞真… 手动修改就可以了么~
98tie.com飘过;p
有点不明白啊。
“重新设置管理员的密码,但是管理员不会收到邮件”
那“取得管理员的mail权限”,那还是拿不到密码啊。
这就是远程密码漏洞。其实没太大的价值。官方已经更新到WordPress 2.8.4.
有点大惊小怪
现在又升级了
漏洞永远解决不玩,呵呵
并不是大惊小怪。
如果被人连续修改密码呢?
只要有邮箱,没问题,但怕被邮箱spam。
对比了一下2.8.4的wp-login.php和给出的改法不太一样,还是升级比较好吧?
2.83版本以及之前的版本都有这个问题,修复方法:
1. 立即升级到2.84版本;2.修改wp-login.php文件,将190行的代码:if ( empty( $key ) ) 修改为: if ( empty( $key ) || is_array( $key ) )。
更多请参考:http://www.ihiro.org/the-reason-of-update-password-reset-loophole
(官方收集)
或 http://core.trac.wordpress.org/changeset/11798
可以升级了 2.8.4
说得很对,漏洞永远解决不玩的,升级就好了