博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Fiddler对android应用抓包
阅读量:6808 次
发布时间:2019-06-26

本文共 2181 字,大约阅读时间需要 7 分钟。

 

工作原理

先上个图

此图一目了然,可以看出fiddler在请求中所处的位置,我们就可以确定它能干些什么。

 

WinInet(“Windows Internet”)API帮助程序员使用三个常见的Internet协议,

这三个协议是用于World Wide Web万维网的超文本传输协议(HTTP:Hypertext Transfer Protocol)、文件传输协议(FTP:File Transfer Protocol)和另一个称为Gopher的文件传输协议。
WinInet函数的语法与常用的Win32 API函数的语法类似,这使得使用这些协议就像使用本地硬盘上的文件一样容易。

 

它实际工作在本机的8888端口http代理,我们启动fiddler时,它会自动更改代理设置:(可以在cmd中输入inetcpl.cpl来打开IE选项)

 

chrome中:

从此我们可以看出,只要是http的请求,在请求发起离开本机之前都会经过fiddler,当response回来,没有达到实际请求者时,也会经过fiddler:这样我们就可以在轻易的实现修改请求和响应的内容,这样我们就可以轻松的调试现网的程序。

http://www.cnblogs.com/forcertain/archive/2012/11/29/2795139.html

fiddler中打开IE选项:

与其它工具的区别

       firebug、IE和chrome自带的开发者工具:这是前端开发的利器了,它们监听浏览器发起的请求和给浏览器的响应,显示请求数据和响应数据,这个fiddler基本功能一致,但它只是监听,只是对请求和响应数据的记录,而fiddler完全是接管了请求和响应。

前言:对于移动端应用来说,常常是需要进行抓包分析数据参数的,抓包常规想到的解决方案就是通过adb、tcpdump生成抓包文件后,上传至PC端,再通过wirshark查看抓包的数据,但是,对于android应用来说,客户端与服务端的交互更多的是以REST接口服务形式的,多基于HTTP/HTTPS协议,采用tcpdump方式缺点也就比较明显:

1、手机需要root权限

2、操作过程麻烦,且wirshark查看时数据量众多需要过滤

3、分析的是dump后的文件,不是操作客户端时实时交互的数据

因此,本文介绍通过Fiddler进行android抓包,以方便快捷地实现对手机应用进行抓包分析

 

Fiddler简介:Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯。

通过Fiddler抓包过程:手机连接WLAN网络——设置HTTP代理——手机所有HTTP访问都经过Fiddler这个中介——访问外面的Web网络

一、工具下载:

Fiddler下载地址:http://www.telerik.com/download/fiddler

二、Fiddler设置

打开Fiddler,     Tools-> Fiddler Options .
切换至HTTPS面板
选中"Decrpt HTTPS traffic",设置Fiddler可以截获HTTPS请求

选中checkbox, 弹出如下的对话框,点击"YES"

在弹出的对话框 点击"Yes" ,就可以捕获本机的https请求了

 

 

切换至Connections面板

选中"Allow remote computers to connect".允许别的机器把HTTP/HTTPS请求发送到Fiddler上来

配置完后需要按提示重启Fiddler

三、手机设置HTTP代理

1.进入手机设置——无线网络——WLAN选择界面
2.长按某WLAN接入点,点击“修改网络”
3.代理设置处,选择手动,例如输入代理服务器主机名(Fiddler安装所在的机器IP):192.168.1.10,端口:8888
四、捕获HTTPS请求:
这一步是为了让Fiddler能捕获HTTPS请求。如果只需要截获HTTP请求,可以忽略这一步
1. 首先要知道Fiddler所在的机器的IP地址:例如安装了Fiddler的机器的IP地址是:192.168.1.10
2. 打开浏览器, 访问  http://192.168.1.10:8888, 点"FiddlerRoot certificate" 然后安装证书

五、正常使用客户端或用浏览器打开网页,如果有发起HTTP/HTTPS请求,则在Fiddler中将能看到抓取到的数据

 

Fiddler使用教程参见:http://www.cnblogs.com/TankXiao/archive/2012/02/06/2337728.html#qita

Fiddler手机抓包参考:http://www.cnblogs.com/TankXiao/p/3063871.html

http://blog.csdn.net/hunterno4/article/details/19998273

http://jingyan.baidu.com/article/2a1383289d7792074b134f69.html

http://jingyan.baidu.com/article/2f9b480d81df9241ca6cc258.html

 

你可能感兴趣的文章
Java内存模型
查看>>
AppLinks使用详解
查看>>
JavaScript正则表达式19例(11)
查看>>
UNIX发展历史流程图
查看>>
负载均衡之LVS详解
查看>>
WP7实例篇之土豆搜索器(2)
查看>>
图解Cisco Packet Tracert之利用TFTP来升级路由器的IOS
查看>>
使用SDM配置基于IPsec 加密的GRE隧道
查看>>
Windows远程桌面及其相关问题
查看>>
Spring Security 学习之X.509认证
查看>>
nginx技术(4)nginx地址重写
查看>>
Discuss about PortableRemoteObject.narrow()
查看>>
用SHELL脚本自动化安装Nagios服务器端和客户端的
查看>>
System Center 2012 R2 CM系列之配置configuration manager防火墙设置
查看>>
我的CSS命名规则
查看>>
Configuration Manager 2012 R2系统需求
查看>>
OMF添加在线日志_OCP学习笔记(4)
查看>>
【Vue】详解Vue生命周期
查看>>
MySQL数据库无法启动的简单排错
查看>>
虚拟化技术在企业中的实际应用
查看>>