WordPress防黑攻略:wp-login.php访问限制


最近WordPress被黑客恶意破解后台管理员登录密码的消息弄的满城风雨,不少博主已经中招。

众所周知,WordPress系统的默认后台登录地址为wp-login.php,如果自己没有特别用心去做修改的话,那么任何人都可以转到登录界面。现在的密码字典穷举软件太多,说不定什么时候自己的博客就中招了。

为了避免后台登录地址直接暴露在别人眼前,我们可以给wp-login.php加上一个访问限制。

方法1:更改wp-login.php文件

打开网站安装的根目录找到wp-login.php,在55行左右找到如下代码:
[php]
if ( $shake_error_codes && $wp_error->get_error_code() && in_array( $wp_error->get_error_code(), $shake_error_codes ) )
add_action( ‘login_head’, ‘wp_shake_js’, 12 );
?>
[/php]
在上方这段代码的下面,添加如下代码
[php]
<?php
if($_GET["test"]!="xxx"){//此行的两个参数可以任意定义
header(‘Location:http://www.baidu.com’);
} ?>
[/php]

这样直接访问www.xxx.com/wp-login.php,就会自动跳到百度首页。
真正的地址是www.xxx.com/wp-login.php?test=xxx

方法2:更改主题文件functions.php文件

这个比较简单,直接在主题目录的functions.php中添加以下代码即可
[php]
add_action(‘login_enqueue_scripts’,’cracker’);
function cracker(){
if($_GET[‘test’]!= ‘xxx’) header(‘Location:http://www.baidu.com’);
}
[/php]

6 Responses Comment (6) Trackback (0)
  1. imxiaoyao66 :

    修改后依然会被攻击,还是能访问到我的wp login,求办法?

  2. 维也纳 :

    谢谢博主的分享,之前用ithemes security插件实现隐藏后台登陆地址,最近升级插件后,居然失败了,不知是否是bug,只好参考您的方法,顺利实现。

  3. SingleX :

    用这个方法,必须保证记住密码。。。。要想通过“忘记密码”功能找回是不可能的,因为跳转会出错!

  4. tiandi :

    不错,可以借鉴。不过为啥不直接把login.php文件名换了呢。

  5. yxiao :

    很好。已使用

发表评论