Fiddle Proxy
1、抓包原理
2、方法优劣
3、准备工作
1).检查电脑网络连接
a.使用同网络内的另一台电脑)ing本机,检查是否连通正常。
原因:我之前测HTML5项目就发现Fiddler代理抓不到包,手机设置均正确,后发现是网络内找不到本机,本机防火墙设置问题。
另外需要关注是否同一网络,如果手机GPRS等上网,你在局域网内抓包...哥觉得你可以改行了...
(约定:后文所述Fiddler所在电脑均称为本机)
2).Fiddler安装
a.下载地址: http://fiddler2.com/get-fiddler
b.安装:省略(下一步...下一步即可)
3).Fiddler配置
a.允许远程计算机连接Fiddler
菜单:Tools-> Fiddler Options->Connections,勾选"Allow remote computers to connect"
注:8888为默认端口号,可修改,但需注意两点,一是本机空闲端口,二是手机代理设置时端口要一致。
b.配置可捕获HTTPS请求(*不需要捕获HTTPS,则忽略此步*)
菜单:Tools-> Fiddler Options->Connections,勾选"Capture HTTPS CONNECTs"后
再勾选"Decrypt HTTPS traffic"、"Ignore server certificate errors"
注1:勾选项英文不认识,请Google,不另做解释
4).手机安装HTTPS证书(*不需要捕获HTTPS,则忽略此步*)
a.首先确定Fiddler所在电脑的IP地址:例:192.168.8.8
b.打开被测手机浏览器,访问http://192.168.8.8:8888,点"FiddlerRoot certificate" 然后安装证书
注:Iphone、Ipad安装则很简单,点击安装即可。Android安装稍微麻烦点,则需要先设置手机锁屏密码、PIN码,安装证书时会提示,按步骤走即可。
4、实例
ThinkDrive抓包实例
一期测试时,涉汲到APP安全测试,因此需要查看传输数据是否存在明文密码等。
1).开启Fiddler,确定本机IP、Fiddler端口号
本机IP:192.168.8.8
Fiddler端口号:8888
2).手机连接本机所在同网络Wifi,设置代理
a.代理主机名:Fiddler所在电脑IP
b.代理服务器端口: Fiddler使用的端口
3).APP操作,生成请求数据
a.例:登录
b.例:退出登录
4).分析Fiddler抓包数据
a.例:登录请求分析
1).双击查看登录请求,选择WebForms或JSON等其他类标签,查看请求参数值,对照接口文档及你想要测试的点分析,请求是否正确,查看返回数据是否正确。
2).同帐号,不同密码;不同帐号,同密码等测试用例,测试多次登录后发现,密码仅为MD5加密,没有对密码进行很好的加密传输
3).分析存在以下问题:
问题1:帐号密码采用http传输,帐号与密码(MD5值)局域网可以捕获;
问题2:密码虽采用MD5加密,但传输未加密,简单密码可以在线解密(图中密码在线解密不到1秒:123qwe);问题3:密码不解密也一样可以登录,通过A帐号在app登录,再用sniffer得到的B 帐号与密码(MD5值),使用Fiddler修改A帐号的请求完成B帐号在APP登录。
注1:Fiddler功能使用,请Google或百度,此处不详说
注2:以上实例仅为参考,具体测试,以所相关业务及测试目标为导向进行测试分析。
Fiddle Proxy的更多相关文章
- 手机代理调试Charles Proxy和Fiddler
一.Charles Proxy Charles是一个HTTP代理/HTTP监控/反向代理的工具. 使用它开发者可以查看设备的HTTP和SSL/HTTPS网络请求.返回.HTTP头信息 (cookies ...
- 实现代理设置proxy
用户在哪些情况下是需要设置网络代理呢? 1. 内网上不了外网,需要连接能上外网的内网电脑做代理,就能上外网:多个电脑共享上外网,就要用代理: 2.有些网页被封,通过国外的代理就能看到这被封的网站:3. ...
- Could not create SSL connection through proxy serve-svn
RA layer request failedsvn: Unable to connect to a repository at URL xxxxxx 最后:Could not create SSL ...
- could not initialize proxy - no Session
这是一个精典的问题:因为我们在hibernate里面load一个对象出来时,用到的是代理对象,也就是说当我们在执行load方法时并没有发sql语句,而是返回一个proxy对象.只有当们具体用到哪个ge ...
- ABP源码分析三十七:ABP.Web.Api Script Proxy API
ABP提供Script Proxy WebApi为所有的Dynamic WebApi生成访问这些WebApi的JQuery代理,AngularJs代理以及TypeScriptor代理.这些个代理就是j ...
- Java设计模式之代理模式(Proxy)
前言: 最近在研究Retrofit开源框架的时候,其主要核心代码是通过注解标示参数,动态代理模式实现具体接口,反射机制进行参数解析,最终实现发送请求.其实之前在学习Xutils源码的时候,Xutils ...
- 设计模式(十三)代理模式(Proxy Pattern)
一.引言 在软件开发过程中,有些对象有时候会由于网络或其他的障碍,以至于不能够或者不能直接访问到这些对象,如果直接访问对象给系统带来不必要的复杂性,这时候可以在客户端和目标对象之间增加一层中间层,让代 ...
- 设计模式-代理模式(Proxy Model)
文 / vincentzh 原文连接:http://www.cnblogs.com/vincentzh/p/5988145.html 目录 1.写在前面 2.概述 3.目的 4.结构组成 5.实现 5 ...
- 神秘代理-Proxy
前言: 代理模式作为常见的设计模式之一,在项目开发中不可或缺.本文就尝试着揭开代理的神秘面纱,也欢迎各路人批评指正! 1.如何实现代理: [假设有个关于汽车移动(move)的计时需求]设计:Movea ...
随机推荐
- Python3+Selenium2完整的自动化测试实现之旅(一):自动化测试环境搭建
1 环境搭建准备 (1) 下载Python3版本的安装包,直接官网下载即可:Python官网:https://www.python.org/ (2) 下载Python的基础工具包p ...
- .net 获取时间十二进制与二十四进制
[说明] visual studio工具,.net项目,获取时间 [易错问题] ①二十四小时制(HH小时大写) System.DateTime.Now.ToString("yyyy-MM-d ...
- Linux使用wget、安装Python
原文:https://blog.csdn.net/ghost_chou/article/details/81905302 1.指定需要安装的目录或创建并访问到该选择的目录下. mkdir /data/ ...
- iOS:我的学习路径
1.复习C语言(半个月) <C Primer Plus>1-6章 2.学习Objective-C基础语法(一周) 黑马程序员视频 3.直接用Xcode开始APP的实战(半个月) 黑马程序员 ...
- 测者的测试技术手册:自动化的自动化EvoSuite:Maven项目集成EvoSuite实战
EvoSuite是由Sheffield等大学联合开发的一种开源工具,用于自动生成测试用例集,生成的测试用例均符合Junit的标准,可直接在Junit中运行.得到了Google和Yourkit的支持. ...
- js 计算金额是否小于总金额,大于是不能保存
计算金额是否小于总金额,大于是不能保存 function kpjejs(oInput){ var result = 0; var vresult = "kpsq_kpzje";// ...
- SQL SERVER-开启xp_cmdshell
在sql server中执行cmd命令,报以下异常. EXEC master.sys.xp_cmdshell 'dir c:/' Msg 15281, Level 16, State 1, Proce ...
- Win7环境 搭建IIS环境。发布asp.net MVC项目到IIS(第二期)
在IIS环境中给发布项目修改域名,192.168.1.1:8081 ---->> www.preject.com 一.在网站主页中,1找到绑定网站.2编辑. 二.修改网站配置参数. 三. ...
- 记录Html+Css流程表格
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- linux 软链接的创建、删除和更新
大家都知道,有的时候,我们为了省下空间,都会使用链接的方式来进行引用操作.同样的,在系统级别也有.在Windows系列中,我们称其为快捷方式,在Linux中我们称其为链接(基本上都差不多了,其中可能有 ...