Android利用Fiddler进行网络数据抓包

标签: android 利用 fiddler | 发表时间:2014-03-18 18:11 | 作者:Java-Object
出处:http://www.iteye.com

介绍Android及IPhone手机上如何进行网络数据抓包,比如我们想抓某个应用(微博、微信、墨迹天气)的网络通信请求就可以利用这个方法。

相对于tcpdump配合wireshark抓包的优势在于: (1)无需root (2)对Android和Iphone同样适用 (3)操作更简单方便(第一次安装配置,第二次只需设置代理即可) (4)数据包的查看更清晰易懂,Fiddler的UI更简单明了 (5) 可以查看https请求。如果你坚持使用tcpdump也可见: 利用tcpdump和wireshark抓取网络数据包

 

PS:需要1台PC做辅助,且PC需要与手机在同一局域网内或有独立公网ip
1、PC端安装Fiddler
下载地址: Fiddler.exe,下面是Fiddler的简单介绍:
Fiddler是强大且好用的Web调试工具之一,它能记录客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展,在web开发和调优中经常配合firebug使用。
Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。 对于PC端Fiddler启动的时候默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以如果需要监听PC端Chrome网络请求,将其代理改为127.0.0.1:8888就可以监听数据了,手机端按照下面的设置即可完成整个系统的http代理。

 

2、 配置PC端Fiddler和手机
(1) 配置Fiddler允许监听https
打开Fiddler菜单项Tools->Fiddler Options,选中decrypt https traffic和ignore server certificate errors两项,如下图:
fiddler https options
第一次会提示是否信任fiddler证书及安全提醒,选择yes,之后也可以在系统的证书管理中进行管理。

 

(2) 配置Fiddler允许远程连接
如上图的菜单中点击connections,选中allow remote computers to connect,默认监听端口为8888,若被占用也可以设置,配置好后需要重启Fiddler,如下图:
fiddler remote connect

 

(3) 配置手机端
Pc端命令行ipconfig查看Fiddler所在机器ip,本机ip为10.0.4.37,如下图
ipconfig
手机端浏览器访问http://10.0.4.37:8888,即Fiddler所在机器ip加上端口,代理上网。显示如下图页面:
fiddler certifacate
点击FiddlerRoot certificate下载证书并重命名

如何未设置锁屏密码,可能会提示”您需要先设置锁屏密码才能使用凭据存储”,点击确定进行设置。
之后打开手机连接到同一局域网的wifi,并修改该wifi网络详情->显示高级选项,选择手动代理设置,主机名填写Fiddler所在机器ip,端口填写Fiddler端口,默认8888,如下图:
android network proxy

这时,手机上的网络访问在Fiddler就可以查看了,如下图微博和微信的网络请求:
微信抓数据包
可以双击上图某一行网络请求,右侧会显示具体请求内容(Request Header)和返回内容(Response Header and Content),如下图:
微博网络拦截
可以发现Fiddler可以以各种格式查看网络请求返回的数据,包括Header, TextView(文字), ImageView(图片), HexView(十六进制),WebView(网页形式), Auth(Proxy-Authenticate Header), Caching(Header cache), Cookies, Raw(原数据格式), JSON(json格式), XML(xml格式)很是方便。

 

停止网络监控的话去掉wifi的代理设置即可,否则Fiddler退出后手机就上不网了哦。

如果需要恢复手机无密码状态,Android端之后可以通过系统设置-安全-受信任的凭据-用户,点击证书进行删除或清除凭据删除所有用户证书,再设置密码为无。

 

转载自: http://www.oschina.net/question/221817_129716



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [android 利用 fiddler] 推荐:

Fiddler 抓包 Android

- - yiyun's Blog
我这里是 夜神模拟器,BlueStacks蓝叠 模拟器 没找到. 使用Fiddler+安卓模拟器对app抓包,包含https_f_yunsheng_t的专栏-CSDN博客_fiddler安卓模拟器抓包. Fiddler 配置代理, 允许远程的计算机连接. 点击 OK,保存确定后, 需要重启 Fiddler 才能生效.

Android利用Fiddler进行网络数据抓包

- - 编程语言 - ITeye博客
要 介绍Android及IPhone手机上如何进行网络数据抓包,比如我们想抓某个应用(微博、微信、墨迹天气)的网络通信请求就可以利用这个方法. 相对于tcpdump配合wireshark抓包的优势在于: (1)无需root (2)对Android和Iphone同样适用 (3)操作更简单方便(第一次安装配置,第二次只需设置代理即可) (4)数据包的查看更清晰易懂,Fiddler的UI更简单明了 (5) 可以查看https请求.

web debugger fiddler 使用小结

- - 博客园_首页
     内部分享时总结了一下fiddler的使用,总是想写一篇fiddler的文章,写之前搜了一下,发现园子里已经有介绍的大作了: Fiddler 教程 ,不过还是总结下,如有雷同,还请见谅啊,哈哈. fiddler是什么相信大家都很清楚了,用句通俗的话就是抓包工具,下面我们就从实际的功能来说下它是什么,能干什么.

Fiddler的灵活使用

- - WooYun知识库
Fiddler是一款强大的web调试工具,其基本用法网上已经有很详细的教程,这里我就不再多说了. 下面只是经验之谈,利用Fiddler各种功能达到自动检测漏洞的目的. 我们在进行漏洞挖掘过程中,由于需要做大量的请求分析、大量的测试规则,且需要不断的重放修改请求进行探测,这导致消耗的精力、时间巨大. 如果我们可以将请求保存下来,本地模拟请求的发送,自动修改请求,加载各种漏洞的测试规则,然后对请求的返回结果、状态进行漏洞特点的判断,那么对一些常见的sql注入、xss漏洞、文件包含等漏洞挖掘就非常的方便了.

再谈iOS抓包,使用Fiddler

- Lynn - 99css
之前介绍过iOS抓包的方法,缺点有:. Wireshark用起来不太习惯. 今天碰巧看到Secret iOS business; what you don’t know about your apps里面熟悉的Fiddler截图,恍然大悟,上面的问题就都解决了. 下面以VirtualBox为例. VirtualBox 工具栏 – 设备 – 更改网络连接 – 在网络选项卡中将连接方式改为 Bridged Adapter(默认为NAT).

Web调试工具 Fiddler 教程

- - 互联网旁观者
Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,都有很大的帮助. Fiddler的基本介绍. Fiddler的官方网站:  www.fiddler2.com.

抓包工具:Fiddler 2-强大功能之三 综合

- - 移动开发 - ITeye博客
在会话列表中选择2个会话,右键可选择Compaer进行会话比较,但此功能需要下载Windiff.exe. 嗅探localhost站点:. 默认的时候Fiddler是不能嗅探到localhost的网站,使用的localhost或127.0.0.1,默认会绕过代理,直接访问目标服务器. 只要在localhost后面加个点号(或者加.fiddler),Fiddler就能嗅探到.

使用Fiddler的X5S插件查找XSS漏洞

- - FreeBuf.COM
OWASP top 10的安全威胁中的CrossSite Scripting(跨站脚本攻击),允许攻击者通过浏览器往网站注入恶意脚本. 这种漏洞经常出现在web应用中需要用户输入的地方,如果网站有XSS漏洞,攻击者就可以通过这种漏洞向浏览网站的用户发送恶意脚本,同时也可以利用该漏洞偷取sessionid,用来劫持用户帐户的会话.

使用Fiddler对手机应用进行抓包测试

- - 标点符
手机应用的抓包测试相对于PC上要麻烦一些. 以下内容来自公司QA的指导,感谢~. WIFI共享工具: 猎豹免费WIFI (使用360WIFI等均可,只要保证在同一局域网下就都可以,连接同一个路由器也可以). 1、启动Fiddler,打开菜单栏中的 Tools > Fiddler Options.

Android利用canvas画各种图形

- - CSDN博客移动开发推荐文章
canvas通俗的说就是一张画布,我们可以使用画笔paint,在其上面画任意的图形. 可以把canvas视为Surface的替身或者接口,图形便是绘制在Surface上的. Canvas封装了所有的绘制调用. 绘制到Surface上的内容首先存储到一个内存区域(也就是对应的Bitmapz中),该Bitmap最终会呈现到窗口上.