一种基于测试工作量的软件安全缺陷发现模型的建模方法技术

技术编号:12619983 阅读:202 留言:0更新日期:2015-12-30 17:26
本发明专利技术公开了一种基于测试工作量的软件安全缺陷发现模型的建模方法。本发明专利技术基于weibull模型及AMEM模型的优点,即:首先根据AMEM模型,获得测试工作量表达式;之后,根据weibull模型,以测试工作量作为随机变量,代替现有技术中以时间t,以获得兼具weibull模型的良好性能和AMEM模型可克服外部环境变化影响的优点的预测模型。

【技术实现步骤摘要】

本专利技术涉及软件安全
,尤其涉及一种基于测试工作量的软件安全缺陷发 现模型的建模方法。
技术介绍
软件安全缺陷往往会造成比较严重的安全问题,如果能够提前发现软件安全缺 陷,或预测软件安全缺陷的累计数量,就可以有效地改善软件的安全性。因此,软件安全缺 陷数量是软件安全性评估的一个重要指标。有效准确的预测软件安全缺陷的累计数量是提 高软件安全的一个有效途径。然而软件安全缺陷发现模型的成功研究可以有效的对软件缺 陷进行发现、评估和量化,为开发及测试人员掌握缺陷发现规律、尽快修复缺陷,提供了良 好的基础。 针对预测软件安全缺陷累计数量的问题,目前国内外的研究学者已经研究出来几 种软件安全缺陷发现模型对缺陷发布进行了建模并取得了显著的成果,其主要针对操作系 统软件有两大类模型: 第一类:基于时间的软件安全缺陷发现模型:Alhazmi和Malaiya在2005年提 出了AMLM模型(Alhazmi-Malaiyalogisticmodel) ;2008 年Joh等人提出了 一种基于 weibull分布的软件安全缺陷发掘模型WBM(weibull_basedmodel)。 第二类:基于测试工作量的软件安全缺陷发现模型:在2005Alhazmi和Malaiya 提出了一种基于测试工作量的安全缺陷发现模型AMEB(Alhazmi-Malaiya effort-based model)〇 下面针对这两类模型进行分析。1、基于时间的软件安全缺陷发现模型 AMLM模型(Alhazmi-Malaiya logistic model) AMLM软件安全缺陷发现模型的核心是实现缺陷发现率算法,其次对缺陷发现率算 法进行关于时间的积分就可以建立AMLM模型。假设AMLM模型累计发现的安全缺陷数目 的发现率取决于两个因素:第一,随着软件中剩余的未被检测出的缺陷数目的减少而变小; 第二,随着使用该软件的用户数量持续增长的时间期间增加而变大。 描述AMLM模型的微分方程为: 其中:A和B是根据具体应用中收集到的经验数据确定;B表示累计发现的最大安 全数目;dC/dt表示AMLM模型缺陷发现率。D是在解缺陷发现率方程式所引入的参数;C(t) 表示累计发现的安全缺陷数量。从式(2.1)中可以看出,当t趋近于正无穷时,C(t) =B。 通过前人对AMLM模型关于操作系统软件的实验分析可知, (l)AMLM模型表分析出某个操作系统软件中被发现安全缺陷数量取决于该操作系 统使用环境。 (2)针对Windows、RedHatLinux和FedoraLinux中较成熟的操作系统软件, AMLM模型均表现出了很好的数据拟合性,但对于未进入饱和阶段的操作系统软件,模型的 拟合效果有所欠缺。 (3)缺陷发现率在顶峰的两侧呈对称状态,不能满足有些软件进行缺陷发现。 总而言之,基于时间的AMLM软件安全缺陷发现模型针对大多数操作系统软件均 表现出了良好的数据拟合性,对于模型性能改进之处为后续的研究奠定了良好的基础。WBM模型(weibull-basedmodel)WBM软件安全缺陷发现模型即Weibull软件安全缺陷发现模型,是在AMLM模型的 基础上进行的改进模型。针对AMLM模型缺陷发现率顶峰两侧呈现对称状态,不能满足有些 的软件进行缺陷发现性能而进行的改进。WBM模型的核心和重点也是实现缺陷发现率算法, 进而对安全缺陷发现率进行积分即可建立WBM模型。 假设WBM模型的安全缺陷发现率服从Weibull概率密度函数,其中,a表示形状 参数,用于确定安全缺陷发现率曲线形状,当a=3时,d(t)是对称的;当a>3时,d(t) 的斜率为负数;而当a<3时,d(t)的斜率为正数。参数0表示比例参数,用于调整软件 安全缺陷建模的时间期间。参数y表不软件中最大的安全缺陷数量。d(t)表不WBM模型 的安全缺陷发现率。C(t)表示WBM模型的累计发现的安全缺陷数量。描述WBM模型的微分 方程式如式2. 2所示。 通过Joh等人对Weibull软件安全缺陷发现模型的大量实验与分析可知, (1)无论针对Windows还是Linux操作系统软件都表现出了很强的数据拟合性,预 测累计发现的安全缺陷数量相对准确。 (2)较AMLM模型的数据拟合性更强,性能更好。 (3)模型预测的安全缺陷发现过程曲线很好的抓住了软件生命周期不同阶段的发 现趋势走势特征。 总之,在经典的基于时间的软件安全缺陷发现模型中,Weibull模型是所有模型中 性能最好、拟合效果最好、预测累计发现的安全缺陷数量最准确的模型。 2、基于测试工作量的软件安全缺陷发现模型 在2005年Alhazmi还提出了一种基于测试工作量的安全发现模型AMEM,并参考前 人给出的测试工作量(equivalenteffort),给出了测试工作量E的参考公式:Equivalent effort(E)如式 2. 3 所示。 其中也是时间期间i内软件的用户总数;Pi是时间期间i内所用用户中参与了E 值测量的软件所占的百分比。假设在以测试工作量作为主要参照因素的情况下,软件安全 缺陷的发现率与软件中剩余的缺陷数量呈正比,则可以得到如下基于测试工作量的软件安 全缺陷发掘模型,其中同可靠性增长模型中的失效强度相似;B表示软件中能够发现 的最大安全缺陷数,c(t)表示累计发现的安全缺陷数量。获取累计发现的软件安全缺陷发 现数量的方程式,如式2. 4所示。C(t)= B(l-ey,E) (2. 4) 通过对测试工作量模型的实验分析总结出,利用测试工作量作为参考因素有以下 三种优点: 首先,测试工作量可以真正反映出用于发现安全缺陷的测试工作量; 其次,使用测试工作量作为参考因素普遍比单纯使用时间作为参考因素更为合理 和准确; 最后,能够克服外界环境变化对模型安全缺陷发现能力的影响。 通过以上两种类型模型的分析可知,作为软件缺陷动态预测技术中一个较新的分 支,近年来利用软件安全缺陷发现模型预测软件安全缺陷累计数量的研究已成为软件工 程和信息安全领域的一个研究热点。国内外的学者在安全缺陷发掘模型方面做了许多工 作:目前而言基于时间的weibull模型是性能最好的缺陷发现模型,但是对于外部环境变 化的影响没有考虑周全;基于测试工作量的软件安全缺陷发现模型AMEM模型,性能不如 weibull模型,预测累计发现的安全缺陷数量不够准确,但是它却能解决一个基于时间的软 件安全缺陷发现模型所不能解决的问题:外部环境变化的影响。 本专利技术的目的是通过对weibull模型及AMEM模型的重点分析,建立新型基于测试 工作量的软件安全缺陷发现模型,不仅提高预测软件安全缺陷累计数量的准确性并且弥补 威布尔模型中没有考虑到的外部环境变化的影响。
技术实现思路
有鉴于此,本专利技术提供了一种基于测试工作量的软件安全缺陷发现模型的建模方 法,不仅提高预测软件安全缺陷累计数量的准确性并且弥补威布尔模型中没有考虑到的外 部环境变化的影响。 为了解决上述技术问题,本专利技术是这样实现的: ,具体包括如下步骤: (1)获得测试工作量表达式与缺陷发现率表达式: 测试工作量表达式:采用标准工作量获取方法,根据所有软件的用户总当前第1页1 2&nbs本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/CN105205002.html" title="一种基于测试工作量的软件安全缺陷发现模型的建模方法原文来自X技术">基于测试工作量的软件安全缺陷发现模型的建模方法</a>

【技术保护点】
一种基于测试工作量的软件安全缺陷发现模型的建模方法,其特征在于,具体包括如下步骤:(1)获得测试工作量表达式与缺陷发现率表达式:测试工作量表达式:采用标准工作量获取方法,根据所有软件的用户总数与软件占比的乘积,表征测试工作量表达式;其中,所述软件占比为:使用当前软件的用户占用户总数的百分比;缺陷发现率表达式:在威布尔概率密度函数中,用威布尔概率密度函数中的形状参数替代用于确定安全缺陷发现率曲线形状的参数;用威布尔概率密度函数中的比例参数替代用于调整软件安全缺陷建模的工作量期间的比例参数;用威布尔概率密度函数中的时间变量替代用于表示时间期间内累计的测试工作量;将替换后的威布尔概率密度函数表达式与当前所用软件中最终能够发现的安全缺陷数量最大值的乘积,得到表征软件安全缺陷发现率表达式;(2)获得累计发现的安全缺陷数量表达式:对(1)中获得的缺陷发现率表达式进行积分,得到累计发现的安全缺陷数量表达式;(3)建立模型:基于(1)和(2)中获得测试工作量表达式、缺陷发现率表达式和累计发现的安全缺陷数量表达式,建立E‑WBM软件安全缺陷发现模型;(4)获得当前所用软件的安全缺陷数据集;其中,安全缺陷数据集包括测试工作量的数据集和软件安全缺陷数据集;其中,测试工作量的数据集根据(1)中获得的表达式计算获得;软件安全缺陷数据集包括直接从当前所用软件中获取的累计发现的安全缺陷数量和安全缺陷数量最大值;(5)获得E‑WBM软件安全缺陷发现模型的参数最优解:将(3)中建立的E‑WBM软件安全缺陷发现模型进行线性化处理,并将(4)中获取的当前所用软件的安全缺陷数据集代入后,再经一元线性回归和最小二乘法解析后,得到最优参数解;(6)使用具体模型进行软件安全缺陷累计数量的预测:针对所述当前所用软件,将(4)中获得的安全缺陷数量最大值、测试工作量值和(5)中获得的最优参数解代入(3)中建立的模型中,获取具体的E‑WBM模型,并解得软件累计发现的安全缺陷数量。...

【技术特征摘要】

【专利技术属性】
技术研发人员:胡昌振马锐张亚菲李博刘月
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

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

1