System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于session和注解的安全加固系统技术方案_技高网

一种基于session和注解的安全加固系统技术方案

技术编号:40541735 阅读:5 留言:0更新日期:2024-03-05 18:57
本发明专利技术涉及一种基于session和注解的安全加固系统,配置有业务平台,配合业务平台设有拦截器;业务平台通过代理服务器接收前端页面或第三方平台的登录认证请求,生成session,前端页面或第三方平台发起数据新增请求,拦截器进行拦截并基于session加密注解,前端页面或第三方平台基于加密信息再次请求,拦截器再次拦截并基于session解密,反馈前端页面或第三方平台的请求。本发明专利技术加密和解密的过程由后端服务处理,前端无感知,对原有后端业务无影响;加密密钥随机生成且密钥具有时效性,每次登录时都进行变化且每次不相同;可扩展集成第三方加密机进行处理;使用切面编程,对原有业务不影响。

【技术实现步骤摘要】

本专利技术涉及数字信息的传输、电数字数据处理的,特别涉及一种基于session和注解的安全加固系统


技术介绍

1、态势感知是一种基于环境的、动态的、全面的洞察安全风险的能力,其以安全大数据为基础,从全局的角度提高对安全威胁的发现识别、理解分析和处理反应能力,使得在大规模网络环境下,对能够引起网络态势变化的安全要素进行获取、理解、显示和预测,从而实现有关安全的决策和行动。

2、随着态势感知平台护网行动的开展,对平台进行全面的安全测试,其中包括代码审计;通过代码审计,发现很多网络接口存在纵向越权问题。纵向越权是指低级别攻击者尝试访问高级别用户的资源的行为,由于web应用没有进行权限控制或仅仅在菜单上实施了权限控制,进而导致恶意用户只要猜测其他管理页面的url就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的;此情况很有可能产生在数据主键自增的数据访问请求中,攻击者通过浏览器对请求的数据进行记录,猜忌请求uri、数据信息,从而通过工具或更改javascript伪造请求,最终达到越权访问数据的目的。例如在页面的列表中可以确定有100条数据,而通过点击列表详情按钮可以自增地查询详情,而没有进行任何限制,导致详情接口能看到超过100条之外的数据。

3、事实上,当前还存在部分公共接口不能根据用户权限进行数据查询的问题,相对于纵向越权还进一步产生了逻辑处理矛盾。

4、公开号为cn112003847a的中国专利提供了一种前端权限访问的方法和设备,将系统中所有的url链接进行过滤;将sid信息进行拼接并与过滤后的url链接使用加密算法进行加密以生成加密字符串;将加密字符串进行随机乱序排列以生成唯一标识;将唯一标识进行解析,并将解析后的信息与后端存储的sid信息进行拼接所生成的字符串进行对比;响应于解析后的信息与字符串相同,将过滤后的url链接转发至底层接口以获取数据并呈现给用户。虽然此专利公开的技术能有效防范接口的纵向越权,但也反应了当前的现状,即:

5、(1)目前的加密一般在前端进行,很容易被获取加密方法、进行破解;

6、(2)前端加密密钥容易被发现,安全性没有保障。


技术实现思路

1、本专利技术解决了现有技术中存在的问题,提供了一种基于session和注解的安全加固系统,采取对主键id进行后端加密和解密处理,使得前端无法自增数据的值和含义,从而无法越权、解决纵向越权的问题。

2、本专利技术的技术构思为,在后端服务器对查询字段主键进行加密,然后将加密的密文返回至前端,前端根据主键密文发起请求进行查询,后端服务将密文进行解密、还原原始主键,然后根据原始主键完成数据的查询并返回至前端;由于采用随机加密的方式,密钥随机生成uuid信息且uuid信息只存在于session中,前端无感知,而每个用户登录后uuid不同,即就算前端获得密文主键值,在后端处理请求时,由于uuid不一致,对应的主键无法解密从而查询失败,解决不同用户盗用主键值数据越权的问题。

3、本专利技术所采用的技术方案是,一种基于session和注解的安全加固系统,所述系统配置有业务平台,配合所述业务平台设有拦截器;

4、业务平台通过代理服务器接收前端页面或第三方平台的登录认证请求,生成session,前端页面或第三方平台发起数据新增请求,拦截器进行拦截并基于session加密注解,前端页面或第三方平台基于加密信息再次请求,拦截器再次拦截并基于session解密,反馈前端页面或第三方平台的请求。

5、优选地,所述业务平台包括登录认证模块,用于接收前端页面或第三方平台的登录认证请求并进行用户名和密码认证、生成session。

6、优选地,登录认证包括以下步骤:

7、步骤1.1:前端页面或第三方平台发起登录认证请求,登录认证模块获取请求提交的登录认证参数,根据参数获取用户信息并向数据库发起信息查询;

8、步骤1.2:若数据库返回用户不存在,则认证失败,退出,否则进行下一步;

9、步骤1.3:对用户名和密码成对认证,认证通过则进行下一步,否则认证失败,退出;

10、步骤1.4,对当前登录认证生成session及对应的uuid,存储信息至session中;

11、步骤1.5:将session转化为cookie信息,返回给前端页面或第三方平台。

12、优选地,前端页面或第三方平台再次发起请求时,进行登录认证,登录认证模块根据cookie获取对应session,获取步骤1.4中存储的信息。

13、优选地,所述请求为新增数据请求,登录认证模块获取session并进行校验,校验通过后对前端页面或第三方平台携带的表单数据进行合法性校验,再次校验通过后使用雪花算法生成新增数据的主键id,将主键id赋值于表单数据并一同存储到数据库中。

14、优选地,所述拦截器包括加密拦截器和解密拦截器。

15、优选地,当类的属性被加密注解时,则属性赋值时触发加密拦截器,加密拦截器对原始值进行加密;

16、当类的属性被解密注解时,则密文赋值该属性值时触发解密拦截器,对密文进行解密,赋值原始值。

17、优选地,主键id赋值于表单数据并一同存储到数据库中后,对被注解的属性进行拦截,获取session,并从session中获取存储的信息拼接成加密密钥key,以key将主键id生成对应的加密主键id值keyid并返回至前端页面或第三方平台。

18、优选地,前端页面或第三方平台基于keyid发起查询表单详情请求,登录认证模块校验登录认证session,若主键id请求接收参数被注解,则以解密拦截器拦截,从session中获取存储的信息拼接成加密密钥key,对keyid进行解密,得到原始主键id。

19、优选地,所述业务平台还包括实时预警模块、实时通报模块、工作汇报模块。

20、本专利技术涉及一种基于session和注解的安全加固系统,配置有业务平台,配合业务平台设有拦截器;业务平台通过代理服务器接收前端页面或第三方平台的登录认证请求,生成session,前端页面或第三方平台发起数据新增请求,拦截器进行拦截并基于session加密注解,前端页面或第三方平台基于加密信息再次请求,拦截器再次拦截并基于session解密,反馈前端页面或第三方平台的请求。

21、本专利技术的有益效果在于:

22、(1)加密和解密的过程由后端服务处理,前端无感知,对原有后端业务无影响;

23、(2)加密密钥随机生成且密钥具有时效性,每次登录时都进行变化且每次不相同;

24、(3)可扩展集成第三方加密机进行处理;

25、(4)使用切面编程,对原有业务不影响。

本文档来自技高网...

【技术保护点】

1.一种基于session和注解的安全加固系统,其特征在于:所述系统配置有业务平台,配合所述业务平台设有拦截器;

2.根据权利要求1所述的一种基于session和注解的安全加固系统,其特征在于:所述业务平台包括登录认证模块,用于接收前端页面或第三方平台的登录认证请求并进行用户名和密码认证、生成session。

3.根据权利要求2所述的一种基于session和注解的安全加固系统,其特征在于:登录认证包括以下步骤:

4.根据权利要求3所述的一种基于session和注解的安全加固系统,其特征在于:前端页面或第三方平台再次发起请求时,进行登录认证,登录认证模块根据cookie获取对应session,获取步骤1.4中存储的信息。

5.根据权利要求4所述的一种基于session和注解的安全加固系统,其特征在于:所述请求为新增数据请求,登录认证模块获取session并进行校验,校验通过后对前端页面或第三方平台携带的表单数据进行合法性校验,再次校验通过后使用雪花算法生成新增数据的主键ID,将主键ID赋值于表单数据并一同存储到数据库中。

6.根据权利要求5所述的一种基于session和注解的安全加固系统,其特征在于:所述拦截器包括加密拦截器和解密拦截器。

7.根据权利要求6所述的一种基于session和注解的安全加固系统,其特征在于:当类的属性被加密注解时,则属性赋值时触发加密拦截器,加密拦截器对原始值进行加密;

8.根据权利要求7所述的一种基于session和注解的安全加固系统,其特征在于:主键ID赋值于表单数据并一同存储到数据库中后,对被注解的属性进行拦截,获取session,并从session中获取存储的信息拼接成加密密钥Key,以Key将主键ID生成对应的加密主键ID值KeyID并返回至前端页面或第三方平台。

9.根据权利要求7或8所述的一种基于session和注解的安全加固系统,其特征在于:前端页面或第三方平台基于KeyID发起查询表单详情请求,登录认证模块校验登录认证session,若主键ID请求接收参数被注解,则以解密拦截器拦截,从session中获取存储的信息拼接成加密密钥Key,对KeyID进行解密,得到原始主键ID。

10.根据权利要求1所述的一种基于session和注解的安全加固系统,其特征在于:所述业务平台还包括实时预警模块、实时通报模块、工作汇报模块。

...

【技术特征摘要】

1.一种基于session和注解的安全加固系统,其特征在于:所述系统配置有业务平台,配合所述业务平台设有拦截器;

2.根据权利要求1所述的一种基于session和注解的安全加固系统,其特征在于:所述业务平台包括登录认证模块,用于接收前端页面或第三方平台的登录认证请求并进行用户名和密码认证、生成session。

3.根据权利要求2所述的一种基于session和注解的安全加固系统,其特征在于:登录认证包括以下步骤:

4.根据权利要求3所述的一种基于session和注解的安全加固系统,其特征在于:前端页面或第三方平台再次发起请求时,进行登录认证,登录认证模块根据cookie获取对应session,获取步骤1.4中存储的信息。

5.根据权利要求4所述的一种基于session和注解的安全加固系统,其特征在于:所述请求为新增数据请求,登录认证模块获取session并进行校验,校验通过后对前端页面或第三方平台携带的表单数据进行合法性校验,再次校验通过后使用雪花算法生成新增数据的主键id,将主键id赋值于表单数据并一同存储到数据库中。

6.根据权利要求5所述的一种基于session和注解的安全...

【专利技术属性】
技术研发人员:蒋廷金谭波涛
申请(专利权)人:杭州安恒信息安全技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1