ruoyi-fast升级shiro,解决漏洞Apache Shiro RequestDispatcher 权限绕过漏洞(CVE-2022-40664)

        项目中使用的shiro是1.6.0,由于存在权限绕过漏洞,现需要将shiro升级至1.10.0以上,来解决漏洞,直接升级pom文件中shiro-core版本后,出现无法登陆,一直报验证码错误的情况。

        由于ShiroFilter在两个版本间的代码区别,所以在ShiroConfig文件中,还需要做一些修改调整,需要将ShiroFilterConfiguration配置上,直接贴代码。

在ShiroConfig.java文件中,增加如下代码

@Bean
public ShiroFilterConfiguration shiroFilterConfiguration() {
    ShiroFilterConfiguration configuration = new ShiroFilterConfiguration();
    configuration.setFilterOncePerRequest(true);//配置为true
    return configuration;
}

并对shiroFilterFactoryBean设置ShiroFilterConfiguration,同样是在ShiroConfig.java文件

@Bean
public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager){
ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
    //...省略其他相关代码
    // 设置为上面的shiroFilterConfiguration
    shiroFilterFactoryBean.setShiroFilterConfiguration(shiroFilterConfiguration());
    //...省略其他相关代码
    return shiroFilterFactoryBean;
}

        设置完成后,项目正常启动,正常登录,不再报验证码错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值