问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Fiddle抓包进阶

发布网友 发布时间:2022-09-04 06:17

我来回答

1个回答

热心网友 时间:2023-12-13 22:43

fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的https请求,会提示网页不安全,这时候需要在浏览器上安装证书。

一、网页不安全
1.用fiddler抓包时候,打开百度网页: https://www.baidu.com
2.提示:网页不安全

二、fiddler设置(抓取所有https请求)
1.打开菜单栏:Tools>Fiddler Options>HTTPS
2.勾选Decrypt HTTPS traffic,里面的两个子菜单也一起勾选了

Fiddler抓包2-只抓APP的请求

fiddler抓手机app的请求,估计大部分都会,但是如何只抓来自app的请求呢?
把来自pc的请求过滤掉,因为请求太多,这样会找不到重要的信息了。

1.电脑上已装fiddler

2.手机和电脑在同一局域网

一、设置

1.fiddler>Tools>Fiddler Options>Connections 勾选Allow remote computers to connect。

2.记住这里的端口号:8888,后面会用到。

一、get请求[图片上传中...(get请求.png-2ac7c-1529389857624-0)]

1.打开fiddler工具,然后浏览器输入博客首页地址: http://www.cnblogs.com/yoyoketang/
2.点开右侧Inspectors下的Headers区域,查看Request Headers
3.Request Headers区域里面的就是请求头信息,可以看到打开博客园首页的是get请求

四、get和post请求参数区别
1.关于get和post的功能上区别就不说了,大家自己查资料,这里主要从fiddler抓包的层面查看请求参数上的区别
2.get请求的Raw参数查看,主要分三部分:
--第1部分是请求url地址
--第2部分是host地址
--第3部分是请求头部信息header

Fiddler抓包4-工具介绍(request和response)

本篇简单的介绍下fiddler界面的几块区域,以及各自区域到底是干什么用的,以便于更好的掌握这个工具

一、工具简介

1.第一块区域是设置菜单,这个前面2篇都有介绍

2.第二块区域是一些快捷菜单,可以点下快捷功能键

3.第三块左边是抓捕的请求会话列表,每一个请求就是一个会话

4.第四块右边上方区域是request请求的详细信息,可以查看headerd、cookies、raw、json等

5.第五块右边下方区域就是response信息,可以查看服务端返回的json数据或其它信息

6.第六块区域左下角黑色的那块小地方,虽然很不起眼,容易被忽略掉,这地方是命令行模式,可以输入简单的指令如:cls,执行清屏的作用等

三、Request 和Response
1.Request是客户端发出去的数据,Response是服务端返回过来的数据,这两块区域功能差不多

No Authorization Header is present.

5.cookies:查看cookie详情
6.raw:查看一个完整请求的内容,可以直接复制
7.json:查看json数据
8.xml:查看xml文件的信息

四、decode解码
1.如果response的TextView区域出现乱码情况,可以直接点下方*区域解码

一、Composer简介
点开右侧Composer区域,可以看到如下界面,就是测试接口的界面了

二、模拟get请求
1.在Composer区域地址栏输入博客首页: http://www.cnblogs.com/yoyoketang/
2.选择get请求,点Execute执行,请求就可以发送成功啦
3.请求发送成功后,左边会话框会生成一个会话记录,可以查看抓包详情
4.右侧history区域会多一个历史请求记录

一、url详解
1.url就是我们平常打开百度在地址栏输入的: https:www.baidu.com ,如下图,这个是最简单的url地址,打开的是百度的主页

二、url解析
1.以" https://www.baidu.com/s?wd= 上海悠悠博客园"这个url请求的抓包为例

三、请求参数(params)
1.在url里面请求参数一般叫params,但是我们在fiddler抓包工具看到的参数是:QueryString
2.QueryString是像服务端提交的参数,其实跟params是一个意思,每个参数对应的都有name和value值
3.多个参数情况如下

一、body数据类型
常见的post提交数据类型有四种:
1.第一种:application/json:这是最常见的json格式,也是非常友好的深受小伙伴喜欢的一种,如下
{"input1":"xxx","input2":"ooo","remember":false}

2.第二种:application/x-www-form-urlencoded:浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数
input1=xxx&input2=ooo&remember=false

3.第三种:multipart/form-data:这一种是表单格式的,数据类型如下
------WebKitFormBoundaryrGKCBY7qhFd3TrwA

Content-Disposition: form-data; name="text"

title

------WebKitFormBoundaryrGKCBY7qhFd3TrwA

Content-Disposition: form-data; name="file"; filename="chrome.png"

Content-Type: image/png

PNG ... content of chrome.png ...

------WebKitFormBoundaryrGKCBY7qhFd3TrwA-
4.第四种:text/xml:这种直接传的xml格式

<methodcall>
<methodname>examples.getStateName</methodname>
<params>
<param>
<value><i4>41</i4></value>
</params>
</methodcall>

二、json格式
1.打开博客园的登录页面,输入账号密码后抓包,查看post提交数据,点开Raw查看整个请求的原始数据

三、x-www-form-urlencoded
1.登录博客园后,打开新随笔,随便写一个标题和一个正文后保存,抓包数据如下

四、WebFrom
1.为什么登录请求的WebFrom的body部分为空呢?

五、xml
1.如果遇到text/xml这种格式的body,那就如下图这样的了

一、断点
1.为什么要打断点呢?
比如一个购买的金额输入框,输入框前端做了*100-1000,那么我们测试的时候,需要测试小于100的情况下。很显然前端只能输入大于100的。这是我们可以先抓到接口,修改请求参数,绕过前端,传一个小于100的数,检查服务端的功能是否OK。
也就是说接口测试其实是不需要管前端的,主要测后端的功能。Fiddler作为代理服务器的作用其实就相当于上面故事里面的小王,传纸条的作用,Fiddler(小王)修改了请求参数(小纸条),是为了验证服务端功能(女神C)。
2.Fiddler可以修改以下请求
--Fiddler设置断点,可以修改HTTP请求头信息,如修改Cookie,User-Agent等
--可以修改请求数据,突破表单*,提交任意数字,如充值最大100,可以修改成10000
--拦截响应数据,修改响应体,如修改服务端返回的页面数据

二、断点的两种方式
1.before response:这个是打在request请求的时候,未到达服务器之前
--屌丝A传给小王的时候,小王在这个时候拦截了小纸条,未传给女神C

3.打完断点后,会发现所有的请求都无法发出去了,这时候,点下Go按钮,就能走下一步了

4.找到需要修改的请求后,选中该条会话,右侧打开WebFroms,这时候里面的参数都是可以修改的了

四、单个断点

已经知道了某个接口的请求地址,这时候只需要针对这一条请求打断点调试,在命令行中输入指令就可以了

请求前断点(before response): bpu

4.取消断点,在命令行输入: bpu 回车就可以了

响应后断点(after requests): bpafter

3.登录博客园,会发现已经拦截到登录后服务器返回的数据了,此时可以修改任意返回数据

4.取消断点,在命令行输入: bpafter 回车就可以了

五、拦截来自某个网站所有请求

1.在命令行输入:bpu www.cnblogs.com
2.打开博客园任意网页,发现都被拦截到了

3.打开博客园其他网站,其它网站可以正常请求

4.说明只拦截了来自部落论坛( www.cnblogs.com )的请求

5.清除输入bpu回车即可

六、命令行其它相关指令

Bpafter, Bps, bpv, bpm, bpu

这几个命令主要用于批量设置断点

Bpafter xxx: 中断 URL 包含指定字符的全部 session 响应

Bps xxx: 中断 HTTP 响应状态为指定字符的全部 session 响应
Bpv xxx: 中断指定请求方式的全部 session 响应

Bpm xxx: 中断指定请求方式的全部 session 响应 、、同于 bpv xxx

Bpu xxx:与bpafter类似

当这些命令没有加参数时,会清空所有设置了断点的HTTP请求。

更多的其他命令可以参考Fiddler官网手册

一、保存为文本
1.以博客园登录为例,抓到登录的请求会话
2.点左上角File>Save>Selected Sessions>as Text,保存到电脑上就是文本格式的

三、乱码问题(decode)
1.打开博客园首页: http://www.cnblogs.com/yoyoketang/ ,保存之后查看,会发现返回的是乱码

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
梦幻西游怎样查看自己怎么加的属性点阿? 我好长时间没玩了 .. 怎么... 梦幻西游怎么查看我各项加了多少点 卤肉料的配方 卤肉上色最好的配方前十 三国中曹操有几个儿子 曹植的意思是什么 曹操有多少个儿子?其中姓名叫什么? 简谱中1=c2/4是什么意思?别说几节几拍我不知道节和拍是什么意思 简谱四分之二什么意思 ...是鸡膏吗 放在老汤里行吗 怎么才能容于水 谢谢 怎么使用? fiddler抓包详细教程--会话保存 卡友pos机好还是嘉联付pos机好了 嘉联支付300以下免息吗 招商银行信用卡临时额度怎么提高 公积金卡要去哪里办理 《醉太平》“堂堂大元,奸佞专权,开河变钞祸根源,惹红巾万千。”一首... 把汇变成钞 变造钞到底是真是假? 朱元璋抗元起义 成吉思汗建立了历史上疆域最广的元帝国,为什么庞大的帝国很快瓦解?_百度... 在中国历史中什么是“开河”“变钞” 关于夕阳渔夫的诗句(夕阳下渔民句子) 课文如果是以诗的形式出现的话应该怎么抄必须全文钞 全部假钞有多少种代码? 抖音私信发又撤回平台看得到吗 中限四十九有灾,铁镜重磨,明月正圆的意思 ...犹如枯木逢春,中限四十九有险。四十开外, 旧镜重磨,明月正圆?_百度... 请详解中限四十九之命有险,四十多来古镜重磨,明月再圆。五十六七**末... 请文化人详解中限四十九之命有险,四十多来古镜重磨,明月再圆。五十六七... ,中限四十九之命有险,四十多来古镜重磨,明月再圆。是什么意思 这些抢票小技巧你们get了吗第三方软件加速包都是智商税? 派出所打电话核实有什么目的 派出所会用手机号打电话核实情况吗 077196288为什么要打电话来核实 派出所打电话核实我工作单位是怎么回事 一张金钞多少克 ...张羊年压岁金钞,现在已经过去一年了,能卖多少钱?可以在哪里卖掉... 为什么重疾险分A,B款 上海比卡乐儿童用品有限公司怎么样? 卡乐比开封能放多久? 卡乐比麦片含有什么成分? 绑定手机号怎么解除 绑定手机号解除方法 在想你请教一个问题,就是EXCEL在会计上怎么能自动做到期末余额... 怎样解除绑定的手机号? 年代热水器显示e5必须换主板吗 年代热水器故障代码 为什么我使用招商信用卡的时候上面说的身份证信息有误 用不了?_百度... 想问下1893年纪念哥伦布发现新大陆纪念银币现在的收藏价值怎样?半圆... 为什么我申请信用卡 说身份证失效 什么原因 长下影线意味着什么?附图解及使用技巧