WordPress 安全第二步:隐藏登录失败的「未知用户名」和「密码不正确」错误信息

前面介绍了 WordPress 安全第一步:防止用户名暴露,其实还有一个地方可能泄露用户名信息,在登录界面,暴力破解机器尝试使用用户名的时候,一些错误信息的提示,可能让暴露破解获得正确的用户名,这个属于安全隐患,需要处理。

默认情况下,在登录 WordPress 的时候,如果输入的用户名不存在,WordPress 会报「未知用户名」的错误:

「未知用户名」

如果用户名正确,密码错误的话,WordPress 会报「密码不正确」的错误:

「密码不正确」

这样是存在一定的安全隐患的,首先让暴力破解知道快速定位用户名,确定了用户名,只需要给他时间,就可以开始暴力破解了。

所以最好统一改成:「用户名或者密码错误」的错误信息,让猜去吧。

add_filter('wp_login_errors', function($errors){
	$error_code	= $errors->get_error_code();

	if(in_array($error_code, ['invalid_username', 'invalid_email', 'incorrect_password'])){
		$errors->remove($error_code);
		$errors->add($error_code, '用户名或者密码错误。');
	}

	return $errors;
});

还是那句话,安全是最重要的,所以一定要重视,隐藏错误信息,防止信息泄露是非常好的安全措施。

WPJAM 用户管理插件 已经集成该功能,直接启用即可。


©我爱水煮鱼,本站推荐使用的主机:阿里云,国外主机建议使用BlueHost

本站长期承接 WordPress 优化建站业务,请联系微信:「chenduopapa」。