首先,如果大家没有看过第一篇,可以先看看第一篇,了解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. SYN-flood攻击

    原理:当TCP三次握手进行第一次握手时,客户端向服务端发送SYN请求报文,第二次握手服务端会返回一个SYN+ACK的一个确认报文,syn-flood攻击就发生在第三次握手,当客户端不去回应服务端的SY ...

  2. IDEA(添加类注释以及方法注释)

    添加类注释: File---Setting----Editor----Code Style-----File and    Code  Templates--------Class #if (${PA ...

  3. 毕设记录(ajax第一次请求失败,之后成功的问题)

    解决方法:将button标签的type属性改为button,而不是submit,将会解决此问题,至于原因,,,还是没太搞清楚..

  4. 【JAVA】servlet执行流程

    servlet执行流程 客户端发出http请求,web服务器将请求转发到servlet容器,servlet容器解析url并根据web.xml找到相对应的servlet,并将request.respon ...

  5. url路由配置以及渲染方式

    路由分配及模板渲染 路由系统 urlpatterns = [ path('admin/', admin.site.urls), path('teacher/',include('teacher.url ...

  6. 2018项目总结(vue+apicloud)

    一.关于字数统计的问题 在使用textarea时常会对textarea中的文字数目进行统计,一般来说,可以使用onkeyup事件来解决问题. <textarea id="descrip ...

  7. swagger坑

    接口测试导出Excel,使用swagger得到响应后手动点击下载--Excel时文件损坏无法打开,,,而直接请求链接下载到的文件正常打开..

  8. java打jar包小总结

    一 命令行方法 编译java 在bin目录下,也就是class所在目录下命令行输入如下命令进行归档处理 jar -cvf mylib.jar *.class 现在你可以看见一个已经生成的jar包了 此 ...

  9. ZYNQ DMA驱动及测试分析

    之前没有接触过DMA驱动.不了解它的原理,稍作学习先总结下dma驱动步骤: 1. 申请DMA中断. 2. 申请内存空间作为src和dts的空间. 3. 注册设备注册节点 4. 将申请到的src和dst ...

  10. 2015-10-29 ado.net 1

                                                                   ADO.NET 一.什么是ado.net ADO.NET是一组允许.NET ...