抓包工具fiddler的介绍

发表于:2020-8-28 10:44  作者:佚名   来源:知乎

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: Fiddler 安全测试

  了解过网络安全技术的人都知道一个名词“抓包”。那对于局外人,一定会问什么是抓包?考虑到,大家的技术水平不一,我尽可能用非专业的口吻简单的说一下。
  抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。黑客常常会用抓包软件获取你非加密的上网数据,然后通过分析,结合社会工程学进行攻击。所以,学会抓包,对于学好网络安全技术十分重要。
  Fiddler
  Fiddler是在windows上运行的程序,专门用来捕获HTTP,HTTPS的。
  当启动fiddler,程序将会把自己作为一个代理,所以的http请求在达到目标服务器之前都会经过fiddler,同样的,所有的http响应都会在返回客户端之前流经fiddler。
  Fiddler可以抓取支持http代理的任意程序的数据包,如果要抓取https会话,要先安装证书。
  Fiddler的工作原理
  Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1, 端口:8888. 当Fiddler会自动设置代理, 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。
  Fiddler 如何捕获Firefox的会话
  能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。Fiddler2启动的时候默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将Firefox的代理改为127.0.0.1:8888就可以监听数据了。
  Firefox 上通过如下步骤设置代理
  点击: Tools -> Options, 在Options 对话框上点击Advanced tab - > network tab -> setting.
  Firefox 中安装Fiddler插件
  修改Firefox 中的代理比较麻烦, 不用fiddler的时候还要去掉代理。推荐你在firefox中使用fiddler hook 插件, 这样你非常方便的使用Fiddler获取firefox中的request 和response,当你安装fiddler后,就已经装好了Fiddler hook插件,你需要到firefox中去启用这个插件打开firefox tools->Add ons -> Extensions 启动 FiddlerHook
  Fiddler如何捕获HTTPS会话
  默认下,Fiddler不会捕获HTTPS会话,需要你设置下, 打开Fiddler Tool->Fiddler Options->HTTPS tab
  选中checkbox, 弹出如下的对话框,点击"YES"
  点击"Yes" 后,就设置好了
  Fiddler的基本界面
  看看Fiddler的基本界面
  Inspectors tab下有很多查看Request或者Response的消息。 其中Raw Tab可以查看完整的消息,Headers tab 只查看消息中的header. 如下图:
  Fiddler的HTTP统计视图
  通过陈列出所有的HTTP通信量,Fiddler可以很容易的向您展示哪些文件生成了您当前请求的页面。使用Statistics页签,用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。
  选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行访问速度优化。
  QuickExec命令行的使用
  Fiddler的左下角有一个命令行工具叫做QuickExec,允许你直接输入命令。
  常见得命令有:
  help 打开官方的使用页面介绍,所有的命令都会列出来
  cls 清屏 (Ctrl+x 也可以清屏)
  select 选择会话的命令
  .png 用来选择png后缀的图片
  bpu 截获request
  Fiddler中设置断点修改Request
  Fiddler最强大的功能莫过于设置断点了,设置好断点后,你可以修改httpRequest 的任何信息包括host, cookie或者表单中的数据。设置断点有两种方法
  第一种:打开Fiddler 点击Rules-> Automatic Breakpoint ->Before Requests(这种方法会中断所有的会话)
  如何消除命令呢? 点击Rules-> Automatic Breakpoint ->Disabled
  第二种: 在命令行中输入命令: bpu http://www.baidu.com (这种方法只会中断http://www.baidu.com)
  如何消除命令呢? 在命令行中输入命令 bpu

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海信义律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2021, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道