什么是安全测试

Apipost官方支持 测试技术 2021-09-03

一 什么是安全测试

安全测试是在软件产品的生命周期过程中,对产品检验是否符合安全需求定义

二 安全测试的目的

提升软件产品的安全质量

尽量在发布前找到安全问题予以修补降低成本

电量安全

验证安装在系统内的保护机制能否在实际应用中对系统进行保护

使之不被非法入侵

三 怎么做安全测试

3.1 一个完整的安全性测试

从部署与基础结构、输入验证、身份验证、授权、配置管理、敏感数据、会话管理、加密、参数操作、异常管理、审核和日志记录

3.2 部署与基础结构

网络是否提供了安全的通信,部署是否包括内部的防火墙,基础结构安全性需求的限制是什么,目标环境支持怎样的信任级别

3.3 输入验证

如何验证输入,是否验证Web页输入,是否对传递到组件或Web服务的参数进行验证,是否验证从数据库中检索的数据,是否依赖客户端的验证,应用程序是否易受SQL注入攻击,应用程序是否易受XSS攻击,如何处理输入

3.4 身份验证

是否区分公共访问和受限访问,如何验证数据库的身份

3.5 授权

如何向最终用户授权,如何在数据库中授权应用程序,如何将访问限定于系统级资源

3.6 配置管理

是否保证配置存储的安全

3.7 敏感数据

是否存储机密信息,如何存储敏感数据,是否在网络中传递敏感数据,是否记录敏感数据

3.8会话管理

是否限制会话生存期,如何确保会话存储状态的安全

3.9 加密

如何确保加密密钥的安全性

3.10 参数操作

是否验证所有的输入参数,是否在参数过程中传递敏感数据,是否为了安全问题而使用HTTP头数据

3.11异常管理

是否使用结构化的异常处理,是否向客户端公开了太多的信息

四 传输安全

传输级的安全测试是考虑到Web系统的传输的特殊性,重点测试数据经客户端传送到服务器端可能存在的安全漏洞,以及服务器防范非法访问的能力

4.1 HTTPS和SSL

HTTPS和SSL测试:默认的情况下,安全HTTP(Soure HTTP)通过安全套接字SSL(Source Socket Layer)协议在端口443上使用普通的HTTP

HTTPS使用的公共密钥的加密长度决定的HTTPS的安全级别,安全性的保证是以损失性能为代价 的。除了要测试加密是否正确,检查信息的完整性和确认HTTPS的安全级别外,还要注意在此安全级别下,其性能是否达到要求

4.2 服务器端的脚本漏洞检查

服务器端的脚本漏洞检查:存在于服务器端的脚本常常构成安全漏洞,这些漏洞又往往被黑客利用

4.3 防火墙测试

防火墙测试:防火墙是一种主要用于防护非法访问的路由器,在Web系统中是很常用的一种安全系统

五 与通常测试的区别

5.1 目标不同

测试以发现BUG为目标,安全测试以发现安全隐患为目标

5.2 假设条件不同

测试假设导致问题的数据是用户不小心造成的,接口一般只考虑用户界面。安全测试假设导致问题的数据是攻击者处心积虑构造的,需要考虑所有可能的攻击途径

5.3 思考域不同

测试以系统所具有的功能为思考域。安全测试的思考域不但包括系统的功能,还有系统的机制、外部环境、应用与数据自身安全风险与安全属性等

问题发现模式不同

测试以违反功能定义为判断依据。安全测试以违反权限与能力的约束为判断依据

————————————————

版权声明:本文为CSDN博主「测试小姐姐」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/HONGTester/article/details/109143881

中文版Postman,rap文档管理

评论