目录
Toggle之前有一个客户的网站收到网安发送的网络安全技术检测报告,说是网站存在安全漏洞——用户名枚举漏洞。这其实是WordPress集成的REST API功能,在一些特定情况下,这个功能是有用的,比如某些插件可能会用到,有用户注册功能的网站也可能需要用到。一般情况下对国内的很多网站来说没什么用。
另外再说一下,只有已备案的网站才会收到这个提醒,外贸网站一般可以不用管它。
如果你的网站是放在国内的且已经备案,那么当收到这种网安提醒时,按要求整改即可,不必惊慌。根据不同的网站情况,这里提供两种类型的修复方法供大家参考。
可以使用代码屏蔽,也可以使用插件,这里建议新手用户优先使用插件,这个最简单。在wordpress网站后台搜索rest api,找到【禁用WP REST API】插件,安装启用即可。也可以通过https://cn.wordpress.org/plugins/disable-wp-rest-api/ 链接下载,再手动上传安装并启用。
如果不想安装插件,也可以使用下面的代码来屏蔽,里面的中文提示可自己修改。
add_filter('rest_authentication_errors', fn($access)=> new WP_Error('rest_cannot_acess', 'REST API已屏蔽', ['status' => 403]));
上面的代码放到当前使用的wordpress主题文件的functions.php文件中,也可以使用code snippets这类的代码托管插件添加,然后保存即可。
如果你的网站有用户注册功能,是社区网站、论坛、或商城,使用方法一之后有可能会出现用户不能注册的问题,如果出现了这样的问题,那就试试方法二。悦然wordpress建站在自己的网站实测过,方法二不影响用户注册。
add_filter('rest_endpoints', function($endpoints){
if(isset($endpoints['/wp/v2/users'])){
unset($endpoints['/wp/v2/users']);
}
if(isset($endpoints['/wp/v2/users/(?P<id>[\d]+)'])){
unset($endpoints['/wp/v2/users/(?P<id>[\d]+)']);
}
return $endpoints;
});
这里可以使用上面的代码,同样的,把它放到当前使用的wordpress主题文件的functions.php文件中,然后保存即可。
上面的代码添加后我们可以在未登陆状态下,或者是在浏览器的隐私模式下,打开下面的链接,把网址换成你的网站地址即可。
https://你的网址/wp-json/wp/v2/users/
然后在浏览打开,如果出现类似上面的提示,且内容中没有出现你的网站用户名,那就表示修复成功了。
有些地区的网安可能还要求你修复之后给个反馈,当你参考方法1或方法2处理好之后,填写一下他们提供的反馈表格就可以了。
© Copyright 2024. 悦然网络工作室/悦然wordpress建站 专注中小企业wordpress建站 All Rights Reserved.网站地图
本站图片来源为Pexels、Pixabay、Freepik、Unsplash等图片库的免费许可,CC0协议;还有部分为自己手绘,版权碰瓷请自重!法律服务:law@yueranseo.com 蜀ICP备20016391号-1 川公网安备 51011502000367号