首先,如果大家没有看过第一篇,可以先看看第一篇,了解Fiddler script的脚本哦。
传送门:https://www.52pojie.cn/thread-854434-1-1.html

导语:
其实Fiddler隐藏的功能太多太多,其调试功能也是异常强大,可以说是抓包界的“OllyDbg”并不为过。接下来,教大家如何使用Fiddler进行调试、解析,甚至封包“逆向”!

一、像OD一样定制菜单

1.1定制rule菜单的子菜单

// 定义名为52pj的子菜单
    RulesString("&52pj", true);
    // 生成52pj子菜单的radio选项
    RulesStringValue(0,"安卓8.0", "52pj&狂暴补师亚丝娜&k=52pj")
    RulesStringValue(1,"安卓9.0", "52pj&610100&k=52pj")
    RulesStringValue(2,"安卓10.0", "52pj&didi科学家&k=52pj")
    RulesStringValue(3,"安卓11.0", "52pj&CrazyNut&k=52pj")
    RulesStringValue(4,"&Custom...", "%CUSTOM%")
    public static var s52pj: String = null;

}

还需要在OnBeforeRequest函数中加入:

if (null != s52pj) {
     oSession.oRequest["52pj"] = s52pj;

<ignore_js_op>

效果图:
<ignore_js_op>

1.2定制tool菜单的子菜单

public static ToolsAction("我是子菜单")
function DoManualYules(){

//子菜单的功能
     FiddlerObject.alert("我是子菜单"); // 根据需要定制
}

<ignore_js_op> 
1.3定制右键菜单

public static ContextAction("我是右键菜单")
function DoOpenInIE(oSessions: Fiddler.Session[]){
     FiddlerObject.alert("我是右键菜单"); // 根据需要定制
}

右键菜单不好截图,就不截图啦~~~~
子菜单和右键菜单自己新建一个类就OK了。

二、限速
fiddler提供了一个功能,让我们模拟低速网路环境。启用方法如下:Rules → Performances → Simulate Modem Speeds。勾选之后,你会发现你的网路瞬间慢下来了很多。至于慢下来后网络速度是多少,则由CustomRules.js 中如下程序控制的:

var m_SimulateModem: boolean = true;
...
if (m_SimulateModem) {
    // 500毫秒/KB(上传)
     oSession["request-trickle-delay"] = "500"; 
// 150毫秒/KB(下载)
     oSession["response-trickle-delay"] = "150"; 
}

三、AutoResponder (自动替换功能)
方法是点下Fiddler 右上的AutoResponder ,勾选Enable automatic responses 和Unmatched requests passthrough ,按下右边的Add ;再将下方的Rule Editor 第一行修改为线上档案位址(线上档案位址也可以使用Regular Expression ,开头加上regex: 即可。)
按下Rule Editor 第二行右边的箭头,选择Find a file ... ;选择要替换成的本机端档案,按下右边的SAVE ,大功告成!

将线上档案替换成另一个线上档案,步骤几乎一模一样,差别仅在Rule Editor 第二行填入的是另一线上档案位址:

更多AutoResponder的说明请参考Fiddler官方文件- AutoResponder Reference 。
(PS:AutoResponder 这个网上有比较多的教程,我直接复制的了。)

四:命令调试(和OD的命令调试操作基本相同)
4.1替换 Request Host。
关键函数:urlreplace
比如:urlreplace www.baidu.com www.360.com
按下Enter ,所有原先发到百度的HTTP Request 就转发到360 了。
<ignore_js_op> 
要清除转发,请在同一位置输入:urlreplace

另外script也可以做到:

if ( oSession . HostnameIs ( 'www.baidu.com' ) )
   oSession . hostname = 'www.360.com' ;

4.2 下断点(和OD、VS调试一样的哦)

命令介绍:
bpu在请求开始时中断,
bpafter在响应到达时中断,
bps在特定http状态码时中断,
bpv/bpm在特定请求method时中断。

如:
bpu www.baidu.com/52pj/狂暴补师亚丝娜 
这样既可在访问这个网址的时候自动下断点哦。

4.3Fiddler其他内置命令(4.3为转载)

  • secret

选择所有相应类型(指content-type)为指定类型的HTTP请求,如选择图片,使用命令select image.而select css则可以选择所有相应类型为css的请求,select html则选择所有响应为HTML的请求(怎么样,是不是跟SQL语句很像?)。

  • allbut

allbut命令用于选择所有响应类型不是给定类型的HTTP请求。如allbut image用于选择所有相应类型不是图片的session(HTTP请求),该命令还有一个别名keeponly.需要注意的是,keeponly和allbut命令是将不是该类型的session删除,留下的都是该类型的响应。因此,如果你执行allbut xxxx(不存在的类型),实际上类似与执行cls命令(删除所有的session, ctrl+x快捷键也是这个作用)

  • ?text

选择所有 URL 匹配问号后的字符的全部 session

  • >size 和 <size命令

选择响应大小大于某个大小(单位是b)或者小于某个大小的所有HTTP请求

  • =status命令

选择响应状态等于给定状态的所有HTTP请求。

例如,选择所有状态为200的HTTP请求:=200

  • @host命令

选择包含指定 HOST 的全部 HTTP请求。例如:@csdn.net

五、“逆向”
这里只能简单提及一下,当你发现下断点的网址过后,可以使用ctrl+F的方式,就行搜索该网址,既可看是什么接口返回的该地址,也就是简单的逆向!

最后:
熟练掌握Fiddler,能够破解爱奇艺、优酷等永久不失效的接口,也可薅羊毛(饿了么等),具体就要看大家的掌握程度了!破解游戏啥的就不说了。
请记住:
抱歉,Fiddler玩得好,真的可以为所欲为!

[转载] Fiddler为所欲为第二篇 像OD一样调试 [二]的更多相关文章

  1. [转载] Fiddler为所欲为第三篇 封包逆向必备知识[三]

    导语: 小A同学:会抓包有什么好学习的,不就用一个工具设置个wifi代{过}{滤}理就OK了嘛,还不是很多做不了.不如学习安卓逆向.didi科学家:不好意思,抓包可以为所欲为. 其实学习抓包,完完全全 ...

  2. [转载]Fiddler为所欲为第四篇 直播源抓取与接口分析 [四]

    今天的教程,主要是教大家如何进行“封包逆向”,关键词跳转,接口分析.(怎么样,是不是感觉和OD很像~~~)今天的教程我们以[麻花影视]为例,当然,其他APP的逻辑也是一样,通用的哦~ 首先需要做好准备 ...

  3. WebApi学习总结系列第二篇(webapi的调试)

    目前使用webapi的调试主要有 1.用接口宿主调试.(宿主形式多样:web.winform.还有就是直接用app进行接口调试) 2.用Fiddler抓Http信息,进行调试. 1.用接口宿主调试. ...

  4. 第二篇 javascript一维数组和二维数组及方法

    一.数组 什么是数组 程序=数据+算法 数组就是一种很常见的保存批量数据的数据结构 一.定义数组 var arr1=[]; //定义了一个不包含元素的数组 ,,]; //定义了一个包含三个元素的数组 ...

  5. android调用第三方库——第二篇——编写库android程序直接调用第三方库libhello.so (转载)

    转自:http://blog.csdn.net/jiuyueguang/article/details/9449737 版权声明:本文为博主原创文章,未经博主允许不得转载. 0:前言 1:本文主要作为 ...

  6. 【转载】Android Metro风格的Launcher开发系列第二篇

    前言: 各位小伙伴们请原谅我隔了这么久才开始写这一系列的第二篇博客,没办法忙新产品发布,好了废话不说了,先回顾一下:在我的上一篇博客Android Metro风格的Launcher开发系列第一篇写了如 ...

  7. IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm(转载)

    IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm 自从本系列发布之后,收到了很多的朋友的回复!非常感谢,同时很多朋友问到了一些问题,有些问 ...

  8. (转载) 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁 ...

  9. JDFS:一款分布式文件管理实用程序第二篇(更新升级、解决一些bug)

    一 前言 本文是<JDFS:一款分布式文件管理实用程序>系列博客的第二篇,在上一篇博客中,笔者向读者展示了JDFS的核心功能部分,包括:服务端与客户端部分的上传.下载功能的实现,epoll ...

随机推荐

  1. live 2d js demo

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  2. Web API学习——Web API 强势入门指南

    Web API是一个比较宽泛的概念.这里我们提到Web API特指ASP.NET Web API. 这篇文章中我们主要介绍Web API的主要功能以及与其他同类型框架的对比,最后通过一些相对复杂的实例 ...

  3. javascript高级程序设计第3版——第8章 BOM(浏览器对象模型)

    第八章,浏览器对象模型 主要介绍了window的几个对象以及框架,窗口的关系,各个浏览器对象的属性以及方法:

  4. Kafka 1.0.0集群安装

    环境 主机名 IP 地址 安装路径 系统 sht-sgmhadoopdn-01 172.16.101.58 /opt/kafka_2.12-1.0.0 /opt/kafka(软连接) CentOS L ...

  5. 记一次阿里云ECS服务器图片资源迁移至 阿里云 oss

    系统用户上传的图片资源放在ECS服务器,图片要做cdn加速,图片量越来越大(第一年200G,还在用户再增加图片量疯狂增长)备份是个问题. 决定迁移至 oss.前端直接上传oss 后台做签名,回调入库图 ...

  6. IDEA主类文件需要放置在SRC文件下,非包内

    构建flash项目后,主类文件需要放置在src下,而不是在某个包内. 这样才会找到入口主类,然后有输出. 主类里面有引用其他类,需要使用 import * 全部引入.

  7. 箭头函数里this理解

    先来看代码: var obj1={ id:4, fn:function(){ var f=() => { console.log(this); //object,f()定义在obj1对象中,th ...

  8. 干货!一篇文章集合所有Linux基础命令

    1 文件{ls -rtl # 按时间倒叙列出所有目录和文件 ll -rttouch file # 创建空白文件rm -rf 目录名 # 不提示删除非空目录(-r:递归删除 -f强制)dos2unix ...

  9. Python2.7.13下载安装全过程(Windows版)

    前提:    我下载的Python是windows版本的,演示过程是在win10 64位操作系统上安装的. 1.下载 进入官网https://www.python.org/,找到Dowdloads,根 ...

  10. XenServer 自动化布署 (关键词: PXE ANSWER SCRIPT)

    XenServer 6.x PXE自动化布署: 测试环境:win10 + Tiny pxe server 1.0.2,采用gpxelinux.0 时间:2017.1.10 PXE远程安装: 1)def ...