抓包工具fiddler都有哪些高级功能,一文带你全面了解它( 七 )


抓包工具fiddler都有哪些高级功能,一文带你全面了解它

文章插图
 
支持命令在QuickExec中支持很多命令,命令列表如下
分类
指令
示例
说明
查询报文
?searchtext
?demo.zentao.net
突出显示URL包含demo.zentao.net的请求
 
>size
>40000
突出显示响应数据大于40kb的请求
 
<size
<5kb
突出显示响应数据小于5kb的请求
 
=status_code
=302
突出显示响应状态码为302的请求
 
=method
=post
突出显示请求方法为post的请求
 
@host
@demo.zentao.net
突出显示主机包含demo.zentao.net的请求
 
bold text
bold zentao
将url中包含zentao的请求加粗显示
 
select response-Content-Type
select text/html
突出显示响应头Content-type中包含text/html的请求
 
allbut response-Content-Type
allbut text/html
隐藏所有请求,响应头Content-Type中包含text/html的请求除外
断点
bps status_code
bps 400
中断所有状态码为400的请求
 
bpm or bpv method
bpm post 或bpv post
中断所有请求方法为post的请求
 
bpu url
bpu demo.zentao.net
中断所有url包含demo.zentao.net的请求,注意请求和响应数据都可以修改 。
 
bpafter url
bpafter demo.zentao.net
中断所有url包含demo.zentao.net的请求,注意只能修改响应数据 。
 
g
g
恢复所有中断的请求
其它
dump file
dump c:a.saz
将所有请求保存到c:a.saz文件中
 
start
start
开启录制功能,默认状态下开启的
 
stop
stop
停止录制功能,注意停止后无法抓包 。
 
quit
quit
退出fiddler
 
hide
hide
隐藏fiddler
 
show
show
打开隐藏的fiddler,此命令需在cmd窗口输入
 
cls or clear
cls 或 clear
清除所有请求
需要说明的是,以上命令不仅可以在fiddler中QuickExec中执行,同时也支持在cmd窗口中执行。后面我们会介绍如何在cmd窗口中执行。
命令解析
以上那么多的命令,我们怎能记得住,难道每次使用时都要查阅文档? 其实完全不用 ,我们也可以直接在fiddler中更快捷的找到这些命令 。那就是到FiddlerScript的OnExecAction函数去查找。
抓包工具fiddler都有哪些高级功能,一文带你全面了解它

文章插图
 
OnExecAction函数含义
那么这个函数到底有什么用呢 ? 我们先来看下此函数前的注释是啥意思 ?
   // The OnExecAction function is called by either the QuickExec box in the Fiddler window,    // or by the ExecAction.exe command line utility.翻译过来大致意思是:
  • 通过Fiddler窗口中的QuickExec框调用OnExecAction函数,也就是说我们在左下角使用QuickExec栏执行的命令,其实就是调用的这个函数。
  • 第二句话的意思是它也可以通过ExecAction.exe这个程序执行命令,在那执行呢?就是我们上面说的cmd窗口。
命令含义
接下来我们通过2个命令来解析下,看看到底啥意思?
  1. bold 命令解析
case "bold":if (sParams.Length<2) {uiBoldURI=null; FiddlerObject.StatusText="Bolding cleared"; return false;}uiBoldURI = sParams[1]; FiddlerObject.StatusText="Bolding requests for " + uiBoldURI;return true;此命令的主要作用就是将符合条件的请求设置成粗体展示 。那么通过此代码可以看出,它需要接受2个参数,第一个当然是关键字bold,如果第二个参数没有输入,那么就将之前设置的粗体清除掉 ,并且将信息“Bolding cleared”打印在fiddler窗体;若接收到了第二个参数,那么就把符合第二个参数(此参数接受的是url)的请求设置成粗体,并将信息打印到fiddler窗体 。
  1. g 命令解析
case "go":UI.actResumeAllSessions();此命令的作用就是将所有已设置断点的请求重新恢复,可以看出它调用的是另外一个函数,这些函数都可以在ClassView找到。
通过以上两个命令的解析,我们再去看其它命令,你会发现大多数的命令都是这样的语法,也就能理解这些命令的具体使用。


推荐阅读