公司开发的产品.在用软件扫描漏洞时,扫出了这么一个漏洞.
可以看出有漏洞的地方是登录页面.在登录中,主要逻辑如下: 一些拒绝登录是通过抛异常->然后捕获异常->获取异常信息->跳回到登录页面并展示错误信息. 下面为代码示例
@RequstMapping("login")
public String login(LoginForm loginForm){
try{
myService.doLogin(loginForm);
}catch(Exception e){
request.setAttribute("errorMessage", e.getMessage());//把错误信息提示给用户
return "login";
}
return "index";//成功登录进入主页
}
public void doLogin(LoginForm loginForm)){
if(...){
throw new BusiException("账号被挂起,暂不能登录。");
}
if(...){
throw new BusiException("账号或密码错误");
}
}
感觉异常都可以被正常捕获, 并把错误信息正常提示给用户.
找了很久都不知道是哪里