用fiddler简单抓包


个人blog-1: 拾忆生活
个人blog-2: 极简-拾忆生活
欢迎大家来踩,同步更新


命令行工具QuickExec

左下角黑色的QuickExec

  • help
    • 打开官方的使用页面介绍
  • select
    • 选择会话的命令
  • cls
    • 清屏
  • ?.png
    • 用来选择png后缀的图片
  • bpu
    • 截获request

快捷键

  • Ctrl+x 清屏

抓包https设置

Tools-》Options-》点击https标签-》都勾选-》下载https根证书

设置火狐的地理,变成系统自动代理

过滤会话filters请求选项卡

Hosts选择过滤方式

  • 1、Filters选项卡
  • 2、use filter

hosts

  • 3、no zone filter过滤方式【少用】
    • show only intranet hosts【只显示内网hosts】
    • show only internet hosts【只显示外网hosts】
  • 4、no host filter过滤方式【多用】
    • hide the following hosts【隐藏以下hosts】
    • show only the following hosts【只显示以下hosts,重要】
    • flag the following hosts【标记以下hosts,在左侧session中会加粗】

client process【根据进程选择过滤请求】

  • 5、show only traffic form【只选择来自后面选进程的请求】
  • 6、Show only Internet Explorer traffic【只选择来自IE的请求】
  • 7、Hide traffic from Service Host【隐藏来自service host的请求】

request headers 【根据请求头进行过滤】

  • 8、show only if URL contains 【只显示URL包含什么东西,多个则空格分开】
  • 9、Hide if URL contains【隐藏URL包含什么东西,多个则空格分开】
  • 10、Flag requests with headers【加粗显示包含指定的HTTP请求头类型名】
  • 11、Delete request headers【删除指定的HTTP请求头类型名】】
  • 12、Set request header【创建一个指定名称和值的HTTP请求头/更新HTTP请求头为指定值】

breakpoints【断点】

  • 13、Break request on POST【针对所有post请求设置断点】
  • 14、Break request on GET with query string【针对所有get请求设置断点,包含params参数】
  • 15、Break on XMLHttpRequest【通过xmlhttprequest对象发送的请求设置断点,是否含有x-requested-with和x-download-initiator】
  • 16、Break response on Content- Type【响应头content-type中包含指定的文本设置断点】

Response Status Code【使用请求状态码】

  • 17、Hide success (2xx)【隐藏状态码200-299的响应】
  • 18、Hide non-2xx【隐藏所有非状态码200-299的响应】
  • 19、Hide Authentication demands(401,407)【隐藏状态码400,407的响应】
  • 20、Hide redirects (300,301,302,303,307)【隐藏状态码300-303,307的重定向响应】
  • 21、Hide Not Modified (304)【隐藏状态码304的响应】

actions运行

  • run filterset now

composer选项卡

把会话拖入后直接改

设置断点修改Request请求

方法一:

  • 中断所有的会话
    • Rules -> Automatic Breakpoint -> Before Requests
  • 消除命令
    • Rules -> Automatic Breakpoint -> Disabled

方法二:

  • 只会中断www.baidu.com
    • 在命令行中输入命令bpu www.baidu.com
  • 消除命令
    • 在命令行中输入命令 bpu

实例1

  • 1、打开登录界面 http://passport.cnblogs.com/login.aspx
  • 2、打开Fiddler, 在命令行中输入
    • bpu http://passport.cnblogs.com/login.aspx
  • 3、输入错误的用户名和密码 点击登录
  • 4、 Fiddler 能中断这次会话,选择被中断的会话,
    • 点击Inspectors tab 下的 WebForms tab
    • 修改用户名密码,然后点击Run to Completion
  • 5、结果是正确登录

实例2【请求报文的修改】

  • 1、进入http://ask.testfan.cn/,点击登录,打开http://ask.testfan.cn/login登录页面
  • 2、中断所有的会话
    • Rules -> Automatic Breakpoint -> Before Requests
  • 3、会跳出相应链接
    • inspectors中找到row的文本显示形式,可以直接拦截请求修改后
    • 点击run to completion再提交
  • 4.消除命令
    • Rules -> Automatic Breakpoint -> Disabled

设置断点修改Response响应

方法一:

  • 中断所有的会话
    • Rules-> Automatic Breakpoint -> After Response
  • 消除命令
    • Rules-> Automatic Breakpoint -> Disabled

方法二:

  • 只会中断www.baidu.com
    • 在命令行中输入命令bpafter www.baidu.com
  • 消除命令
    • 在命令行中输入命令 bpafter

实例1【响应报文的修改】

  • 1、进入http://conf.wsm.360.cn/,显示的是nginx的错误页面
  • 2、中断所有的会话
    • Rules -> Automatic Breakpoint -> After Requests
  • 3、会跳出相应链接
    • 再在第二个框下,点击row修改,再发送
    • 点击run to completion再提交
  • 4、如果还想把响应报文返回一些信息
    • 可以在choose response中选择响应返回的状态码
    • 如200_diddlergif.dat
    • 200_simplehtml.dat
  • 4.消除命令
    • Rules -> Automatic Breakpoint -> Disabled
HTTP/1.1 403 Forbidden
Server: nginx/1.9.15
Date: Sat, 18 Apr 2020 11:32:55 GMT
Content-Type: text/html
Connection: close
Content-Length: 169


403 Forbidden

403 Forbidden


nginx/1.9.15
改成: HTTP/1.1 403 Forbidden Server: nginx/1.9.15 Date: Sat, 18 Apr 2020 11:32:55 GMT Content-Type: text/html Connection: close Content-Length: 169 403 Forbidden这就是个错误

403 Forbidden


nginx/9.9.9

实例2【响应报文的修改】

  • 1、进入https://t.qianzhan.com/caijing/detail/200418-4a7c3321.html,显示的是页面
  • 2、中断所有的会话
    • Rules -> Automatic Breakpoint -> After Requests
  • 3、会跳出相应链接
    • 再在第二个框下,点击row修改,再发送
    • 点击run to completion再提交
  • 4、如果还想把响应报文返回一些信息
    • 可以在choose response中选择响应返回的状态码
    • 如200_diddlergif.dat
    • 200_simplehtml.dat
  • 4.消除命令
    • Rules -> Automatic Breakpoint -> Disabled
HTTP/1.1 200 OK
Date: Sat, 18 Apr 2020 12:05:28 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 62409
Connection: keep-alive
Server: nginx
Cache-Control: private
Last-Modified: Sat, 18 Apr 2020 12:00:00 GMT
X-NWS-UUID-VERIFY: cbe94da3f4fec551e970bbf78f743f8b
Vary: Accept-Encoding
X-NWS-LOG-UUID: 707fa9f9-af2f-4b06-9b04-065632bfc552
X-Daa-Tunnel: hop_count=3
X-Cache-Lookup: Hit From Upstream
X-Cache-Lookup: Hit From Inner Cluster
X-Cache-Lookup: Hit From Upstream






    
    
    张文宏:中国做的是饱和式的诊断,世界上很多国家还做不到_产经_前瞻经济学人
    
    
    
    
    
    

    
    
    



改成:

HTTP/1.1 200 OK
Date: Sat, 18 Apr 2020 12:05:28 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 62409
Connection: keep-alive
Server: nginx
Cache-Control: private
Last-Modified: Sat, 18 Apr 2020 12:00:00 GMT
X-NWS-UUID-VERIFY: cbe94da3f4fec551e970bbf78f743f8b
Vary: Accept-Encoding
X-NWS-LOG-UUID: 707fa9f9-af2f-4b06-9b04-065632bfc552
X-Daa-Tunnel: hop_count=3
X-Cache-Lookup: Hit From Upstream
X-Cache-Lookup: Hit From Inner Cluster
X-Cache-Lookup: Hit From Upstream






    
    
    张文宏:对对对
    
    
    
    
    
    

    
    
    


创建AutoResponder规则

允许你从本地返回文件,而不用将http request 发送到服务器上

  • 1、打开百度,把logo图片保存到本地,并且对图片做些修改。
  • 2、打开Fiddler 找到logo图片的会话,https://www.baidu.com/img/bd_logo1.png,把这个会话拖到AutoResponer Tab
  • 3 、选择AutoResponder选项卡【三个都选】
    • Enable automatic reaponses【是否启用自动匹配的规则】
    • Unmatched requests passthrough【没有匹配搭配规则默认通过】
    • Enable Latency【是否启用延迟】
  • 4、add rules
  • 5、在Rule Editor 下面选择
    • Find a file... 选择本地保存的图片
    • 最后点击Save 保存下。
  • 6、再打开百度, 你会看到首页的图片用的是本地的

一些内置的bat的rules,存放在D:\fiddler4\ResponseTemplates

可以自己写规则,通用的匹配规则如下:

  • 无前缀
    • 表示基本搜索,搜索到字符串就匹配,只要match中包含了rules的字符串即可
  • 前缀为“EXACT
    • 表示完全匹配,大小写敏感
  • 前缀为“NOT
    • 表示发现就不匹配
  • 前缀为“REGEX
    • 表示正则匹配
    • .+ :匹配1个或多个字符
      • 如:regex:.+jpg,表示包含有jpg字符串且以jpg结尾即匹配
    • .* : 匹配0个或多个字符
      • 如:regex:.+.jpg.*,表示包含有.jpg字符串即匹配
    • ^ : 匹配字符串开始位置
    • $ : 匹配字符串结束位置
      • 如:regex:(?insx).+.(jpg|png|bmp)$,表示包含以jpg或png或bmp字符串结尾的,不区分大小写,且是单行的即匹配
  • 前缀为regex:(?insx)的匹配方式
    • i:不区分大小写
    • n:指定唯一有效的捕获是显示命名或编号的形式
    • s:单行
    • x:空格

规则实例

- EXACT:http://www.baidu.com
- regex:(?inx).+\.jpg$  #匹配以jpg结尾的字符串

实例1【更改图片】

  • 1、进入https://t.qianzhan.com/caijing/detail/200418-4a7c3321.html,显示的是页面
  • 2、找到显示图片的会话
    • https://img3.qianzhan.com/news/202004/18/20200418-a7359eb01ab847fb_700x5000.jpg
    • inspectors选项卡中最下面栏中的Imageview可以显示图片
  • 3、选择AutoResponder选项卡,全选
  • 4、add rules
  • 5、在Rule Editor 下面选择
    • Find a file... 选择本地保存的图片
    • 最后点击Save 保存下。
  • 6、再打开百度, 你会看到首页的图片用的是本地的

移动端抓包

  • tools -》 options -》 connectoins - 》 Allow remote computers to connect【勾选】

  • 端口8888

  • cmd -》 ipconfig 【查看自己的IP地址】

    • 看无线连接
    • ipv4:xxx.xxx.xxx.xxx
  • 在手机上勾选手动代理

    • 输入代理服务器主机名:xxx.xxx.xxx.xxx
    • 输入代理服务器端口:8888
  • 在手机上输入:http://xxx.xxx.xxx.xxx:8888

    • 下载证书,显示FiddlerRoot.cer
    • 会输入锁屏密码
    • 证书名称自定义为:fiddlerroot证书

你可能感兴趣的:(fiddler)