百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

python爬虫教程:教你通过 Fiddler 进行手机抓包

bigegpt 2024-08-14 14:42 2 浏览

今天要说说怎么在我们的手机抓包

有时候我们想

对请求的数据或者响应的数据进行篡改

怎么做呢?

我们经常在用的手机

手机里面的数据

怎么对它抓包呢?

那么...

接下来就是学习 python 的正确姿势

我们要用到一款强大免费的抓包工具

Fiddler

你可以到

https://www.telerik.com/download/fiddler

去下载

抓包

就可以直接获取 Fiddler 啦

那么 Fiddler 是怎么玩的呢?

一般情况下

我们通过浏览器来请求服务器的时候

是点对点的

我来给大家画个图

正常情况下

浏览器给服务器发送请求

服务器响应返回数据

但是这个时候

Fiddler非要来这里插一脚

然后

就变成这样了


Chrome发送请求给服务器的时候

会被 Fiddler 拦截下来

可以在这里修改请求参数什么的

然后 Fiddler 假装自己是浏览器

再发送数据给服务器


这个时候服务器接收到 Fiddler 的请求

还是天真的以为是 Chrome 发送的

于是就返回数据了

没想到在半路杀出个程咬金

返回的数据又被 Fiddler 拦截下来了

Fiddler 可以在这个时候

对数据进行修改

然后在返回给 Chrome

这就是 Fiddler 的主要使命


好了

知道了 Fiddler 的具体工作原理之后

咱们就能操作一番

安装完之后在电脑打开 Fiddler

一般情况下

我们按下 F12

就可以抓取我们在浏览器的请求了

如果这个时候你在浏览器发送请求

但是 Fiddler 没有一丁点反应

那么可以在你的浏览器配置一下代理

Fiddler 的默认代理 IP 为

127.0.0.1

端口为

8888

就拿 Chrome 浏览器为例

打开

设置-->高级-->打开代理设置

进行设置上面的 ip 地址和端口就可以了

这时候你在浏览器访问网站

在 Fiddler 就可以抓取到你的请求了

不过...

先别高兴太早

你可能会发现很多这样的错误

Tunnel to 443

因为现在很多请求都是 HTTPS

所以我们需要安装证书

才可以抓取 https 的请求


那么咋整咧?

点击菜单

Tools->Options

接着选择

HTTPS

勾上

Decrypt HTTPS traffic

勾完之后呢

有没看到右上角有个 Actions 按钮

轻轻按一下

选择

Reset All Certificates

完事之后

回到你的浏览器输入

localhost:8888

可以看到一个这样子的页面

点击 FiddlerRoot_certificate 下载证书

安装完之后再打开 Fiddler

你会发现你可以抓取 Https 的请求了

那么

各栏之间都代表啥意思呢

左边代表的就是你的请求

Result : 请求的 HTTP(s) 状态吗
Protocol : 请求协议
HOST : 请求的主机名
URL : 请求的资源目录位置
Body : 请求大小
Caching : 请求的缓存
Content-Type : 服务器响应的实体类型
Process : 是谁(进程)发送的
Comments : 备注
Custom : 自定义

当我们点击某一条请求后

在右边的 Insepector 中就可以看到具体的请求和返回信息内容了

说到这里

你会发现

这他妈的不就和上次讲的 Chrome 的开发工具面板差不多么

稍安勿躁

接下来就说说怎么来配置手机

使用 Fiddler 来抓取我们手机上的数据

在你的 Fiddler 中

像以下设置

接着

让你现在的这台电脑

和你的手机都连在同一个 wifi 下

接着

查看你电脑的 ip 地址

在你的手机上

打开你连接的 wifi

设置 http 代理服务器和端口

这里的服务器地址就是你刚找到的 IPv4 地址

端口 8888

紧接着

手机打开浏览器输入你的 IPv4 地址和端口

下载安装证书

安装完之后呢

Android手机这样一般就可以用了

iPhone的话

还要授权一下

在你手机的

设置-->通用-->关于本机-->证书信任设置-->把刚刚下载的证书打上勾

ok

搞定

你手机的所有访问都可以用Fiddler来抓包了

我现在就在我的手机上

打开微信和网易云音乐

可以看到我电脑上的 Fiddler

抓取到了!!

既然都抓到数据了

那么接下里就来点骚操作吧

使用 Fiddler 来修改一下我们的请求和返回数据

应该很好玩!

我们来玩玩x站吧

手机打开

这时候我们可以在 Fiddler 设置过滤

我们就针对x站的请求

然后我们在 Fiddler 按一下

ALT+F11

按完之后呢

所有服务器的返回都会被 Fiddler 拦截

ok

接下来

比如我要看x站的热门内容

那么我们点击这个 热门 的tab

可以看到

Fiddler 拦截了

我们点击这个请求

然后点击右边的 Inspectors

这时候可以看到x站服务器给我们返回了热门内容


也就是在这个时候

我们来篡改一下这些数据

让我们改的数据显示到手机上

那就把第一个视频的标题改了吧

改成

小帅b太帅了!!

改完之后呢

我们点击 Run to Completion

也就是将我们的数据发给手机

那么这个时候

看看我们的手机吧

oh

不好意思

小帅b成为x站热门第一了!

哈哈哈

ok

以上我们演示的是返回数据的拦截

那么对于请求时的拦截

快捷键是 F11

相信你也知道怎么玩了!

相关推荐

为3D手游打造, Visual Studio Unity扩展下载

IT之家(www.ithome.com):为3D手游打造,VisualStudioUnity扩展下载7月30日消息,微软正式发布升级版VisualStudioToolsforUnity扩...

由ArcMap属性字段自增引出字段计算器使用Python的技巧

1.前言前些日子有人问我ArcMap中要让某个字段的值实现自增有什么方法?我首先想到像SQLServer中对于数值型字段可以设置自增。所以我打开ArcCatalog查看发现只提供默认值,没办法只能看...

微软首次回答 HoloLens 相关问题,终于爆料了

fengo2015/04/2115:11注:本文作者张静是NVIDIAGPU架构师,微信公众号“黑客与画家”(HackerAndPainter),知乎专栏地址。欢迎各位童鞋与他交流探讨。...

C#指针的应用(c#指针类型)

C#在有限的范围内支持指针。C#的指针只不过是一个持有另一类型内存地址的变量。但是在C#中,指针只能被声明为持有值类型和数组的内存地址。与引用类型不同,指针类型不被默认的垃圾收集机制所跟踪。出于同...

C# 堆栈(Stack)(c# 堆栈中定位调用messagebox 的地方)

C#集合在C#中,堆栈(Stack)是一种后进先出(LIFO,LastInFirstOut)的数据结构。堆栈(Stack)适用于存储和按顺序处理数据,其中最新添加的元素会最先被移除。堆...

欢迎回来:Fortran意外重回流行编程语言20强榜单

TIOBE指数是用来确定一种编程语言受欢迎程度的指标之一。它并不表明哪种编程语言是最好的,也不表明哪种编程语言写的代码行数最多,而是利用在谷歌、维基百科、必应、亚马逊、YouTube等各种引擎和网站上...

C#+NET MAUI实现跨平台/终端(linux,win,ios等)解决方案

简介.NETMulti-platformAppUI(.NETMAUI)是一个跨平台的框架,用于使用C#和XAML创建移动和桌面应用程序。使用.NETMAUI,您可以用一套代码库开发可以在A...

C#代码安全红线:SQL注入防护终极方案,让你的系统固若金汤

在数字化时代,应用系统的安全性至关重要。而SQL注入攻击,长期盘踞在OWASP(OpenWebApplicationSecurityProject)漏洞榜单的前列,成为众多基于数据库的应用系统...

C# (一)状态机模式(状态机代码实现)

最近空闲,炒炒隔夜饭,以前这些模式在自己项目种应用过不少,但一直没有像别人那样写一个系列,最近年纪大了,很多东西都忘记了,特别AI的兴起,更少写代码了,反正没什么事情,自己在重写一遍吧。创建型模式(5...

C# 中 Predicate 详解(c#中的replace)

Predicate泛型委托:表示定义一组条件并确定指定对象是否符合这些条件的方法。此委托由Array和List类的几种方法使用,用于在集合中搜索元素。Predicate<T>...

C#中$的用法?(c#中&&什么意思)

文章来自AI问答。在C#中,$符号用于字符串插值(StringInterpolation)。字符串插值是C#6.0引入的一种特性,它允许你在字符串中直接嵌入表达式,而不需要使用string.For...

C#并行编程:Parallel类(c# 并行处理)

在Parallel类中提供了三个静态方法作为结构化并行的基本形式:Parallel.Invoke方法:并行执行一组委托。Parallel.For方法:执行与C#for循环等价的并行方法。Parall...

颠覆认知!用Span重构foreach循环竟让数据处理快如闪电

在C#编程的世界里,数据处理效率始终是开发者们关注的焦点。随着项目规模的扩大和数据量的激增,哪怕是细微的性能提升,都可能对整个应用的响应速度和用户体验产生深远影响。近年来,C#引入的Span<T...

Unity3D手游开发实践《腾讯桌球》客户端开发经验总结

本次分享总结,起源于腾讯桌球项目,但是不仅仅限于项目本身。虽然基于Unity3D,很多东西同样适用于Cocos。本文从以下10大点进行阐述:1.架构设计2.原生插件/平台交互3.版本与补丁4.用脚本,...

.NET 7 AOT 的使用以及 .NET 与 Go 互相调用

目录背景C#部分环境要求创建一个控制台项目体验AOT编译C#调用库函数减少体积C#导出函数C#调用C#生成的AOTGolang部分安装GCCGolang导出函数.NETC#...