fiddler抓包乱码是怎么回事
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fiddler抓包乱码是怎么回事相关的知识,希望对你有一定的参考价值。
参考技术A 网上的介绍文章很多,在这不多说了。但是这些文章都没提到一个问题:对于有些中文网站,POST请求中的中文参数不能被Fiddler正确处理。具体表现是:这些网站是用GB2312/GBK/GB18030编码的,比如POST请求中含有"中文"二字,在Fiddler的TextView Inspector中显示为“����”("中文"的GBK编码),到了WebForms Inspector中就显示为乱码了,因为Fiddler把它们按照UTF-8解码。反过来,在WebForms Inspector中将参数设置为中文值,会被Fiddler用UTF-8编码发送出去导致错误。其实这不是Fiddler的错,是这些土鳖网站没有在 HEADER中指定字符集。给作者发信询问,很快得到了答复:打开注册表编辑器,找到HKCU\Software\Microsoft\Fiddler2\,在里面添加一个字符串值,名叫HeaderEncoding,值设置为默认编码。建议设成GB18030。然后要记得重启Fiddler才能生效。
具体步骤:
1、windows按钮+R
2、输入regedit +回车+是
3、HKEY_CURRENT_USER\Software\Microsoft\Fiddler2
4、右键新建,选字符串值 加上HeaderEncoding 然后值输入 GBK本回答被提问者采纳
Fiddler抓包原理
参考技术A 1,Fiddler抓包原理Fiddler为什么可以抓包,Fiddler本质上是一个web代理服务器,默认的工作端口是8888
查看端口方式TOOLS->options->connections 如图所示
2,什么是代理服务器
Web 代理(Proxy Server)服务器是网络的中间实体。代理位于 Web 客户端和 Web 服务器之间,扮演“中间人”的角色。HTTP的代理服务器既是Web服务器又是Web客户端
3,代理服务器是网络信息的中转站,它具有以下功能
(1)共享网络。能解决仅仅有一条线路、一个公有 IP的问题。在公有 IP资源严重不
足的情况下,可以满足局域网大量用户同时共享上网的需求。
(2)提高了访问速度。因为大部分的代理服务器都有缓冲功能,可以直接读取,无须再连接到远程 Web 服务器。这样可以达到加快访问网站的速度、节约通信带宽的目的。
(3)突破了访问限制。当访问权限受到限制时,可以使用有权限的代理服务器。
(4)隐藏身份。内部网的用户要对外发布信息,就需要使用代理服务器的反向代理功
能。这样就不会影响内部网络的安全性能,起到隐藏身份的目的。
4,Fiddler工作原理
Fiddler 是以代理 Web 服务器的形式工作的,它使用代理地址: 127.0.0.1,端口:8888.
Fiddler启动的时候,会偷偷地把 Intemet选项中的代理修改为127.0.0.1,端口:8888.
当Fiddler 退出的时候,它会自动在 Intemet选项中取消代理,这样就不会影响别的程序。
如果Fiddler 非正常退出,这时候因为 Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动 Fiddler。
5,查看Internet 选项代理设置
1,先启动 Fiddler,打开控制面板,找到Internet属性,然后选择连接->局域网设置高级,可以看到代理服务器地址已经被Fiddler 设置为127.0.0.1:8888 了。
2,关闭Fiddler,可以看到代理服务器地址已经取消了。
6,Fiddler可以捕获那些设备的HTTP数据包
任何支持代理的HTTP 请求都能被 Fiddler 捕获到,首先 Fiddler 能捕获各种浏览器,比如IE、Firefox、Chrome 发出来的数据包。
Fiddler 还能捕获各种移动设备,比如 Android 手机、苹果手机、iPad 等发出的数据包.。
Fiddler能捕获任何程序发出来的HTTP/HTTPS请求,只要这个程序支持Web代理服务器即可。
比如Fiddler能抓到QQ发出的包,当然QQ中发的聊天消息是抓不到的,因为QQ中的聊天信息使用的是OICQ协议,不是HTTP协议。
以上是关于fiddler抓包乱码是怎么回事的主要内容,如果未能解决你的问题,请参考以下文章
Windows抓包指南②:Fiddler抓不到的包是怎么回事?