安全测试从入门到实践[概述]

 安全测试:是指有关验证应用程序的安全等级和识别潜在安全性缺陷的过程。

应用软件的安全性测试

-软件自身程序设计中存在的安全隐患,并检查应用程序对非法入侵的防范能力。

系统级别的安全性测试

-确保只具备系统平台访问权限的用户才能访问,包括对系统对登录或远程访问。

导致软件出现安全问题的主要原因或根源是软件的安全漏洞

安全漏洞:特指软件在硬件、软件、协议在逻辑设计、具体实现或系统安全策略上存在的缺陷或错误。

-漏洞的产生主要是由于开发者不正确和不安全的编程引起。

-不法者可以通过漏洞获取系统额外权限,并对系统植入木马、病毒以窃取系统资料。

-威胁到系统安全的错误才是漏洞。

安全漏洞的危害

-系统完整性:非法篡改破坏数据完整性

-系统可用性:破坏系统或者网络,导致服务不可用

-系统机密性:泄漏个人或者企业的隐私信息

-系统可靠性:造成系统不能正常提供有效服务

软件安全测试的方法

代码安全性测试 

  • 主要通过对源代码进行安全扫描,根据程序中数据流、控制流、语义等信息与其特有软件安全规则库进行比对,从中找出代码中潜在等安全漏洞

渗透测试

  • 主要使用自动化工具或者人工等方法模拟黑客等输入,对应用系统进行攻击性测试,从中找出运行时所存在对安全漏洞

程序数据扫描

  • 数据扫描对手段通常是进行内存测试,内存测试可以发现许多诸如缓冲区溢出之类对漏洞,而这类漏洞使用除此之外对测试手段都难以发现。

软件安全测试内容

功能验证

  • 对涉及到安全的软件功能进行有效性验证,如管理模块、权限模块、加密系统、认证系统等。

模拟攻击

  • 模拟攻击测试是一组特殊等极端等测试方法,以模拟攻击方式来验证软件系统等安全防护能力。

漏洞扫描

  • 安全漏洞扫描主要是借助于特定等漏洞扫描器完成的,系统管理员能够发现系统存在等安全漏洞

倾听技术

  • 倾听技术也称网络监听,可以获取网络上传输的信息,如果从获取的信息中提取到系统的隐私数据,就说明系统存在安全性问题。

软件安全测试的过程

基于安全需求,将系统可能面临的安全问题进行分类,画出威胁树,可以针对威胁树选择应对的方法和技术,是为需求分析。

  • 基于威胁模型制定计划

以口令安全问题威胁树为例,计划就可基于口令安全可能遭受的各种攻击进行制定。

  • 规划最小测试单位

并不是模块整体都有安全问题,只需要关注出问题对最小范围即可

  • 对系统的可能漏洞进行分级

对系统漏洞按照不同对优先级进行测试

  • 设计安全测试用例

根据漏洞类型,精心准备数据,设计测试用例进行测试[用户权限测试;不同账号登录;密码测试:拆密码、暴力破解;session测试使用不登录进入;验证7*24运作状态;则进行系统持续✅观察]

  • 模拟攻击系统

根据用例模拟攻击系统,查看系统对状态

  • 总结执行结果,提出解决方案

执行用例,得到结果,根据结果现象提出解决方案

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值