1,安全测试用例元素和排版如下:
2,手工安全测试功能点如下:
一、输入验证:
1.输入特殊字符,如:~!@#$%^&*()_+<>:”{}|
2.输入中英文空格,输入字符串中间含空格,输入首尾空格
3.输入特殊字符串NULL,null,0x0d 0x0a
4. 参考附录中的常用输出语句,SQL注入,XSS。
二、上传:
1.上传文件是否有格式限制,是否可以上传exe文件;
2.上传文件是否有大小限制,上传太大的文件是否导致异常错误,上传0K的文件是否会导致异常错误,上传并不存在的文件是否会导致异常错误;
3.通过修改扩展名的方式是否可以绕过格式限制,是否可以通过压包方式绕过格式限制;
4.是否有上传空间的限制,是否可以超过空间所限制的大小,如将超过空间的大文件拆分上传是否会出现异常错误。
5.上传文件大小大于本地剩余空间大小,是否会出现异常错误。
6.关于上传是否成功的判断。上传过程中,中断。程序是否判断上传是否成功。
7.对于文件名中带有中文字符,特殊字符等的文件上传。
三、下载:
1. 敏感文件路径:http://url/download.jsp?file=/etc/password.
四、URL:
1.某些需登录后或特殊用户才能进入的页面,是否可以通过直接输入网址的方式进入;(权限校验相关用例,在功能用例里面详细展开)
2.对于带参数的网址,恶意修改其参数,(若为数字,则输入字母,或很大的数字,或输入特殊字符等)后打开网址是否出错,是否可以非法进入某些页面;
3.搜索页面等url中含有关键字的,输入html代码或JavaScript看是否在页面中显示或执行。(参考附录中的常用输出语句,SQL注入,XSS)
4. 避免跨站请求伪造CSRF。同个浏览器打开两个tab页面,一个tab页面session失效后,另一个页面是否可操作成功。
五、Cookie:
1. 篡改cookie,查找是否有业务逻辑依赖cookie存储值而进行,如果有,则修改cookie的值,看是否导致功能不正常或业务逻辑错乱。
2. cookie加密测试,查看存储的cookie文件内容,看是否有用户名、密码等敏感信息存储,并且未被加密处理。
3. cookie内容安全检查(cookie过期日期设置的合理性,httponly属性的设置(ture),secure属性的设置(ture))。
附录:
1. xss
<input type="text"/>
<input/>
<input/
<script>alert('hello');</script>
1.jpg" onmouseover="alert('xss')
"></a><script>alert(‘xss’);</script>
http://xxx';alert('xss');var/ a='a
‘”>xss&<
a=”\” ; b=”;alert(/xss/);//”
<img src=“输出内容” border=“0” alt=“logo” />
“’”
‘”’
“””
“ “ “
“”“
“‘ ”
title=””
对输出数据到输出数据的对比,看是否出现问题。
2. 防止SQL注入
Admin--
‘or --
‘ and ( ) exec insert * % chr mid
and 1=1 ; And 1=1 ; aNd 1=1 ; char(97)char(110)char(100) ;
char(49)char(61)char(49) ;
%20AND%201=2;
‘and 1=1 ; ‘And 1=1 ; ‘aNd 1=1 ;
and 1=2 ; ‘and 1=2
and 2=2
and user>0
and (select count(*) from sysobjects)>0
and (select count(*) from msysobjects)>0
and (Select Count(*) from Admin)>=0
and 0<>(select count(*) from admin)
http://searchbox.mapbar.com/publish/template/template1010/?CID=qingke&tid=tid1010&cityName=tianjing<script>alert(1);</script>&nid=MAPBXITBJRQMYWJRXPCBX