浅谈(安全)测试注意事项二

除了正常的功能测试外,我们考虑更多的是异常测试,那异常测试时应该如何进行?

1、截取和修改Post请求

一旦截取到请求后,对于请求头的内容可以随意的增加,删除及修改

2、绕开输入限制

截取请求,输入超级长的内容,如果接收到错误,比如  error 500 :internal server error ,务必检查服务器和应用以查明更深层的原因。这表明做的输入验证太少了。

即使有合适的输入验证,也可能忽略输入的长度,重复的提交这样长的输入,服务器的内存可能会被填满,而应用的响应速度会变得越来越慢,最终会慢的好像被冻结住了

这是拒绝服务的一种形式.

3、篡改url

手动去修改url,比如http://example.com/web/这个url

可以修改http://root:[email protected]:8080/web/main.php?readonly=false&section=1;

如果Url中带着 key=value的内容时,可以在之前或者之后添加多个随意的key=value的内容,去尝试发现劣质的代码

4、自动修改url

http://www.squarefree.com/pornzilla/

对于url含有数字的变量,可以使用以上工具在 Firefox进行批量生成连接,可以选择手动点击也可以复制保存,用curl 或者wget进行,如以下

5、测试对url长度的处理

6、编辑cookies,cookise存储着很多用户的信息,在可以编辑cookies时,可以考虑安全性方面的测试。

在编辑cookies时需要考虑前面一节说的编码方式,如果身份认证可以被轻易的预测到是非常有益的

7、上传恶意名字的文件或者大文件

许多xml解析器在解析xml时会将xml整个结构保留在内存中,billion laughs攻击就是基于这一点。这份文档的实体都引用了

两次前一项实体,所以当每项实体都正确解析出来,内存中将有几十亿的 ha,通常会耗尽程序的可用内存

windows xp中的xml处理器是这种攻击的受害者,不可将这份xml放在桌面或者任何系统目录中

时间: 2024-11-09 00:08:28

浅谈(安全)测试注意事项二的相关文章

浅谈(接口)测试注意事项四

大概列举一下自己在工作中总结的一些关于接口测试需要考虑的内容 接口测试  checklist (检测点) 1.  正常功能: a. 只填入接口参数必填项,实现正常功能 b. 参数全部填写正常数据,实现正常功能 2. 接口背后逻辑是否正确 例如:红包领取个数接口,接口内部逻辑如何计算红包领取个数的逻辑是否正确,这个需要和开发了解具体实现逻辑,和产品了解需求,看是否一致 3. 接口所有返回类型的code及msg都要用例覆盖:返回类型的code及数据是否满足所有业务的需求 4.  异常: a.必填项字

浅谈探索性测试

今天学习时看了一篇谈探索性测试的文章.有一点感触. 探索性测试如果在测试策略层面应该和应变式的测试策略相符合. 暂且不谈探索性测试的方法以及那些利弊. 只是简单的打个比喻,反应一下我对探索性测试的认知. 农村的孩子以前都放农忙假,要求学生去拾麦穗(好像语文课本里还有相关内容,叫颗粒归仓). 探索性测试就像捡麦穗,刚割完的麦子,确实能捡到不少丢的麦穗. 但是都捡过一遍甚至几遍了,再去捡,就捡的少了. 我们平时做探索性测试的关键也在此,只做一遍. 探索这个词是最能反映人类智慧的词,很费脑细胞,不要把

浅谈APP测试经验

近年来,随着智能手机兴起,很多App软件不断涌起.那今天我浅谈一下本人在工作如何测试App软件与经验. 一.App三种开发模式介绍(测试App时,必须要先了解您测试的App是用什么模式开发的) 1.Native APP 2.Web APP 3.Hybrid AP 对App开发模式不清楚的人.请自行百度. 二.通用App测试点(这些点必须测试) 1. 使用App时,手机耗电情况: 2 .App占用手机内存情况: 3 .App安装包的大小: 4. 使用App时,流量消耗情况: 5 .App在WiFi

浅谈Android应用保护(二):Anti-Analysis的方法和工具

本文内容翻译自国外文献,原文链接请参看文章底部 之前讲到过,应用开发者为了保护自己的应用不被别人分析和篡改,会将应用的安全性寄托在某个(些)机制上.可以被用来保护应用的机制有很多,效果和实现难度也是各有特点.有这样一类应用保护方法,叫做针对逆向工具的对抗(Anti-Analysis). 针对逆向工具的对抗,简单来讲就是利用逆向工具自身的缺陷或者是Android特有的机制,使应用逆向分析工具在工作过程中失效或者报错崩溃,分析过程无法继续实施.从而达到保护应用的目的. 这种保护应用的方式的优点就是实

浅谈Android五大布局(二)——RelativeLayout和TableLayout

在浅谈Android五大布局(一)中已经描述了LinearLayout(线性布局).FrameLayout(单帧布局)和AbsoulteLayout(绝对布局)三种布局结构,剩下的两种布局RelativeLayout(相对布局)和TableLayout(表格布局)相对之前布局结构稍显复杂一点,所以这里另起篇幅进行介绍. RelativeLayout: RelativeLayout按照各子元素之间的位置关系完成布局.在此布局中的子元素里与位置相关的属性将生效.例如android:layout_be

浅谈Android五大布局(二)——RelativeLayout和TableLayout【转】

http://www.cnblogs.com/wisekingokok/archive/2011/08/24/2152004.html 在浅谈Android五大布局(一)中已经描述了LinearLayout(线性布局).FrameLayout(单帧布局)和AbsoulteLayout(绝对布局)三种布局结构,剩下的两种布局RelativeLayout(相对布局)和TableLayout(表格布局)相对之前布局结构稍显复杂一点,所以这里另起篇幅进行介绍. RelativeLayout: Relat

浅谈容量测试与容量规划

在性能测试中,需要根据具体的性能需求和系统架构等情况,采用不同的测试策略,其中最常见的策略就有容量测试. 这篇博客,就来聊聊容量测试以及容量规划的一些内容... 一.什么是容量?如何理解? 在开始之前,有一点需要知道:系统的处理能力是有限的! 1.容量定义 所谓容量,即系统处于最大负载状态或某项指标达到所能接受的最大阈值下对请求的最大处理能力. 2.如何理解 ①.系统的容量(处理能力)是有限的: ②.容量是可度量的: 二.如何统计容量指标? 1.统计维度 一般来说,可以从如下两个维度来定量系统的

浅谈Junit测试中反射和Jmock的应用

最近由于项目的需要,开发后的代码强制编写Junit测试,并且达到一定的coverage probility(主要应付客户).所以,为了达到一定的覆盖率,鄙人不得不在Case中大量使用反射(一般是针对private方法)和JMock(主要针对一些属性方法). 小编是做开发出身,由于对Spring的源代码有过或多或少的了解,因此对反射技术也有一定的了解.故在使用反射进行Junit测试的过程中,还算是没有遇到太多问题.小编认为,使用反射最重要的是要分清两点: 一是要反射的实现类(记住,这里的对象类型必

【C++】浅谈三大特性之一继承(二)

三,继承方式&访问限定符 派生类可以继承基类中除了构造函数和析构函数之外的所有成员,但是这些成员的访问属性是由继承方式决定的. 不同的继承方式下基类成员在派生类中的访问属性: 举例说明: (1)public继承 eg1: #include <iostream> using namespace std; class Person { public://公有数据成员 int length;//身高 int weight;//体重 }; class Student:public Person