Fiddler中如何抓取app中https(443端口)数据

Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获手机发出的HTTP/HTTPS请求,总结下Fiddler截获IPhone和Android发出的HTTP/HTTPS包,前提条件是:安装Fiddler的机器,跟Iphone、Android在同一个网络里, 否则手机不能把HTTP发送到Fiddler的机器上来。

如果你遇到了这个坑:手机上已经设置好代理,开启代理后,却发现手机上不了网。

那么应该是和电脑防火墙有关,此时需要设置下防火墙,如过设置无效或者不知道怎么设置的话直接将防火墙暂时性关闭吧。

一、准备工作

不论IPhone、Android,首先都需要配置Fiddler,打开Fiddler,Tools->Telerik Fiddler Options...(配置完后记得要重启Fiddler)。
选中"Decrpt HTTPS traffic",Fiddler就可以截获HTTPS请求
选中"Allow remote computers to connect",是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来,如图

三、Android上安装Fiddler证书

这一步是为了让Fiddler能捕获HTTPS请求。如果你只需要截获HTTP请求,可以忽略这一步

1. Android设置代理服务器,打开wifi设置页面,找到连接的网络,进入“修改设置”,修改代理为手动

勾选“显示高级选项”,在接下来显示的页面中,点击“代理”,选择“手动”,在“代理服务器主机名”和“代理服务器端口”中写上电脑在WiFi中的地址和上面设置的端口号(8888),最后点“保存”。

代理设置如下:

2. 导证书到Android设备
Fiddler本质上是一个HTTPS代理服务器,其自己带的证书显然不会在Android设备的受信任证书列表里。
有些应用程序会查看服务器端的证书是否是由受信任的根证书签名的,如果不是就直接跳出。
所以,为了保险起见,我们要将Fiddler代理服务器的证书导到Android设备上。
导入的过程非常简单,打开设备自带的浏览器,在地址栏中输入代理服务器的IP和端口,例如本例中我们会输入192.168.1.167:8888,进入之后会看到一个Fiddler提供的页面:

输入一个证书名称(这里自己填写即可),然后直接点“确定”就好了。

二、如果你使用的是iPhone的话

1. 首先要知道Fiddler所在的机器的IP地址:假如我安装了Fiddler的机器的IP地址是:192.168.1.104
2. 打开IPhone 的Safari,访问  http://192.168.1.104:8888, 点"FiddlerRoot certificate",然后安装证书

3. IPhone上配置Fiddler,打开IPhone,找到网络连接,打开HTTP代理,输入Fiddler所在机器的IP地址(比如192.168.1.104)以及Fiddler的端口号8888。

最后,这种方法的一些优点和缺点。

优点:1)手机不需要root就可以抓包;     2)可以用真机抓包,有些程序是抗动态分析的,能够判断自己运行在模拟器中。

缺点:1)必须要用WiFi连接(没有路由器的话可以在笔记本上下载个WiFi程序即可,网上有很多。或者台式机使用移动WiFi,淘宝有很多,10来块一个);    2)要抓包分析的应用程序必须自己支持代理服务器的设置。

原文地址:https://www.cnblogs.com/Snail-offort/p/10747582.html

时间: 2024-10-07 16:35:43

Fiddler中如何抓取app中https(443端口)数据的相关文章

fiddler抓取app的https的包

线上问题的排查有时候需要抓包,但是是https协议的,则需要安装证书 在Android 6.0 (API level 23)及以前,APP默认信任系统自带的CA证书以及用于导入的CA证书,Android 6.0 (API level 23)以后,APP默认只信任系统自带的CA证书,对于用户导入的不予理会. 也就是说目前只能使用6.0以下的安卓系统进行抓包了,当然也有其他办法,会比较麻烦一点 目录 1.设置fiddler 2.设置手机 3.抓包 1.设置fiddler 第一步:设置允许远程连接 参

(转)抓包工具Fidder详解(主要来抓取Android中app的请求)

今天闲着没吊事,来写一篇关于怎么抓取Android中的app数据包?工欲行其事,必先利其器,上网google了一下,发现了一款神器:Fiddler,这个貌似是所有软件开发者必备神器呀!这款工具不仅可以抓取PC上开发web时候的数据包,而且可以抓取移动端(Android,Iphone,WindowPhone等都可以),太强大了,以前搞web的时候,知道有一款叫做HttpWatch工具,可以抓取web的请求数据包的,但是和这款神器来比较,那都弱爆了!吹到现在都是无用的,下面就来看看实例吧!开始兴奋吧

抓包工具Fidder详解(主要来抓取Android中app的请求)

抓包工具Fidder详解(主要来抓取Android中app的请求) 今天闲着没吊事,来写一篇关于怎么抓取Android中的app数据包?工欲行其事,必先利其器,上网google了一下,发现了一款神器:Fiddler,这个貌似是所有软件开发者必备神器呀!这款工具不仅可以抓取PC上开发web时候的数据包,而且可以抓取移动端(Android,Iphone,WindowPhone等都可以),太强大了,以前搞web的时候,知道有一款叫做HttpWatch工具,可以抓取web的请求数据包的,但是和这款神器来

Fiddler 抓取eclipse中的请求

代码中添加 System.setProperty("http.proxySet", "true"); System.setProperty("http.proxyHost", "127.0.0.1"); System.setProperty("http.proxyPort", "8888"); 或者eclipse 中设置 Windows > preferences > jav

Fiddler高级用法—Fiddler Script抓取app网页json数据并保存

FiddlerScript 环境搭建 官网下载: https://www.telerik.com/fiddler 安装步骤参照下面这篇文章(安装证书抓取https皆有详细步骤): https://www.cnblogs.com/liulinghua90/p/9109282.html 简单Fiddler Script 如下展示了Fiddler在客户端与服务端进行交互时的位置,在客户端发起http请求及接收服务端返回的数据时都可截取交互的数据.那么在Fiddler中我们就可以抓取所有http请求的数

使用PHP的正则抓取页面中的网址

最近有一个任务,从页面中抓取页面中所有的链接,当然使用PHP正则表达式是最方便的办法.要写出正则表达式,就要先总结出模式,那么页面中的链接会有几种形式呢? 链接也就是超级链接,是从一个元素(文字.图片.视频等)链接到另一个元素(文字.图片.视频等).网页中的链接一般有三种,一种是绝对URL超链接,也就是一个页面的完整路径:另一种是相对URL超链接,一般都链接到同一网站的其他页面:还有一种是页面内的超链接,这种一般链接到同一页面内的其他位置. 搞清楚了链接的种类,就知道要抓链接,主要还是绝对URL

浅谈如何使用python抓取网页中的动态数据

我们经常会发现网页中的许多数据并不是写死在HTML中的,而是通过js动态载入的.所以也就引出了什么是动态数据的概念, 动态数据在这里指的是网页中由Javascript动态生成的页面内容,是在页面加载到浏览器后动态生成的,而之前并没有的. 在编写爬虫进行网页数据抓取的时候,经常会遇到这种需要动态加载数据的HTML网页,如果还是直接从网页上抓取那么将无法获得任何数据. 今天,我们就在这里简单聊一聊如何用python来抓取页面中的JS动态加载的数据. 给出一个网页:豆瓣电影排行榜,其中的所有电影信息都

fiddler 抓取 安卓模拟器 https包

2017-12-12 16:47:45 星期二 需要材料: 1. fiddler 2. 逍遥模拟器 步骤: 1. fiddler->tool->Optiions...->connections 选定监听的端口号, 允许远程访问 2. fiddler->tool->Optiions...->HTTPS ->  选中抓取并解码 https -> 同意弹窗内容 3. 打开模拟器-> 设置WiFi-> 手动 -> 端口跟第1步设定的一致 ->

抓取网页中的内容、如何解决乱码问题、如何解决登录问题以及对所采集的数据进行处理显示的过程

本文主要介绍如何抓取网页中的内容.如何解决乱码问题.如何解决登录问题以及对所采集的数据进行处理显示的过程.效果如下所示: 1.下载网页并加载至HtmlAgilityPack 这里主要用WebClient类的DownloadString方法和HtmlAgilityPack中HtmlDocument类LoadHtml方法来实现.主要代码如下. var url = page == 1 ? "http://www.cnblogs.com/" : "http://www.cnblogs