1、一、安全性测试定义:安全性测试是指有关验证应用程序的安全等级和识别潜在安全性缺陷的过程。应用程序级安全测试的主要目的是查找软件自身程序设计中存在的安全隐患,并检查应用程序对非法侵入的防范能力,根据安全指标不同测试策略也不同。 二、测试范围正式环境:1.发布前需要对发布包进行一次杀毒。2.服务器需要安装杀毒软件并且定期更新和杀毒。3.服务器和数据库等密码需要满足一定的复杂度。功能类:1.认证模块必须采用防暴力破解机制。例如:验证码或者多次连续尝试登录失败后锁定帐号或 IP,账号冻结后,管理员可以手动解冻。2.对于每一个需要授权访问的页面或 servlet 的请求都必须核实用户的会话标识是否合法、
2、用户是否被授权执行这个操作,以防止 URL 越权。3.登录过程中,往服务器端传递用户名和口令时,必须采用 HTTPS 安全协议(也就是带服务器端证书的 SSL) 。4.用户产生的数据必须在服务端进行校验。5.所有非查询的操作必须有日志记录。6.密码需要满足一定的长度和复杂度,并且以高级的加密方法保存在数据库。7.口令在传输的过程中以密文的形式传输。8.输入密码时密码不能明文回显。输入密码不接受拷贝功能。9.修改密码时需要验证旧密码。10.日志中的密码不能以明文显示。11.超时验证。攻击类:SQL 注入:通过把 SQL 命令插入到 Web 表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服
3、务器执行恶意的 SQL 命令。测试方法:a 验证绕过漏洞就是or=or后台绕过漏洞,利用的就是 AND 和 OR 的运算规则,从而造成后台脚本逻辑性错误。 例如管理员的账号密码都是 admin,那么再比如后台的数据库查询语句是user=request(“user“)passwd=request(“passwd“)sql=select admin from adminbate where user=&user& and passwd=&passwd&那么我使用or a=a 来做用户名密码的话,那么查询就变成了select admin from adminbate where user=or a=
4、a and passwd=or a=a根据运算规则,这里一共有 4 个查询语句,那么查询结果就是:假 or 真 and 假 or 真,先算 and 再算 or,最终结果为真,这样就可以进到后台 了b 猜数据库的表名、列名猜表名And (Select count(*) from 表名)0或者也可以这样and exists (select * from 表名)and exists (select 列名 from 表名)Xss 攻击跨站脚本攻击(Cross Site Scripting 简称 XSS)测试方法:1、在文本输入地方输入 Script 代码,如:alert(“XSS“)。测试是否进行转义
5、2、在图片上传的地方上传 gif 格式的图片,图片使用记事本编辑插入一下内容:GIF89aalert(“XSS“)。测试是否会校验根据目前现有的资料认为以上的情况有遭受 XSS 攻击的风险。DOS 攻击DoS 是 Denial of Service 的简称,即拒绝服务1、死亡之 ping,使用大量裸机一直去 ping 服务器。测试方法:在运行中输入 ping 命令,如:ping 目标地址 -l 55000 -t2、 DDos 攻击分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户 /服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目
6、标发动 DoS 攻击,从而成倍地提高拒绝服务攻击的威力。没有第三次握手。根据目前掌握的资料认为,DDos 攻击是利用了 TCP/IP 协议的漏洞,除非不用 TCP/IP,才有可能完全抵御住 DDoS 攻击。同时测试模拟 DDos 攻击也存在着风险,所以对于该类型的攻击,建议以防御为主。网上看到的一些防御方法如下:a、关闭不必要的服务 b、限制同时打开的 Syn 半连接数目 c、缩短 Syn 半连接的 time out 时间 d、及时更新系统补丁测试工具网络上的安全性测试工具较多,但是模拟攻击的同时也有着风险,所以选择和使用工具的时候需要格外的小心。主流的安全性测试工具有:Cal9000、Web
7、Scarab 、appscan 等。下面简单讲一下 appscan 工具的使用:安装文件根据安装手册中说明进行解压安装和破解。Appscan 的测试流程1.在计划阶段:明确目的,进行策略性的选择和任务分解。明确目的:选择合适的扫描策略了解对象:首先进行探索,了解网站结构和规模确定策略:进行对应的配置按照目录进行扫描任务的分解按照扫描策略进行扫描任务的分解2.执行阶段:一边扫描一遍观察进行扫描先爬后扫(继续仅测试)3.检查阶段(Check)检查和调整配置4.结果分析(Analysis)对比结果汇总结果(整合和过滤)打开后 appscan 的主页面为:制定扫描配置:(重点制定测试策略)开始扫描(扫描分为探索和测试两步骤)执行测试中:测试结果:测试报告