Web安全测试也应该遵循尽早测试的原则,在进行功能测试的时候(应该执行下面的测试Checklist安全测试场景),然后在功能测试完成之后、性能测试之前进行扫描测试,可以用工具AppScan,Hp Webinspect,AWS等漏洞扫描工具进行扫描。 第一步:比较常用的安全测试Checklist如下: 1:不登录系统,直接输入登录后的页面URL是否可以访问。 2:不登录系统,直接输入下载文件的URL是否可以下载文件。 3:退出登录后,点击浏览器的的后退按钮能否访问之前的页面。 4:手动更改URL中的参数值能否访问没有权限访问的页面。如普通用户对应的URL中的参数为l=e,高级用户对应的URL中的参数为l=s,以普通用户的身份登录系统后将URL中的参数e改为s来访问没有权限访问的页面。 5.所有凭证都应该通过一个加密传输通道(比如在登录的过程中)。 6:安全页面应该使用https协议。 7:验证sql注入(包括数字型注入和字符型注入等)。 8:验证XSS跨站脚本漏洞,执行新增操作时候,要在所有输入框中输入 9.对文件上传功能应使用文件类型限制,或exe等可执行文件后,确认在服务器端是否可直接运行。 10:验证上传漏洞,只要Web应用程序允许上传文件,那有可能存在文件上传漏洞。因为有些程序没有对上传的文件进行格式验证,或者纯粹只在客户端做JS验证,攻击者可以通过firebug删除客户端的javascript验证,或者通过Burp Suit按正常的流程通过JavaScript验证,然后在传输的http层做手脚。 11.错误信息中是否含有SQL语句,SQL错误信息以及web服务器的其他敏感信息。 12:验证Session的有效期。 第二步:功能测试完成之后,性能测试启动之前,在用专业的扫描工具进行扫描,生成测试报告,比如WVS与AppScan都是位居前十名的扫描工具。