其实吧,这不算是个漏洞~😂
从CVE-2020-21493披露漏洞信息:Xiuno BBS 中存在访问控制错误漏洞,该漏洞源于产品route/user.php允许对用户名进行检索。以下产品及版本受到影响:Xiuno BBS v4.0.4 版本。
复现步骤
route\user.php line 67-82;
简单来说,就是在xiuno的登陆页面,邮箱故意输入错误字符test,密码任意字符,点击登录按钮会提示“用户名不存在”。
按提交者思考逻辑,检查到错误邮箱地址时,错误的执行了用户查询函数(将邮箱作为用户名);但实际上,这正是xiuno登录的功能,同时检查有没有用邮箱作为用户名注册的用户,从而实现登录接口从“邮箱+密码”或“用户名+密码”登录。可能是因为参数名称固定为email而导致了误解。
不过这里既然被人作为漏洞提出来了,那就勉为其难的“修复”吧。
修复步骤
从上面的描述,我们发现route/user.php文件的第80-81行,
这两行代码完全没有必要,我们可以改成:
这样就可以直接弹出is_email函数返回的报错信息了。
![[xiuno漏洞修复]访问控制错误漏洞修复(CVE-2020-21493)](upload/attach/202507/1_VUDC6Q5Q5SFSJ8A.jpeg)
所以按上述方法便可以修复该漏洞了,但同时失去了使用“用户名+密码”登录的功能。
暂无评论