威胁模型驱动的软件安全评估与测试方法的分析

(整期优先)网络出版时间:2023-08-01
/ 2

威胁模型驱动的软件安全评估与测试方法的分析

袁志鹏

四川省宜宾普拉斯包装材料有限公司,四川省宜宾市,644000

摘要:随着网络信息技术的不断提升,网络安全问题日益增多,对于软件的安全可靠性也逐渐得到人们的重视,对此,本文通过构建威胁模型驱动来从攻击者的角度发现软件中存在的漏洞以及风险,明确软件在使用过程中的安全需求,进而提高软件自身抗病毒抗攻击能力。

关键词:威胁模型;安全评估;测试方法


引言:互联网时代下计算机安全问题频发,其主要原因在于抗攻击能力较弱以及部分垃圾软件所带来的威胁,希望通过威胁模型驱动软件的安全评估使工作人员在设计初期就能发现漏洞,并对模型驱动、软件安全测试技术以及软件安全模式采取测试,从而开发出安全性较强的软件。
一、威胁模型驱动的软件安全评估
(一)软件风险评估
  如今,大部分软件采用的都是风险评估技术,对于软件系统的整个生命周期来说,无时无刻不在承受风险的干扰,利用威胁模型驱动的软件可以很好地从开发初期帮助软件避免部分的风险与病毒。威胁模型驱动的软件防护核心是以攻促防,反其道而行之,对于计算机中受威胁的目标来说,其往往存在于多个组件之中,而威胁驱动通过以攻击威胁的角度出发,寻找对于目标的攻击路径,从而根据这一步骤进行软件安全的定量评估,并且沿着攻击路径对其造成的影响制定修复升级方案。

(二)软件安全需求

软件安全威胁主要通过盗窃、篡改、伪造等途径实施,其可能危及软件安全策略和安全属性,为此对软件系统的安全造成威胁的行为建模,需要明确软件的具体安全需求。对于用户行为实行限制,明确规定了系统中用户能够访问的数据,通过计算机传递给用户,从而创建相应的安全机制。软件安全属性包括身份验证、授权等等,对于软件系统而言,安全威胁行为是软件对象操作出现异常,例如,未经授权的用户可以通过错误的密码登录系统,或授权用户无法访问系统,这都违反了软件访问控制的安全策略,应予以禁止[1]。

(三)软件安全设计

软件安全设计的前提是要满足软件的安全需求,避免在设计开发过程中造成潜在的风险漏洞,在遵循安全设计的原则下,应以安全威胁为基础采取研究。安全威胁是指攻击者违反软件安全策略行为的具体位置和方式,在设计阶段,可以使用建模语言对安全威胁建模,用于直观地描述和构建软件系统架构。为了系统在运行时系统信息的安全性和完整性得到保证,需要设计人员对用户身份验证、访问控制以及用户权限管理,一是身份,用户通过软件操作查询、删除等行为时需要通过系统验证才能处理。二是访问控制,在用户登录以后,根据用户的访问列表系统生成的访问菜单。三是用户权限管理,设计人员可以对用户操作配置相应的访问控制,使用户具备相应的访问权限,例如在部分企业中,每个企业的工作人员拥有一个系统访问账号,同时所有的权限由账号管理员管理,通过对权限角色的控制实现用户的控制,通过禁止访问限制访问范围,大大降低了风险性,对于系统安全访问形成一定边界。在对安全威胁建模时应运行安全防护策略,实现部分自动化漏洞检测,对于部分网页失踪、信息篡改可以及时预警。

二、威胁模型驱动的测试方法分析
(一)模型驱动的测试

模型驱动测试是根据被测系统的行为模型为基础生成的测试系统,以验证被测系统与其模型的一致性。模型驱动测试可以更快的使工作人员理清系统的安全需求,同时增强了开发者和测试者之间的联系,通过被测系统的操作要求以及存在的安全威胁模型进行构建,从安全威胁模型中查找数据,并通过该路径发现威胁行为并直接编码,通过检测,记录程序运行时的方法执行轨迹。具体来说,若要跟踪威胁模型中的行为模型,必须对程序进行检测,从而获取软件运行时方法调用以及执行的相关动态。程序插桩已经被测试人员广泛应用于动态测试中,其通过在程序运行中插入一些探针,也就是目标代码中插入一条或多条指令,以记录程序的动态信息,并不会破坏被测系统的逻辑完整性。通过被测程序运行时的表现,探测器还会从运行时的要素中收集数据并记录。程序通过插桩之后运行就能更好地记录估计数据[2]。

(二)软件安全测试技术

软件技术的日益提升促使人们更注重软件的安全性,而软件安全测试可以有效查找存在的安全漏洞,具体是通过运行测试用例觉察风险,从而确保系统安全,其主要从功能和软件两方面实行安全测试,一是要确保用户在对软件的实际操作中完全符合设计预期。二是对软件实行直面威胁的安全测试,以确保其能够抵挡住危机。但是实际操作中,软件可能违背开发者设计,引入安全漏洞,并对计算机造成风险,为此为了确保计算机的安全性,运用威胁模型驱动软件采取安全测试是极为必要的,且与其他驱动不同的是,在实际研究中威胁驱动模型是从外来攻击者的角度出发,对软件威胁实行研究,进一步增强软件安全设计方案。对于安全测试人员来说,要将自身从测试人员转变为攻击者,进行一个思维上的转变。

(三)软件安全模式

软件安全模式是以软件研究人员提出的各种攻击模式为基础,提供的各种系统漏洞以及网络攻击的应对方法,对于一些反复发生的问题会记录在册,所以将开发模式运用到改进软件安全的过程中极有必要,通过设定特殊且能够被计算机所理解的攻击模式与安全模式,并实行存储。设计人员根据安全需求在进行构建系统设计图时,应对软件系统涉及的数据以及相互关系实行梳理,在此阶段可以不考虑安全设计问题,直接将与安全相关的功能托付给安全模式,通过系统的安全需求确定安全关键数据,从而将安全信息注入到设计图中,对于此项操作是一个安全知识再造的过程,并不是直接将安全需求实行设计。因此可以针对安全需求在安全模式库中寻找合适的安全模式,通过对安全信息在设计图中的关联,确定此模式在系统中的位置信息,但是安全模式并不是一成不变的,是在不断淘汰中追求精益求精,所以检索安全模式需要设计人员的重点关注。

结论:综上所述,软件安全维护是一个长期的过程,需要不断实行检验与测试,通过对软件风险评估、软件安全需求以及安全设计三个方面采取安全评估,在已知的病毒范围内,威胁模型驱动软件可以有效提升软件抗病毒能力,所以要想从根源上解决漏洞,仍需要不断提升信息技术,从而保障信息系统的安全。
参考文献:

[1]王春华.基于网络信息安全技术管理的计算机应用[J].工程技术研究,2022,4(9):151-153.

[2]陈柏政,窦立君.软件安全问题及防护策略研究[J].软件导刊,2021,20(06):219-224.