软件测试2019:第五次作业
一、回答下述问题
1、阐述常见的Web安全测试有几种类型?参考教材P173
常见的Web安全测试有7种,如下:
1、数据加密:某些数据需要进行信息加密和过滤后才能在客户端和服务器之间进行传输,包括用户登录密码、信用卡信息等。
2、登录或身份验证:一般的应用站点都会使用登录或者注册后使用的方式。必须对用户名和匹配的密码进行校验,以阻止非法用户登录。进行登录测试的时候,需要考虑输入的密码是否大小写敏感、是否有长度和条件限制,最多可以尝试多少次登录,哪些页面或者文件需要登录后才能访问下载等。
3、输入验证:在进行Web安全性测试时,每个输入域都需要用标准的机制验证,长度、数据类型等符合设定要求,不允许输入JavaScript代码,包括验证从数据库中检索的数据、传递到组件或Web服务的参数等。
4、SQL注入:从客户端提交特殊的代码,从而收集程序及服务器的信息,从而获取必要的数据库信息,然后基于这些信息,可以注入某些参数,绕过程序的保护,针对数据库服务器进行攻击。
5、超时限制:Web应用系统一般会设定“超时”限制,当用户长时间不做任何操作时,需要重新登录才能打开其他页面。
6、目录:如果Web程序或Web服务器的处理不适当,可以通过简单的URL替换和推测,使整个Web目录暴露出来,带来严重的安全隐患。
7、操作留痕:为了保证Web应用系统的安全性,日志文件是至关重要。需要测试相关信息是否写进入了日志文件,是否可追踪。
二、安全测试工具调研
1. 概述
列出常见的安全测试工具,画一张表,加以说明。格式如下:
序号 | 安全测试工具 | 商用 OR 免费 | 检测对象(二进制代码/源代码) |
---|---|---|---|
1 | Nessus | 均有 | Nessus是最受欢迎的漏洞扫描器,也是目前第三大流行安全程序 |
2 | Snort | 免费 | 对网络上的数据包进行抓包分析 |
3 | Nagios | 均有 | 监视系统运行状态和网络信息的监视系统 |
4 | Ettercap | 免费 | Linux和BSD系统下的多用途数据包嗅探程序,也已经被移植到Windows平台下。主要测试企业网络以抵御中间人攻击(MITM) |
5 | Infection Monkey | 免费 | 主要用于数据中心边界及内部服务器安全性的自动化检测。 |
6 | Delta | 免费 |
它可以在不同的环境中自动实例化针对SDN元素的攻击事件, 可以帮助发现SDN部署中未知的安全问题。 |
7 | Cuckoo sandbox | 免费 | 用于安全的测试文件,基于虚拟化环境所建立的恶意程序分析系统能自动执行并且分析程序行为。 |
8 | Sleuth Kit | 免费 | Lynis是一个为系统管理员提供的 Linux和Unix的审计工具 。 Lynis扫描系统的配置,并创建概述系统信息与安全问题所使用的专业审计。 |
... |
2. 安全测试工具试用
选择一个开源的安全测试工具(可以参考教材 P176),开展试用,写一个试用报告。报告内容
1)记录完整的测试过程(工具安装、环境设置、测试过程、结果分析),包括脚本文件;
2) 提交安全测试报告,描述所做的测试、遇到的问题、结果分析等,要包括主要的测试运行截图
安装成功以后运行