SpringSecurity3.1.3带参数绕过权限验证攻击系统问题
我使有springsecurity3.1.3,但是SS对带参的URL拦截不起作用,以致只要在本来要求有ADMIN权限的请求后面带上一些参数,就能绕过验证,访问到系统的资源。如:
/a.jap 这个资源要ADMIN权限才能访问,但是,用户可以使用/a.jsp?name=aa就绕过SS的权限认证了,
这个问题怎么解决呢?
spring
springsecurity
java
j2ee
security
------解决方案--------------------防盗链功能。过滤url吧
------解决方案--------------------难道不是把用户的权限放进session里面?
------解决方案--------------------不知道你的拦截器是怎么配置的
<security:intercept-url pattern="/a.jap" access="hasRole('ADMIN')" />
如果是上面那种方式,就该成下面这样
<security:intercept-url pattern="/a.jap*" access="hasRole('ADMIN')" />
------解决方案--------------------将url 放入数据库,通过url 取权限
------解决方案-------------------- 我觉得直接用个filter就可以搞定!(userid、roleid、sessionid,url,最好url编码一下等信息就可以搞定)
------解决方案--------------------假设拦截/user下面的:
<security:intercept-url pattern="/user/**" access="hasRole('ADMIN')" />