您的位置:首页 > 其它

开展应用软件安全测试所需技术储备

2015-09-10 15:34 330 查看
用户端和服务端分离式架构的应用系统有两种:C/S架构以及B/S架构,安全测试的主要对象也是这两种(单机版的应用程序对安全性要求相对低一些)。要测试这类软件,相关知识需要逐步积累。

1. 编码知识

安全问题很多时候是由于编码采用不安全的方式,带来隐患导致的,所以对编码知识的熟悉必不可少。编程语言的基本思想都是想通的,只是表达方式不一样,所以要开展至少熟悉一门开发语言必不可少。B/S架构的应用软件在部署时比较简单,并且访问方便,这类系统也是进行安全测试最多的。对web系统进行安全测试分析时,会涉及到很多方面的知识,JAVA、HTML、JavaScript等等。

2. 渗透知识

由于现在的Web服务器大都托管到较大的机房中,一般前端都有防火墙,从用户浏览界面伪装合法访问进入到Web服务器获取信息是一个省力的捷径。对web应用系统进行安全测试(可借助工具进行安全扫描之后进行结果分析),基础的渗透知识不可或缺。

3. 网络(通信)知识,操作系统,应用软件

导致Web应用系统安全问题的不仅仅是自身,还可能是浏览器、Apache、IIS等应用软件的漏洞“传染”的,又或者是操作系统漏洞或者拓扑结构中的网络通信设备,等等。

4. 资源访问控制知识

资源包括数据资源,操作权限等等方面,脆弱的控制机制可能导致严重的安全问题,有效原则的使用可以加强资源控制(最小权限原则等)。

5. 数据库知识

现在的应用系统几乎都离不开数据库,保障数据的安全是保障应用系统的安全的重要方面。在信息时代数据的重要性不言而喻,不安全的存储方式及机制会导致数据泄密、损坏等多种问题,带来巨大损失。

6. 员工管理中的安全意识及机制

据统计内部员工泄密或操作不当等导致的安全问题,远远多于外部攻击导致的,所以加强员工的安全意识及管理机制是保障安全的重要一环。

7. 其他

对不同的应用系统而言对安全性都有其自身的“个性”要求,可能来源于设计者也可能来源于用户的特殊需求。但是软件工程知识、信息安全审计知识以及相关辅助工具的准备等,需要时时关注,点滴积累。

知识储备是一个长期、持续的过程,只有这样,在安全测试项目开展时才能保证高效、高质的完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: