一种基于缺陷的软件安全性测试需求的获取与分级方法

文档序号:6486138阅读:1149来源:国知局

专利名称::一种基于缺陷的软件安全性测试需求的获取与分级方法
技术领域
:本发明涉及软件安全性测试,尤其涉及一种基于缺陷的软件安全性测试需求的获取与分级方法。
背景技术
:软件安全性测试作为保证软件安全性的一种重要途径,对于为软件产品进行安全性评价具有重要的意义。根据国家的规划,软件测试技术将作为保证软件产品安全性的重要手段,力争使测试越早介入软件开发,从而提高软件抵御潜在风险的能力,降低软件的安全缺陷率。软件安全性测试需求的获取是生成软件安全性测试用例进行实际测试的基础。目前在提取软件安全性需求方面主要采取的是安全性用例技术,通过描述假想的异常场景,进而人工分析提出可能存在的安全性缺陷。然而这种获取软件安全性测试需求的方法缺点是A.需要专业的软件安全性需求分析人员,并有从事软件安全性分析的大量经验;B.获取软件安全性需求的人为主观性较大;C.获取软件安全性需求时容易造成遗漏或重复;D.不能对需求进行优先级确定。软件安全性测试需求的准确、全面获取一直是软件测试技术所追求的目标之一,但这是一个极为复杂的问题,就目前的研究成果而言,离全面准确还存在相当大的距离。但其成功解决对提高软件质量,缩短软件测试时间都具有十分重要的理论意义和使用价值。
发明内容发明目的为了克服现有技术中存在的不足,本发明提供一种基于缺陷的软件安全性测试需求的获取方法,以安全性缺陷为基础,在对典型缺陷进行三维结构缺陷分类的基础上,根据基于数据交互边界的方法初步确定被测件中潜在的安全性缺陷及其位置,进而得到软件安全性测试需求,并对软件安全性缺陷进行优先级划分。技术方案为实现上述目的,本发明采用的技术方案为一种基于缺陷的软件安全性测试需求的获取方法,包括如下步骤(1)确定软件所涉及数据的信息来源,对用户的访问类型进行分类;(2)根据不同的访问类型确定用户风险等级;(3)根据软件结构绘制第0层带有数据交互边界的数据流图;(4)抽取出第0层数据流图中的数据交互路径列表;(5)根据用户风险等级,确定可能存在缺陷的交互路径及其危险等级;(6)对步骤(5)中确定的危险等级高的交互路径,对第0层基于数据交互边界的数据流图进行分解,抽取第1层基于数据交互边界的数据流图;(7)对步骤(6)中得出的第1层基于数据交互边界的数据流图,基于典型软件安全4性缺陷,确定穿越数据交互边界的数据流信息可能存在的缺陷;(8)根据步骤(7)中确定的缺陷,确定软件安全性测试需求。一种根据上述方法获得的软件安全性测试需求,采用PDDAR模型实现对测试需求的分级的方法,包括如下步骤(1)确定缺陷的普遍性/流行性属性PE等级,为广泛、高、普通或者有限所述普遍性/流行性(PEPrevalence)也就是缺陷在当前同类软件中可能存在的可能性。可以分为广泛、高、普通和有限四个等级广泛这种缺陷在实际项目中最为常见,限制这种类型的不超过四类;高这种缺陷经常会遇到,但是并不是最常见的;普通这种缺陷偶尔也会在实际中遇到;有限这种缺陷在实际项目中,很少或者几乎没有被发现过。对于普遍性的度量我们采用交叉比较的方法a相关漏洞在CWE漏洞数据库中的排名,b软件安全性缺陷相关威胁在OWASP威胁数据库中的排名,c软件安全性缺陷相关漏洞是否在Microsoft已发布的漏洞数据库中,d相应软件安全性缺陷在以往的测试过程中出现的次数(初始设为0)。(2)确定缺陷的危害性属性DP等级,为关键、高、中等或者低所述危害性(DP=DamagePotential)如果软件安全性缺陷被非法执行,则会对软件系统或者用户的使用产生的破坏程度。可以分为关键、高、中等和低四个等级关键这种缺陷的危害等级最高,所以应该立即进行修正,如果这种缺陷被非法利用,则会造成严重的破坏,在选择或者相互比较确定典型缺陷列表时,通常设定危害等级为关键的一般限制在四个以内;高这种缺陷的危害等级也是很高,但是相对于关键类型较低;中等这种缺陷也是一定要上报的,但是并不是非常紧要的;低种缺陷不一定需要上报,或者并不需要进行及时的修改。(3)确定缺陷的可探测性属性DE等级,为容易、一般或者困难所述可探测性(DEdetectable)软件中软件安全性缺陷可能被非法用户探测到的可能性,容易探测到,意味着缺陷容易被利用,容易产生攻击。可以分为容易、一般和困难三个等级容易已存在自动化工具或者技术可以自动化探测缺陷,或者通过简单的操作就可以被发现;—般仅仅通过自动化工具或者成熟技术不能发现缺陷,软件安全性缺陷的探测可能需求对程序的逻辑结构有一定的了解;或者通过现有的攻击工具,只能在少数情况下发现缺陷;困难发现这种缺陷需要花费大量的时间、手工执行的方法,以及智能的半自动化工具的支持和专业的攻击技术。(4)确定缺陷的影响用户级别属性AU等级,为管理员、多个普通用户特殊配置用户或者Guest用户所述影响用户级别(AU=AffectedUsers)软件安全性缺陷影响到用户的级别。可以分为管理员、多个普通用户、特殊配置用户(单个)和Guest用户四个等级管理员缺陷被非法利用时,管理员以及大部分用户的正常使用受到影响甚至限制,系统处于瘫痪状态;多个普通用户缺陷一旦被利用,多种普通用户(如图书馆信息系统中除管理员外的VIP用户,一般学生会员,图书信息上载员,图书信息审核员等)的使用受到严重影响,但是系统管理员的基本使用功能可以正常进行;特殊配置用户(单个)这种缺陷一旦被利用,则不会影响大多数类型的用户,往往只能影响到特殊类型用户。如图书馆信息系统中一般的学生会员的借阅,或者图书信息员的上载。这种缺陷和上一级的区别在于,这种缺陷被非法利用,只会影响到一种除管理员以外的任何用户的正常使用,而不会同时影响多个类型用户;Guest用户这种缺陷被非法用户利用,则只会影响到类似Guest用户的使用,或者匿名用户的使用。(5)确定缺陷的可靠性属性RE等级,为危险、一般、受限或者低所述可靠性(REReliability)软件安全性缺陷被非法用户利用后产生的结果的可预期性。可以分为危险、一般、受限和低四个等级危险非法用户利用软件安全性缺陷使用相同的方法,多次执行相同的攻击用例,可以产生相同的结果,这种缺陷对于软件系统来说,一旦被非法用户发现,就容易多次重复攻击;一般相对于上一级,这种缺陷被非法用户发现后,如果非法用户需要重复攻击行为,需要重新对攻击场景进行一定的修改;受限这种缺陷被非法用户发现后,如果非法用户需要重复攻击行为,则需要一定的辅助攻击手段或其他资源;低对于这种缺陷,测试人员基本可以忽略,因为就算非法用户曾经利用这种缺陷对软件系统进行了攻击,但是缺陷被重复利用的可能性极低,甚至只是理论上。(6)对步骤⑴、⑵、(3)、(4)和(5)确定的等级,按照表1设定缺陷不同属性的权值W=(WPE,Wdp,Wde,Wau,Wee)表权利要求一种基于缺陷的软件安全性测试需求的获取方法,其特征在于所述方法获取包括如下步骤(1)确定软件所涉及数据的信息来源,对用户的访问类型进行分类;(2)根据不同的访问类型确定用户风险等级;(3)根据软件结构绘制第0层带有数据交互边界的数据流图;(4)抽取出第0层数据流图中的数据交互路径列表;(5)根据用户风险等级,确定可能存在缺陷的交互路径及其危险等级;(6)对步骤(5)中确定的危险等级高的交互路径,对第0层基于数据交互边界的数据流图进行分解,抽取第1层基于数据交互边界的数据流图;(7)对步骤(6)中得出的第1层基于数据交互边界的数据流图,基于典型软件安全性缺陷,确定穿越数据交互边界的数据流信息可能存在的缺陷;(8)根据步骤(7)中确定的缺陷,确定软件安全性测试需求。2.一种根据权利要求1所述方法获得的软件安全性测试需求,采用PDDAR模型实现对测试需求的分级的方法,其特征在于所述分级方法包括如下步骤(1)确定缺陷的普遍性属性PE等级,为广泛、高、普通或者有限;(2)确定缺陷的危害性属性DP等级,为关键、高、中等或者低;(3)确定缺陷的可探测性属性DE等级,为容易、一般或者困难;(4)确定缺陷的影响用户级别属性AU等级,为管理员、过个普通用户特殊配置用户或者Guest用户;(5)确定缺陷的可靠性属性RE等级,为危险、一般、受限或者低;(6)对步骤(1)、(2)、(3)、(4)和(5)确定的等级,按照下表设定缺陷不同属性的权值W—(WPEjWdpjWDEWau,Wre)1234PE有限普通高广泛DP低中等高关键DE困难一般-容易AUGuest用户特殊配置用户多个普通用户管理员RE危险一般受限低(7)根据步骤(1)、(2)、(3)、(4)和(5)中,对每种属性的影响因素,并设定各影响因素的权值,确定影响因素集F:Tpe^F=DPDEAURE2(8)根据I3RIi=ffBpPEi+ffopDPi+ff^DEi+ff^AUi+ff^REi计算第i个软件安全性测试需求的安全性缺陷优先级PRI;(9)比较各个安全性缺陷优先级PRI,计算数值越高的安全性测试需求等级越高。全文摘要本发明公开了一种基于缺陷的软件安全性测试需求的获取与分级方法,首先根据软件类型确定用户的访问类型和风险等级,及第0层带有数据交互边界的数据流图,确定可能存在缺陷的交互路径及危险等级,再对等级高的进行数据流图分解,抽取第1层基于数据交互边界的数据流图,确定穿越数据交互边界的数据流信息可能存在的缺陷,以确定软件安全性测试需求,并根据PDDAR模型实现对测试需求的分级。本发明提供的方法,能够较准确、全面地获得软件安全性测试需求,较以往主要通过描述假想的异常场景,本发明克服了人为主观造成的软件安全性需求获取的遗漏,避免测试人员评定的主观性;且能够对其进行优先级确定,提高软件安全性测试的效率。文档编号G06F11/36GK101968768SQ20101051620公开日2011年2月9日申请日期2010年10月22日优先权日2010年10月22日发明者任正平,刘晓明,刘艳云,姚奕,惠战伟,洪宇,胡斌,蒋圆圆,袁利华,郑长友,饶莉萍,黄松申请人:中国人民解放军理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1