软件测试·系统测试·安全性测试

  软件测试主要是为了测试发现软件系统中的BUG,并进行改正,以保证在软件交付给客户是能够保证客户需求达到实现。但在交付之后,并不意味着软件就不会再出现错误,哪怕软件的运行BUG已经完全被解决,而病毒及非法黑客的入侵往往造成的损失比软件自身的BUG还大。因此在软件测试中进行安全性的测试成为一个不可缺少的环节。在实现安全性的测试时,软件工程师则把其放在了系统测试这一环节中,因为系统测试是为了软件能够在与其他程序配合使用时的稳定性,也就是说系统测试更加接近我们软件运行的日常环境。大家都知道病毒的载入往往是由其他程序引入的,而黑客则是在日常的大网络环境中利用软件的安全漏洞来达到其入侵的目的,因此在系统测试这一最接近日常运行环境的条件下进行测试是最理想也是最能达到测试目的的。

  安全性测试是这样定义的,安全性测试是检查系统对非法入侵的防范能力,其目的是为了发现软件系统中是否存在安全漏洞。这里涉及的软件安全性则是指在非正常环境下软件不会发生安全事故的能力。

  既然已经知道软件安全性测试是什么了,那么我们是怎么在系统测试中进行软件安全性的测试的?

  软件测试人员在进行测试事,是由测试人员来担当攻击系统的类黑客角色,测试人员运用各种手段来试图达到攻击系统,得到系统信息的目的。可以通过网络的病毒载入,同过外围手段,或者通过其他软件来得到目的,总的来说,测试人员应当模拟出实际攻击人员会运用的手段来发现系统的安全漏洞。

  在测试时,测试人员根据攻击人员常用的攻击方式,进行了分析,制定了合适的有效的安全性测试方法,主要有以下几种方法:

  1.功能验证:

    功能采用类似于黑盒测试的方法对功能模块中涉及到安全性的模块进行测试,如用户管理系统、加密系统、权限管理系统及认证系统等。主要有以下几个方面:

      1.有效的密码是否接受,无效的密码是否拒绝。

      2.系统对于无效用户或密码登陆是否有提示。

      3.用户是否会自动超时退出,超时的时间是否合理。

      4.各级用户权限划分是否合理。

    当然,在测试的时候,不仅仅只有这么几个方面,还有其他的如系统数据配置,防火墙等方面的详细测试。

  2.漏洞扫描:

    安全漏洞扫描主要是借助于特定的漏洞扫描器完成的。通过使用漏洞扫描器,系统管理员能够发现系统存在的安全漏洞,从而在系统安全中及时修补漏洞的措施。   一般漏洞扫描分为两种类型:主机漏洞扫描器是指在系统本地运行检测系统漏洞的程序。网络漏洞扫描器是指基于网络远程检测目标网络和主机系统漏洞的程序。

  3.模拟攻击实验:

    对于安全测试来说,模拟攻击测试是一组特殊的极端的测试方法,我们以模拟攻击来验证软件系统的安全防护能力。

  系统安全测试的内容,它主要包括:

      1.应用程序安全测试

      2.操作系统安全测试

      3.数据库安全测试

      4.IIS服务器安全测试

      5.网络环境安全测试

  当然在这里我主要讲的是我做过的项目系统中需要测试的内容,对不同的系统安全性测试的内容也不一样,这个需要结合项目本身的情况和用户使用环境来确定测试的内容。在测试时往往会模拟以下几种攻击方式:

      1.冒充:口令猜测,缓冲区溢出;

      2.重演;

      3.消息篡改:DNS高速缓存污染,伪造电子邮件;

      4.服务拒绝:死亡Ping,泪滴,UDP洪水,SYN洪水,Land攻击,Smurf攻击,Fraggle攻击,电子邮件炸弹,畸形消息攻击;

      5.内部攻击;

      6.外部攻击;

      7.陷阱门;

      8.特洛伊木马;

  4.侦听技术:

    侦听技术实际上就是对数据交互的数据信号进行捕获分析的一种抓包技术。也是目前最为流行的网络数据包捕手段;相反测试人员也能利用这项技术进行网络加密的   测试;

  既然有了安全性的测试,则必定需要制定一个安全性的标准,来确定一个软件的安全性则们才算符合我们的安全需求。因此有了安全性标准。配合上安全性标准则为安全性的测试提供了更有效的支持。

时间: 2024-08-27 21:50:12

软件测试·系统测试·安全性测试的相关文章

深入理解软件测试应用(测试用例+测试应用+测试技术及工具+测试等级)

我这里有个课程想和大家分享,有兴趣的朋友可以加我的QQ2059055336和我联系. 本课程为软件测试课程,主要讲述内容:软件测试概述.软件测试过程.软件测试技术.软件测试的应用.自动化测试技术等软件测试前言和问题的提出                             问题的提出 1课时                            基本概念                             本课程的主要内容                             各部分的

代码审计:安全性测试方案

安全性测试方案 一.静态代码测试 主要通过对源代码进行安全扫描,根据程序中数据流.控制流.语义等信息与其特有软件安全规则库进行匹对,从中找出代码中潜在的安全漏洞.   代码审计工具RIPS:   介绍:RIPS是一个用php编写的源代码分析工具,它使用了静态分析技术,能够自动化地挖掘PHP源代码潜在的安全漏洞.渗透测试人员可以直接容易的审阅分析结果,而不用审阅整个程序代码.由于静态源代码分析的限制,漏洞是否真正存在,仍然需要代码审阅者确认.RIPS能够检测XSS, SQL注入, 文件泄露,Hea

代码审核:安全性测试方案

安全性测试方案 一.静态代码测试 主要通过对源代码进行安全扫描,根据程序中数据流.控制流.语义等信息与其特有软件安全规则库进行匹对,从中找出代码中潜在的安全漏洞.   代码审计工具RIPS:   介绍:RIPS是一个用php编写的源代码分析工具,它使用了静态分析技术,能够自动化地挖掘PHP源代码潜在的安全漏洞.渗透测试人员可以直接容易的审阅分析结果,而不用审阅整个程序代码.由于静态源代码分析的限制,漏洞是否真正存在,仍然需要代码审阅者确认.RIPS能够检测XSS, SQL注入, 文件泄露,Hea

软件测试:如何测试一款手机app

一,非功能测试 app测试的一个重要方面是app的非功能需求.移动app在推出市场或进行进一步开发前,测试人员有一定的职责做该类需求的跟踪工作. 早期开发阶段要进行的第一个测试应该是实用性测试.通常是由alpha用户或同事进行的.走进一家咖啡馆或餐厅,问问里面的人他们的app使用情况.让他们看看现阶段开发的第一个版本并收集反馈,看看用户是否能很好地使用新功能,以便得出第一印象. 二,功能测试 每项开发的新功能都需要进行测试.app测试中功能测试是一个重要方面.测试人员应该要进行手动测试和后期的自

引用文档-软件测试分类及测试中三个主要概念

软件测试分类及测试中三个主要概念 原文链接:https://blog.csdn.net/qq_35867537/article/details/77477775 1.      软件测试分类 按测试技术分 按测试技术,软件测试可分为:黑盒测试.白盒测试.灰盒测试 黑盒测试:在程序接口进行测试,它只是检查程序功能是否按照规格说明书的规定正常使用.也被称为功能测试或者数据驱动测试. 白盒测试:要完全了解程序结构和处理过程,它按照程序内部逻辑测试程序,检验程序中每条通路是否按预定要求正确工作.也被称为

系统安全性测试

系统的安全测试 1.      安全测试,什么是安全测试.安全性测试(Security test)它是指:在测试软件系统中对程序的危险防止和危险处理进行的测试,以验证其是否有效. 2.      安全性测试我们要做哪些工作呢?  a.全面检验软件在软件需求规格说明中规定的防止危险状态措施的有效性和在每一个危险状态下的处理反应情况: b.对软件设计中用于提高安全性的逻辑结构.处理方案,进行针对性测试: c.在异常条件下测试软件,以表明不会因可能的单个或多个输入错误而导致不安全状态 d.用错误的安全

WEB安全性测试

WEB的安全性测试主要从以下方面考虑   1.SQL Injection(SQL注入) (1)如何进行SQL注入测试? 首先找到带有参数传递的URL页面,如 搜索页面,登录页面,提交评论页面等等. 注1:对 于未明显标识在URL中传递参数的,可以通过查看HTML源代码中的"FORM"标签来辨别是否还有参数传递.在<FORM> 和</FORM>的标签中间的每一个参数传递都有可能被利用. <form id="form_search" act

安全性测试AppScan工具使用实战20150920

Appscan是做安全性测试的一款工具,网上资料比较少,项目需要做安全性测试,用它做了web的扫描,可以发现一些问题,并且有原因分析和修复建议,感觉还不错,现在演示下它的使用: 1.打开工具,点击[文件]下的[新建],来打开新建扫描页面 2.一般我们选择[常规扫描],当然也可以根据需要来定义写模板,我是建议团队一起制定一个模板比较好,可以减少误报率和扫描时间 3.根据配置向导配置,选择扫描类型,[web Service扫描]需要下载其他组件,我们这里选[web 应用程序扫描] 4.URL地址就是

软件测试中常见测试流程

测试的流程: 需求阶段流程图: 单元/集成测试阶段流程图 系统测试阶段流程图 压力测试流程图 性能测试流程图 仅仅了解就够复杂的了,实际操作过程中的问题肯定更多.像压力测试.性能测试,一般的情况下我哪里用得上啊.虽然也知道些什么分布式应用.海量存储之类的,但是我连1T的数据都没见过.光说说那是是空话=.= 第二个问题:软件测试的常规方法. 软件测试中常见测试流程,布布扣,bubuko.com