|
发表于 2022-4-13 10:43:26
|
显示全部楼层
大概率是插件漏洞,楼主能说说用了什么插件吗?
3 \6 [' W$ ~. z- W* O贴个自己用的给WP后台登录地址加验证密码的方法:
. I v8 y- i( A( M1 B$ s6 l5 D7 E( O! [* m* ?! L
将以下代码加入到wordpress模板主题根目录下的functions.php文件中,请修改其中的12345678为自己定义的验证密码:
: d3 y: m7 o# m# }) h
4 p/ M5 w5 B+ }% D; e1 z5 h/ sdefined('_ADMIN_LOGIN_KEY') || define('_ADMIN_LOGIN_KEY', '12345678');3 x& n0 y* I4 s& i# p4 I* O
if((strpos($_SERVER['SCRIPT_NAME'], "/wp-admin/")===0 || $pagenow === 'wp-login.php') && defined('_ADMIN_LOGIN_KEY') && _ADMIN_LOGIN_KEY != ''){& C7 I' w% ~6 ~7 V5 @
add_action('init', function(){8 W# u6 U% R9 e+ @5 l
$cookie_key='_admin_login_key_' . md5(_ADMIN_LOGIN_KEY);- E$ c3 {% x' r0 c( q
$keyCookie = isset($_COOKIE[$cookie_key]) && !empty($_COOKIE[$cookie_key]) ? trim($_COOKIE[$cookie_key]):'';! G/ ]# B, L9 B4 N
$key = isset($_GET['adminkey']) && !empty($_GET['adminkey']) ? trim($_GET['adminkey']):'';
- x: N b- ]$ |* _! }, k3 i if($key == ''){
- w9 l# e6 t+ n6 W* g $key = $keyCookie;
/ @) t i9 e+ r8 z" e1 G3 G }
( g7 Y q$ L. b# D; q+ z if($key ==_ADMIN_LOGIN_KEY){
9 k7 a5 x( L0 f setcookie($cookie_key, $key);+ `$ [! z" a( h; F
}else{, E4 Y5 y' D% J6 B+ w5 t" B3 Q3 S
wp_safe_redirect(home_url(), 302);( N% c' ]. C( x
exit;
& K" f7 p2 f8 G; H/ K) O& [ }$ ^" j) x: N9 u' \3 K& g y- ?7 o
}, 1);
* u, R; m6 `- U) |; I9 _}
7 ^# O0 ^! [% i$ P7 d$ A' t
7 o/ l% s" S& V5 |' d( }+ J- w7 e( y6 d; P+ }) b2 w
修改后,直接访问后台登录地址http://www.你的域名.com/wp-login.php 不会显示登录框,会直接跳转到首页。
+ \. o! K" ?% `4 B# I必须使用以下格式登录后台(请修改其中的12345678为自己定义的验证密码):: x6 q# r6 o" t6 e
http://www.你的域名.com/wp-login.php?adminkey=123456781 u; k" E9 N9 \0 k. i+ V
|
|