安全测试-精良测试工程师必备的4项安全测试方法

[复制链接]
发表于 2026-2-4 07:48:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一.安全性测试

1、安全性测试方法
测试本领可以举行安全性测试,如今紧张安全测试方法有:
  
1)静态的代码安全测试
紧张通过对源代码举行安全扫描,根据步调中数据流、控制流、语义等信息与其特有软件安全规则库举行匹对,从中找出代码中潜伏的安全毛病。
2)动态的排泄测试
排泄测试也是常用的安全测试方法。是利用主动化工具大概人工的方法模仿黑客的输入,对应用体系举行攻击性测试,从中找出运行时候所存在的安全毛病。
这种测试的特点就是真实有效,一样寻常找出来的标题都是准确的,也是较为严峻的。但排泄测试一个致命的缺点是模仿的测试数据只能到达有限的测试点,覆盖率很低。
  
3)步调数据扫描
一个有高安全性需求的软件,在运行过程中数据是不能遭到粉碎的,否则就会导致缓冲区溢出范例的攻击。数据扫描的本领通常是举行内存测试,内存测试可以发现许多诸如缓冲区溢出之类的毛病,而这类毛病利用除此之外的测试本领都难以发现。
比方,对软件运行时的内存信息举行扫描,看是否存在一些导致隐患的信息,固然这须要专门的工具来举行验证,手工做是比力困难的。
  
2、反向安全性测试过程
  
大部分软件的安全测试都是依据缺陷空间反向计划原则来举行的,即事先查抄哪些地方大概存在安全隐患,然后针对这些大概的隐患举行测试。
因此,反向测试过程是从缺陷空间出发,创建缺陷威胁模子,通过威胁模子来探求入侵点,对入侵点举行已知毛病的扫描测试。长处是可以对已知的缺陷举行分析,克制软件里存在已知范例的缺陷,但是对未知的攻击本领和方法通常会无能为力。
  
1)创建缺陷威胁模子
创建缺陷威胁模子紧张是从已知的安全毛病入手,查抄软件中是否存在已知的毛病。创建威胁模子时,须要先确定软件扳连到哪些专业范畴,再根据各个专业范畴所遇到的攻击本领来举行建模。
  
2)探求和扫描入侵点
查抄威胁模子里的哪些缺陷大概在本软件中发生,再将大概发生的威胁纳入入侵点矩阵举行管理。如果有成熟的毛病扫描工具,那么直接利用毛病扫描工具举行扫描,然后将发现的可疑标题纳入入侵点矩阵举行管理。
 
3)入侵矩阵的验证测试
创建好入侵矩阵后,就可以针对入侵矩阵的详细条目计划对应的测试用例,然后举行测试验证。
  
3、正向安全性测试过程
  
为了规避反向计划原则所带来的测试不完备性,须要一种正向的测试方法来对软件举行比力完备的测试,使测试过的软件可以或许防备未知的攻击本领和方法。
  
1)先标识测试空间
对测试空间的全部的可变数据举行标识,由于举行安全性测试的代价高昂,此中要重点对外部输入层举行标识。
比方,需求分析、概要计划、详细计划、编码这几个阶段都要对测试空间举行标识,并创建测试空间跟踪矩阵。
  
2)准确界说计划空间
重点查察需求中对计划空间是否有明确界说,和需求扳连到的数据是否都标识出了它的合法取值范围。
在这个步调中,最须要注意的是准确二字,要严格按照安全性原则来对计划空间做准确的界说。
  
3)标识安全隐患
根据找出的测试空间和计划空间以及它们之间的转换规则,标识出哪些测试空间和哪些转换规则大概存在安全隐患。
比方,测试空间愈复杂,即测试空间分别越复杂或可变数据组合关系越多也越不安全。尚有转换规则愈复杂,则出标题的大概性也愈大,这些都属于安全隐患。
  
4)创建和验证入侵矩阵
安全隐患标识完成后,就可以根据标识出来的安全隐患创建入侵矩阵。列出潜伏安全隐患,标识出存在潜伏安全隐患的可变数据,和标识出安全隐患的品级。此中对于那些安全隐患品级高的可变数据,必须举行过细的测试用例计划。
  
4、正向和反向测试的区别
正向测试过程是以测试空间为依据探求缺陷和毛病.(1140267353)一起发展一起加油的搭档群!软件测试,与你偕行!
反向测试过程则是以已知的缺陷空间为依据去探求软件中是否会发生同样的缺陷和毛病,两者各有其优缺点。
1)正向测试
过程的优点是测试比力充实,但工作量相对来说较大。因此,对安全性要求较低的软件,一样寻常按反向测试过程来测试即可,对于安全性要求较高的软件,应以正向测试过程为主,反向测试过程为辅。
2)反向测试
过程紧张的一个优点是本钱较低,只要验证已知的大概发生的缺陷即可,但缺点是测试不完满,无法将测试空间覆盖完备,无法发现未知的攻击本领。
二.常见的软件安全性缺陷和毛病
软件的安全有许多方面的内容,紧张的安全标题是由软件本身的毛病造成的,下面先容常见的软件安全性缺陷和毛病。
  
1、缓冲区溢出
  
缓冲区溢出已成为软件安全的头号公敌,许多实际中的安全标题都与它有关。造成缓冲区溢出标题通常有以下两种缘故起因。
1)计划空间的转换规则的校验标题
即缺乏对可测数据的校验,导致非法数据没有在外部输入层被查抄出来并抛弃。非法数据进入接口层和实现层后,由于它超出了接口层和实现层的对应测试空间或计划空间的范围,从而引起溢出。
2)局部测试空间和计划空间不敷
当合法数据进入后,由于步调实现层内对应的测试空间或计划空间不敷,导致步调处理处罚时出现溢出。
  
2、加密缺点
  
这几种加密缺点是不安全的:
1)利用不安全的加密算法。加密算法强度不敷,一些加密算法乃至可以用穷举法破解。
2)加密数据时暗码是由伪随机算法产生的,而产生伪随机数的方法存在缺陷,使暗码很容易被破解。
3)身份验证算法存在缺陷。
4)客户机和服务器时钟未同步,给攻击者富足的时间来破解暗码或修改数据。
5)未对加密数据举行署名,导致攻击者可以篡改数据。以是,对于加密举行测试时,必须针对这些大概存在的加密缺点举行测试。
  
3、错误处理处罚
  
一样寻常情况下,错误处理处罚都会返回一些信息给用户,返回的堕落信息大概会被恶意用户利用来举行攻击,恶意用户可以或许通太过析返回的错误信息知道下一步要怎样做才华使攻击乐成。
如果错误处理处罚时调用了一些不应有的功能,那么错误处理处罚的过程将被利用。错误处理处罚属于非常空间内的处理处罚标题,非常空间内的处理处罚要只管简朴,利用这条原则来计划可以克制这个标题。
但错误处理处罚通常扳连到易用性方面的标题,如果错误处理处罚的提示信息过于简朴,用户大概会一头雾水,不知道下一步该怎么利用。以是,在思量错误处理处罚的安全性的同时,须要和易用性一起举行衡量。
  
4、权限过大
如果赋予过大的权限,就大概导致只有平凡用户权限的恶意用户利用过大的权限做出危害安全的利用。
比方:没有对能利用的内容做出限定,就大概导致用户可以访问超出规定范围的其他资源。举行安全性测试时必须测试应用步调是否利用了过大的权限,重点要分析在各种情况下应该有的权限,然后查抄实际中是否超出了给定的权限。权限过大标题本质上属于计划空间过大标题,以是在计划时要控制好计划空间,克制计划空间过大造成权限过大的标题。
 
总结:

感谢每一个认真阅读我文章的人!!!
作为一位过来人也是渴望各人少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答标题,对峙几天便放弃的感受的话,在这里我给各人分享一些主动化测试的学习资源,渴望能给你进步的路上带来资助。

软件测试口试文档

我们学习一定是为了找到高薪的工作,下面这些口试题是来自阿里、腾讯、字节等一线互联网大厂最新的口试资料,而且有字节大佬给出了权势巨子的解答,刷完这一套口试资料信赖各人都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋侪来说应该是最全面最完备的备战堆栈,这个堆栈也陪同我走过了最困难的路程,渴望也能资助到你!以上均可以分享,点下方小卡片即可自行领取。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表