51Testing软件测试论坛

标题: 开展应用软件安全测试所需技术储备 [打印本页]

作者: 大路路    时间: 2018-7-6 15:03
标题: 开展应用软件安全测试所需技术储备
用户端和服务端分离式架构的应用系统有两种:C/S架构以及B/S架构,安全测试的主要对象也是这两种(单机版的应用程序对安全性要求相对低一些)。要测试这类软件,相关知识需要逐步积累。
1. 编码知识
安全问题很多时候是由于编码采用不安全的方式,带来隐患导致的,所以对编码知识的熟悉必不可少。编程语言的基本思想都是想通的,只是表达方式不一样,所以要开展至少熟悉一门开发语言必不可少。B/S架构的应用软件在部署时比较简单,并且访问方便,这类系统也是进行安全测试最多的。对web系统进行安全测试分析时,会涉及到很多方面的知识,JAVA、HTML、JavaScript等等。
2. 渗透知识
由于现在的Web服务器大都托管到较大的机房中,一般前端都有防火墙,从用户浏览界面伪装合法访问进入到Web服务器获取信息是一个省力的捷径。对web应用系统进行安全测试(可借助工具进行安全扫描之后进行结果分析),基础的渗透知识不可或缺。
3. 网络(通信)知识,操作系统,应用软件
导致Web应用系统安全问题的不仅仅是自身,还可能是浏览器、Apache、IIS等应用软件的漏洞“传染”的,又或者是操作系统漏洞或者拓扑结构中的网络通信设备,等等。
4. 资源访问控制知识
资源包括数据资源,操作权限等等方面,脆弱的控制机制可能导致严重的安全问题,有效原则的使用可以加强资源控制(最小权限原则等)。
5. 数据库知识
现在的应用系统几乎都离不开数据库,保障数据的安全是保障应用系统的安全的重要方面。在信息时代数据的重要性不言而喻,不安全的存储方式及机制会导致数据泄密、损坏等多种问题,带来巨大损失。
6. 员工管理中的安全意识及机制
据统计内部员工泄密或操作不当等导致的安全问题,远远多于外部攻击导致的,所以加强员工的安全意识及管理机制是保障安全的重要一环。
7. 其他
对不同的应用系统而言对安全性都有其自身的“个性”要求,可能来源于设计者也可能来源于用户的特殊需求。但是软件工程知识、信息安全审计知识以及相关辅助工具的准备等,需要时时关注,点滴积累。
知识储备是一个长期、持续的过程,只有这样,在安全测试项目开展时才能保证高效、高质的完成。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2