Web安全测试规范
- 格式:doc
- 大小:3.11 MB
- 文档页数:75
Web软件测试技术随着互联网的快速发展,Web软件的应用日益普及。
为保障Web软件的质量和稳定性,Web软件测试成为了非常重要的环节。
本文将介绍几种常用的Web软件测试技术。
1. 功能测试功能测试是Web软件测试的基础,旨在验证Web软件的功能是否符合需求。
功能测试主要包括以下几个方面:1.1. 用户界面测试用户界面测试主要测试Web软件的用户界面是否符合预期,并验证用户界面操作的正确性。
测试重点包括页面布局、样式、组件交互、表单验证等。
1.2. 链接测试链接测试用于验证Web软件中各种链接的正确性和可用性。
包括页面内部链接和外部链接的测试,以及页面跳转和导航的测试。
1.3. 数据库测试数据库测试主要验证Web软件与数据库之间的数据交互是否正常、有效。
测试重点包括数据的插入、更新、删除与查询等操作,以及数据的完整性和一致性。
1.4. 性能测试性能测试主要测试Web软件在不同负载下的性能表现,包括响应时间、并发用户数、吞吐量等方面。
测试可以通过模拟用户访问、压力测试等手段进行。
2. 安全测试Web软件的安全性对于用户来说至关重要,安全测试旨在发现和修复可能存在的安全漏洞和风险。
安全测试包括以下几个方面:2.1. 输入验证测试输入验证测试用于验证Web软件对用户输入数据的有效性和安全性检查。
测试重点包括输入长度、特殊字符、SQL注入、XSS攻击等。
2.2. 认证与授权测试认证与授权测试主要验证Web软件的用户认证和授权机制的安全性。
测试重点包括用户登录、注销、角色权限等方面的测试。
2.3. 数据保护测试数据保护测试主要验证Web软件对用户数据的保护机制是否完善。
测试重点包括敏感数据加密、隐私保护、数据备份与恢复等方面。
2.4. 安全配置管理测试安全配置管理测试主要验证Web软件的安全配置是否合理。
测试重点包括管理员访问权限、系统配置文件安全性、防火墙等。
3. 兼容性测试Web软件需要在多种不同的浏览器、操作系统和设备上正常运行。
web 系统测试分为6 个部分:∙功能测试∙性能测试(包括负载/压力测试)∙用户界面测试∙兼容性测试∙安全测试∙接口测试(备注:红色为提供的方法与工具;蓝色为可选项,因Web系统的功能与要求而决定)1 功能测试1.1 链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。
链接测试可分为三个方面:一、是否所有链接按指示的那样链接到了该链接的页面;二、所链接的页面是否存在;三、保证Web应用系统上没有孤立的页面(孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。
)采取措施:采用自动检测网站链接的软件来进行。
推荐软件:Xenu Link Sleuth 免费绿色免安装软件HTML Link Validator 共享(备注:动态生成的链接无法测试)1.2 表单测试用户通过表单提交信息时,都是希望表单能正常工作。
一、依据表单填写内容的格式,字符与特殊字符等具体的要求结合数据校验对其进行测试。
二、对表单提交的完整性,以验正服务器信息的正确性。
如所属省份与所在城市是还匹配的完整性需求。
1.3 数据校验根据业务规则需要对用户输入进行校验,需要保证这些校验功能正常工作。
是对表单的输入内容进行校验,确认系统能够接受。
该项测试和表单测试可能会有一些重复。
1.2和1.3的采取措施:WinRunner(QTP)工具1.4 cookies测试Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。
如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。
测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响等。
如果Web服务中的SSL和TLS协议出现安全问题,后果会如何?很明显,这样的话攻击者就可以拥有你所有的安全信息,包括我们的用户名、密码、信用卡、银行信息……所有的一切。
本文将向读者详细介绍如何针对Web服务中的SSL和TLS协议进行安全渗透测试。
我们首先对这两种协议进行了概述,然后详细介绍了针对加密信道安全性的黑盒测试和白盒测试。
最后列出了一些常用的安全测试工具。
一、简介目前,许多重要的Web服务都使用了SSL和TLS协议对通信进行保护。
我们知道,http协议是使用明文进行传输的,但是像网络银行之类的web应用如果使用http协议的话,那么所有的机密信息都会暴露在网络连接中,这就像银行用一个透明的信封给我们邮寄信用卡帐号和密码一样,在从银行到达用户之间任何接触过这封信的人,都能看到我们的帐号和密码。
为了提高其安全性,经常需要通过SSL或者TLS隧道传输这些明文,这样就产生了https通信流量。
例如网络银行之类的应用,在服务器和客户端之间传输密码,信用卡号码等重要信息时,都是通过https协议进行加密传送的。
SSL和TLS是两种安全协议,它们通过加密技术为传输的信息提供安全信道、机密性和身份验证等安全功能。
我们知道由于对高级密码技术的出口限制,会造成遗留系统使用的是弱加密技术。
如果系统采用了弱密码,或者说密码强度过低的话,攻击者可以在有效的时间内破解密钥,而攻击者一旦得到了密钥,就像小偷得到了我们家的钥匙一样,所有的锁都会形同虚设。
但是,新Web服务器就不会使用弱加密系统了吗?答案是否定的,因为许多新Web服务器也经常被配臵成处理虚密码选项。
为了实现这些安全特性,协议必须确保使用的密码算法有足够的强度,并且密码算法得到了正确的实现。
即使服务器安装使用了高级的加密模块,但是如果配臵不当的话,也有可能为安全特性要求较高的通信信道的设臵了较弱的加密技术。
下面,我们将详细介绍如何对这两种协议的配臵进行安全审计。
Web应用安全测试规范Web应用安全测试规范V1、2全文结束》》年7月5日发布全文结束》》年7月5日实施版权所有侵权必究 All rights reserved 修订声明Revision declaration 本规范拟制与解释部门:安全解决方案部电信网络与业务安全实验室、软件公司安全TMG、软件公司测试业务管理部本规范的相关系列规范或文件:Web应用安全开发规范相关国际规范或文件一致性:OWASP Testing Guide v3 信息安全技术信息安全风险评估指南Information technology Security techniques Management of information and communications technology securityISO13335 替代或作废的其它规范或文件:无相关规范或文件的相互关系:本规范以Web应用安全开发规范为基础、结合Web应用的特点而制定。
版本号主要起草部门专家主要评审部门专家修订情况 V1、1 V1、2 增加 Web Service、上传、下载、控制台等方面的测试规范,更正V1、1 一些描述不准确的测试项目录Table of Contents1 概述、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、71、 1 背景简介、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、71、 2 适用读者、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、71、 3 适用范围、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、71、 4 安全测试在IPD流程中所处的位置、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、81、 5 安全测试与安全风险评估的关系说明、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、81、 6 注意事项、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、91、7 测试用例级别说明、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、92 测试过程示意图、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、103 WEB安全测试规范、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、113、 1 自动化WEB漏洞扫描工具测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、113、1、 1 AppScan application扫描测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、123、1、 2 AppScan Web Service 扫描测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、133、 2 服务器信息收集、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、133、2、 1 运行帐号权限测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、133、2、 2 Web服务器端口扫描、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、143、2、 3 HTTP方法测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、143、2、 4 HTTP PUT方法测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、153、2、 5 HTTP DELETE方法测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、163、2、 6 HTTP TRACE方法测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、173、2、7 HTTP MOVE方法测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、173、2、8 HTTP COPY方法测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、183、2、9 Web服务器版本信息收集、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、193、 3 文件、目录测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、203、3、 1 工具方式的敏感接口遍历、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、203、3、 2 Robots方式的敏感接口查找、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、223、3、 3 Web服务器的控制台、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、233、3、 4 目录列表测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、243、3、 5 文件归档测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、273、 4 认证测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、283、4、 1 验证码测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、283、4、 2 认证错误提示、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、293、4、 3 锁定策略测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、293、4、 4 认证绕过测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、303、4、 5 找回密码测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、313、4、 6 修改密码测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、313、4、7 不安全的数据传输、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、323、4、8 强口令策略测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、333、 5 会话管理测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、353、5、 1 身份信息维护方式测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、353、5、 2 Cookie存储方式测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、353、5、 3 用户注销登陆的方式测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、363、5、 4 注销时会话信息是否清除测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、363、5、 5 会话超时时间测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、373、5、 6 会话定置测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、383、 6 权限管理测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、393、6、 1 横向测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、403、6、 2 纵向测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、413、7 文件上传下载测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、463、7、 1 文件上传测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、463、7、 2 文件下载测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、473、8 信息泄漏测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、483、8、 1 连接数据库的帐号密码加密测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、483、8、 2 客户端源代码敏感信息测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、493、8、 3 客户端源代码注释测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、493、8、 4 异常处理、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、503、8、 5 HappyAxis、jsp页面测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、513、8、 6 Web服务器状态信息测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、523、8、7 不安全的存储、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、533、9 输入数据测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、533、9、 1 SQL注入测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、533、9、 2 MML语法注入、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、553、9、 3 命令执行测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、563、10 跨站脚本攻击测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、563、10、 1 GET方式跨站脚本测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、563、10、 2 POST方式跨站脚本测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、573、11 逻辑测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、583、12 搜索引擎信息收集、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、593、13 WEB SERVICE测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、593、14 其他、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、623、14、 1 class文件反编译测试、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、624 APPSCAN测试覆盖项说明、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、635 附件、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、645、 1 本规范所涉及的测试工具、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、64 Web安全测试规范缩略语清单缩略语全称 CRLF rn回车换行 LDAP Lightweight Directory Access Protocol 轻量级目录访问协议 MML man-machine language 人机交互语言 SessionID 标志会话的ID Web Service Web服务是一种面向服务的架构的技术,通过标准的Web 协议提供服务,目的是保证不同平台的应用服务可以互操作。
Web安全测试——手工安全测试方法及修改建议发表于:2017-7-17 11:47 ?作者:liqingxin ? 来源:51Testing软件测试网采编字体:大?中?小?|?上一篇?|?下一篇?|?打印?|我要投稿?|?推荐标签:?软件测试工具?XSS?安全测试工具常见问题1.XSS(CrossSite Script)跨站脚本攻击XSS(CrossSite Script)跨站脚本攻击。
它指的是恶意攻击者往Web 页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web 里面的html 代码会被执行,从而达到恶意用户的特殊目的。
测试方法:?在数据输入界面,添加记录输入:<script>alert(/30141/)</script>,添加成功如果弹出对话框,表明此处存在一个XSS?漏洞。
或把url请求中参数改为<script>alert(/30141/)</script>,如果页面弹出对话框,表明此处存在一个XSS 漏洞修改建议:过滤掉用户输入中的危险字符。
对输入数据进行客户端和程序级的校验(如通过正则表达式等)。
Eg:对用户输入的地方和变量有没有做长度和对”<”,”>”,”;”,”’”等字符是否做过滤2.CSRF与跨站脚本(XSS)CSRF与跨站脚本(XSS),是指请求迫使某个登录的浏览器向易受攻击的Web应用发送一个请求,然后以受害者的名义,为入侵者的利益进行所选择的行动。
测试方法:同个浏览器打开两个页面,一个页面权限失效后,另一个页面是否可操作成功使用工具发送请求,在http请求头中不加入referer字段,检验返回消息的应答,应该重新定位到错误界面或者登陆界面。
修改建议:在不同的会话中两次发送同一请求并且收到相同的响应。
这显示没有任何参数是动态的(会话标识仅在cookie 中发送),因此应用程序易受到此问题攻击。
因此解决的方法为1.Cookie Hashing(所有表单都包含同一个伪随机值):2. ?验证码3.One‐Time Tokens(不同的表单包含一个不同的伪随机值)客户端保护措施:应用防止CSRF攻击的工具或插件。
Web安全测试操作指导修订纪录目录1. 目的和范围 (3)1.1. 目的 (3)1.2. 范围 (3)2. 测试要素 (3)2.1. SQL注入测试 (3)2.1.1. 识别存在参数传递的页面 (3)2.1.2. 单引号过滤测试 (5)2.1.3. 注释符过滤测试 (6)2.1.4. 追加条件过滤测试 (7)2.1.5. POST注入测试 (9)2.2. 跨站脚本测试 (9)2.2.1. 尖括号测试 (10)2.2.2. 单引号/双引号测试 (12)2.2.3. 圆括号测试 (13)2.3. 跨目录访问测试 (14)2.3.1. 查找存在文件访问的链接 (14)2.3.2. 访问系统文件测试 (14)2.3.3. 父路径测试 (15)2.4. 权限控制测试 (15)2.4.1. 准备帐户 (15)2.4.2. 交换链接访问 (16)3. 常见问题 (16)1.目的和范围1.1. 目的此操作指导旨在通过一套标准化的可重复使用的快速测试方法,提供一套经过整合和简化的测试用例,供测试人员快速发现漏洞。
1.2. 范围本指导适用于识别Web应用存在的漏洞,供改进参考。
本指导不适用于进一步的渗透测试和获取系统的管理权限,不提供利用漏洞获取敏感资料或管理权限的方法。
2.测试要素2.1. SQL注入测试测试目的:检测非法的参数输入是否被注入SQL语句并参与执行。
提示:按照文字顺序进行测试操作即可。
2.1.1.识别存在参数传递的页面移动鼠标到各种页面的各种功能链接上(不要点击),看状态栏中显示的URL形式,如果存在参数传递(链接中含有问号?,后面带有变量和等号=及变量的值),则可以点击它进行SQL注入初步尝试:在本系统中,不支持这样的操作,故略过。
图移动鼠标寻找可能存在SQL注入漏洞的链接图含参数的正常显示的页面2.1.2.单引号过滤测试开始尝试提交非法参数-单引号:图含有单引号参数的出错页面出错了!据此判断:该系统未对参数进行合法性验证,非法参数被注入SQL语句,导致异常出现,可能存在SQL注入漏洞。
WEB测试方法(超全面)WEB测试方法在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。
基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。
重要的是,还要从最终用户的角度进行安全性和可用性测试。
然而,Internet和Web媒体的不可预见性使测试基于Web的系统变得困难。
因此,我们必须为测试和评估复杂的基于Web的系统研究新的方法和技术。
本文将 web 测试分为 6 个部分:功能测试性能测试(包括负载/压力测试)用户界面测试兼容性测试安全测试接口测试1功能测试1.1链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。
链接测试可分为三个方面。
首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。
1.2表单测试当用户通过表单提交信息的时候,都希望表单能正常工作。
如果使用表单来进行在线注册,要确保提交按钮能正常工作,当注册完成后应返回注册成功的消息。
如果使用表单收集配送信息,应确保程序能够正确处理这些数据,最后能让顾客收到包裹。
要测试这些程序,需要验证服务器能正确保存这些数据,而且后台运行的程序能正确解释和使用这些信息。
当用户使用表单进行用户注册、登陆、信息提交等操作时,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。
例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。
如果使用了默认值,还要检验默认值的正确性。
如果表单只能接受指定的某些值,则也要进行测试。
例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。
1.3数据校验如果系根据业务规则需要对用户输入进行校验,需要保证这些校验功能正常工作。
W e b安全测试规范内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)D K B A华为技术有限公司内部技术规范DKBAWeb应用安全测试规范2009年7月5日发布 2009年7月5日实施华为技术有限公司Huawei Technologies Co., Ltd.版权所有侵权必究All rights reserved修订声明Revision declaration本规范拟制与解释部门:安全解决方案部电信网络与业务安全实验室、软件公司安全TMG、软件公司测试业务管理部本规范的相关系列规范或文件:《Web应用安全开发规范》相关国际规范或文件一致性:《OWASP Testing Guide v3》《信息安全技术信息安全风险评估指南》《Information technology Security techniques Management of information and communications technology security》-ISO 13335替代或作废的其它规范或文件:无相关规范或文件的相互关系:本规范以《Web应用安全开发规范》为基础、结合Web应用的特点而制定。
目录 Table of ContentsWeb安全测试规范缩略语清单1概述1.1背景简介在Internet大众化、Web技术飞速演变、黑客工具日益普及的今天,针对Web的攻击和破坏不断增多,在线安全面临日益严峻的挑战,安全风险达到了前所未有的高度。
为了规避Web安全风险、规范Web安全开发,公司已经制定并发布了《Web 应用安全开发规范》;但如何系统的进行Web安全性测试,目前缺少相应的理论和方法支撑。
为此,我们制定《Web 安全测试规范》,本规范可让测试人员针对Web 常见安全漏洞或攻击方式,系统的对被测Web 系统进行快速安全性测试。
1.2 适用读者本规范的读者及使用对象主要为Web 相关的测试人员、开发人员、专职的安全测试评估人员等。
标准咨询GB/T 37931—2019《信息安全技术 Web 应用安全检测系统安全技术要求和测试评价方法》浅析施明明 谢宗晓(中国金融认证中心)GB/T 37931—2019《信息安全技术 Web 应用安全检测系统安全技术要求和测试评价方法》,于2020年3月1日开始实施,主要规定了Web 应用安全检测系统的安全技术要求、测评方法和等级划分。
由于这是产品测评类标准,因此与GB/T 18336.3—20151)保持了一致。
1 Web应用安全检测系统的概念Web 应用主要是指可以通过Web 访问的各类应用程序,其最大好处在于用户很容易访问,只需要有浏览器即可,不需要再安装其他软件。
应用程序一般分为B/S(Browser/Server,浏览器/服务器)架构和C/S(Client/Server,客户机/服务器)架构。
毫无疑问,Web 应用一般都是采用B/S 架构。
就本质而言,Web 应用与其他应用程序没有区别,只是由于基于Web,导致其采用了不同的框架和解释运行方式等。
Web 应用的产生带来了巨大的便利性,同时也带来了很大的安全问题。
这使得传统的安全产品,例如,防火墙,从最初的网络层(OSI 第3层),发展到会话层(OSI 第5层),直到应用层(OSI 第7层),工作在7层的防火墙,发展成为单独的门类,Web 应用防火墙(WAF)。
Web 应用安全检测系统原则上并不是一个单独的产品,而是一系列的功能产品的集合。
在GB/T 37931—2019 的3.1中对于“Web 应用安全检测系统”的概念给出了定义和描述,其中定义如下:对Web 应用的安全性进行检测的产品,能够依据策略对Web 应用进行URL 发现,并对Web 应用漏洞进行检测。
在第5章中,对于Web 应用安全检测又进行了进一步的描述,如下:Web 应用安全检测系统采用URL 发现、Web 漏洞检测等技术, 对Web 应用的安全性进行分析,安全目的是为帮助应用开发者和管理者了解Web 应用存在的脆弱性,为改善并提升应用系统抵抗各类Web 应用攻击(如:注入攻击、跨站脚本、文件包含和信息泄露等)的能力, 以帮助用户建立安全的Web 应用服务。