[发明专利]基于策略推导的Web应用程序访问控制漏洞测试用例自动生成方法在审
申请号: | 201710017701.X | 申请日: | 2017-01-10 |
公开(公告)号: | CN106874194A | 公开(公告)日: | 2017-06-20 |
发明(设计)人: | 许静;文硕;徐亦凡;过辰楷;魏大鹏;张彪;王扬 | 申请(专利权)人: | 南开大学;国网天津市电力公司信息通信公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 天津佳盟知识产权代理有限公司12002 | 代理人: | 侯力 |
地址: | 300071*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 策略 推导 web 应用程序 访问 控制 漏洞 测试 自动 生成 方法 | ||
【技术领域】
本发明属于Web应用技术领域,具体涉及漏洞检测和测试数据自动生成,特别是一种基于策略推导的Web应用程序访问控制漏洞测试用例自动生成的方法。
【背景技术】
随着Web技术的成熟化与软件系统的复杂化,Web应用中的各种安全问题也层出不穷,访问控制漏洞就是其中重要的一类,它允许攻击者去绕过应用的安全策略来访问未授权的敏感信息或进行非法操作。Web应用所具有的开放性特点使得网络用户通过Web客户端提交请求后,数据库服务器无法对服务请求者的身份进行安全和合法性校验。为保证Web应用的访问安全性,代码编写者通常在Web服务器的应用逻辑中加入访问控制机制。尽管许多Web应用设计了一定的访问控制机制,但因为安全细节极其琐碎复杂、代码编写者的疏漏等原因使得在Web应用开发过程中,实际在客户端与服务器之间实现的访问控制机制往往与预期定义的访问控制策略存在差异,这种差异就造成了Web应用中的访问控制漏洞。因而,对Web应用的访问控制漏洞检测也成为Web应用安全检测的一大重点。
目前,针对Web应用程序的访问控制漏洞检测,主要有动态分析以及静态分析两种测试手段。静态分析的方法通过对Web应用程序的源代码进行分析,从而提取程序设计时的预期访问控制机制以检测Web应用程序的访问控制漏洞。该方法需要获取Web应用程序的源代码进行分析以推导代码的逻辑结构,但现有的研究成果均存在只针对某种特定代码编写语言或存在一定漏报误报等问题。动态分析通过观察Web应用程序正常运行的行为,从而推导预期访问控制机制以检测访问控制漏洞。相比静态分析的方法而言,动态分析的方法不需要获取程序的源代码,整个分析过程基于Web应用程序的运行,更注重对程序的功能进行分析,具有良好的便利性。所以使用动态分析来推导Web应用程序预期访问控制机制,进而检测访问控制漏洞的方法得到越来越多的关注。在使用动态分析进行Web应用程序访问控制漏洞检测的研究方法中,漏洞检测的准确性,与生成测试用例的优劣密切相关。
【发明内容】
本发明的目的是弥补Web应用中访问控制漏洞检测方面的不足,主要针对之前报道的检测方法漏报率较高,对运行后重定向漏洞的检测空白的问题,提出一种检测漏洞较为全面,测试用例数量精简,效率比较高的访问控制漏洞测试用例生成方法。该方法的基础是Web应用基于用户与角色的访问控制策略,设计了一种基于策略推导的访问控制漏洞测试用例生成方法。
本发明提供的基于策略推导的Web应用程序访问控制漏洞测试用例自动生成方法,主要包括以下步骤:
步骤1、通过推导同角色下所有用户被授权的操作集合,得出基于角色的访问控制策略;
首先,用户从客户端向Web应用程序发送网络请求,Web应用接收到网络请求后对用户身份进行验证,然后根据用户的角色权限生成对应的数据库请求并发送到数据库端。数据库端接收到数据库请求后,数据库端返回数据库响应至Web应用程序端。根据这一原理,驱动不同角色下的用户根据自身授权发送请求,并通过网络抓取工具抓取这一会话过程,并且过滤冗余信息,只剩下网络请求与数据库响应部分,直到遍历所有角色。然后通过遍历之前得到的会话合集,通过匹配网络请响应求与数据库请求响应的一致性,即将同一角色下的用户执行操作所发出的网络请求以及与它对应的数据库回应也就是数据库返回的数据及数据位置相匹配,从而得到角色下用户的被授权的访问操作集,这就是基于角色的访问控制策略。
步骤2、通过同角色下收集不同用户被授权的特有参数集得出基于用户的访问控制策略;
所述基于用户的访问控制策略是:同一角色下不同用户被授权的特有参数集合;基于用户的访问控制策略的推导方法,具体推导过程分为两个部分,一是直接约束,二是间接约束。直接约束部分从交互样本中提取拥有共同角色的每个用户的访问操作及其参数,对相同操作的参数进行一致性匹配,得到一个操作下每个用户的被授权的参数集合。然后,对参数集合进行去重,去除不同用户拥有的重复参数,从而得到用户特有的授权参数集合,即得到用户的直接约束集合。间接约束的操作参数从属于上一个操作所返回的响应数据集,即间接约束对应的操作的上一个操作为可返回响应数据集的直接约束读操作。对间接约束的操作参数集的推导,需分析当前访问操作的上一个操作。即间接约束的推导需要对参数传输中的两个相关操作进行分析。将直接约束与间接约束合并,就得到了用户的访问控制操作极其对应的参数集,即为基于用户的访问控制策略。
步骤3、基于前两步所推导的访问控制策略驱动角色下的用户得到合法的测试用例;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南开大学;国网天津市电力公司信息通信公司,未经南开大学;国网天津市电力公司信息通信公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710017701.X/2.html,转载请声明来源钻瓜专利网。