专业IT网络知识平台,分享IT百科知识、生活百科知识解答!

易企推科技
易企推科技

数据包是什么意思(数据包有哪些格式)

来源:小易整编  作者:小易  发布时间:2020-04-02 05:02
摘要:Fiddler简介 Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的进出Fiddler的数据(指cookie,html,js,css等文件)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户...

Fiddler简介

Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式.

Fiddler使用c#语言开发,是一个开源软件。它包含一个简单却功能强大的基于JScript .NET 事件脚本子系统,它的灵活性非常棒,可以支持众多的http调试任务,并且能够使用c#语言进行扩展。他还提供一系列接口以支持插件开发。

Fiddler是基于代理模式工作的,简单来说,当你打开Fiddler软件,他会开始监听本机8888端口。然后将系统默认代理设置为127.0.0.1:8888。这样本机所有使用系统代理的软件包括浏览器会先把数据发送到Fiddler,然后Fiddler再将数据发送到服务器。服务器返回的数据先发送给Fiddler,再由Fiddler发送到指定的程序。在这个过程中Fiddler起到了转发数据(代理)的作用。由于数据无论是请求还是响应都通过Fiddler进行转发,所以Fiddler有权限对数据进行获取、存储、修改等操作。

Fiddler安装

打开https://www.telerik.com/fiddler,点击Free download进行下载。

安装过程很简单绿色,选择好安装路径,点击Install就可以了。这里特别注意下,你要记住你的安装路径,因为Fiddler默认不会创建桌面快捷方式,需要你去安装目录打开程序或者手动创建快捷方式。

如何抓取http(s)数据包?Fiddler抓包软件详解

Fiddler安装

界面简介

如何抓取http(s)数据包?Fiddler抓包软件详解

Fiddler界面

使用及设置

Fiddler功能繁杂,不好以图文的形式把每一项讲清楚。下面我讲一些日常使用的、关键的按钮、功能和设置。

安装完成后我们一般先进行几项很重要的设置,首先点击Tools->options->Connections

如何抓取http(s)数据包?Fiddler抓包软件详解

Fiddler

在这里我们可以修改Fiddler监听的端口,勾选红圈标示出来的这项,允许远程计算机连接。以便在以后我们抓取手机等移动设备的数据包。勾选之后在手机Wifi设置里设置代理为 “内网IP:8888"(如 192.168.1.2:8888)就可以抓取手机的HTTP数据包。

然后再将标签页切换到HTTPS,以设置Fiddler可以抓取https数据包

如何抓取http(s)数据包?Fiddler抓包软件详解

Fiddler设置

勾选以上几项,期间会弹出证书安装,一路确认下去。完成之后,你的Fiddler就可以抓取本机的https数据包

如何抓取http(s)数据包?Fiddler抓包软件详解

Fiddler工具栏

工具栏中我们主要介绍红圈选中的几个功能。X是用来清空当前数据记录的。

Decode选中之后会自动尝试解压响应的内容,包括但不限于以下格式(gzip、deflate、bzip2、brotli)。

"Keep 1000 sessions"表示显示多少条数据记录,默认显示全部,这里建议设置为500或者1000,默认全部的话,时间久了会把你电脑内存耗光.

Any Process 这个按钮可以拖动选择抓指定应用程序的包,比如拖动到firefox就只显示firefox的数据包。默认显示全部应用程序。

如何抓取http(s)数据包?Fiddler抓包软件详解

Save按钮可以把当前的数据记录保存到硬盘,以便在方便的时候重新打开分析

Clear Cache是清除浏览器缓存,基本不用

TextWizard是个功能非常强大的编码解码工具,支持多种格式。会经常用到

如何抓取http(s)数据包?Fiddler抓包软件详解

TextWizard

鼠标放到Online按钮上,会显示你当前的网卡信息、内网IP。方便给手机设置代理的时候查看。

当在左侧选择一条数据记录时,右侧会显示该请求的具体信息

如何抓取http(s)数据包?Fiddler抓包软件详解

请求数据

Headers会显示请求头的一些信息,例如是GET还是POST、浏览器UA、cookie等

Textview和SyntaxView功能基本一样,用来显示post数据的原始明文格式(UTF-8),如果是二进制数据则显示乱码

WebForms会更清晰的展示你的post内容(仅限于&连接格式的post内容,如果是json格式,这里不显示)

HexView,以16进制显示你的整个请求包

Auth,显示授权信息

Cookie,用来显示请求携带的cookie信息

raw,以明文(utf-8)显示整个请求头信息包含post内容

json,以json格式显示post内容

xml,以xml格式显示post内容

以下是服务器响应的响应信息截图

如何抓取http(s)数据包?Fiddler抓包软件详解

Headers显示响应头信息

TextView和SyntaxView作用相似,用来显示服务器返回的具体内容。当返回内容非常大的时候TextView会卡死很久才显示。SyntaxView比TextView响应快很多

ImageView,如果服务器返回的是图片流的话,会在这个标签显示图片

HexView,以16进制显示返回内容

WebView,如果返回的是html代码,这个标签会解析html并显示网页

Auth,显示返回的授权信息

Caching,显示缓冲

Cookie,显示服务器返回的cookie

Raw,以明文(utf-8)显示完整的响应数据包

Json,以json格式显示返回内容

XML,以xml格式显示返回内容

Composer工具介绍

Composer工具在Fiddler中使用率非常高,常常用来模拟一些数据的提交

如何抓取http(s)数据包?Fiddler抓包软件详解

上图我们使用Composer工具,模拟提交了百度翻译的数据包。我们提交一个请求,询问服务器China的意思是什么?

如何抓取http(s)数据包?Fiddler抓包软件详解

服务器给我们返回以上词义。返回格式为json格式。

Fiddler命令行

在命令行中我们基本只需要掌握bpu命令就可以了,这是一个数据劫持命令

我们在命令行中输入bpu http://fanyi.baidu.com/sug 然后回车,Fiddler会监听并劫持发往和返回http://fanyi.baidu.com/sug的所有数据,并支持中途编辑修改。

如何抓取http(s)数据包?Fiddler抓包软件详解

我们把我们提交的china关键词改成japan,发现服务器给我们返回了japan的翻译

如何抓取http(s)数据包?Fiddler抓包软件详解

通过这个命令,我们既可以修改请求,也可以修改响应。常常用来劫持数据,例如你玩的某个游戏里,你有100个金币,通过劫持数据,你可以吧自己的金币数量修改成1万甚至更多。

抓包实战

我们通过一个示例,来强化上面的学习。我们来使用Fiddler抓取百度翻译输入china的数据包,然后使用我们熟悉的编程语言来写一个翻译软件。

首先我们打开百度翻译(http://fanyi.baidu.com/#en/zh/),输入china,观察Fiddler中抓到的数据。

如何抓取http(s)数据包?Fiddler抓包软件详解

通过逐条查看,或者搜索china字样,我们找到了一个异步请求数据包,这个包是用来做词义联想的,虽然不是最终的翻译数据包,但是该包相对简单也可以实现翻译功能,我们就来模拟这个包实现翻译功能。

我们按住这条记录,拖动到Composer工具里,简单调试去除一下无用的头部信息,看浏览器是否能正常返回。我们精简后的请求为下图示例

如何抓取http(s)数据包?Fiddler抓包软件详解

下面我们使用python编程模拟这个请求

如何抓取http(s)数据包?Fiddler抓包软件详解
如何抓取http(s)数据包?Fiddler抓包软件详解

import http

import json

from urllib import parse

keyword=input('请输入要翻译的单词:')

#构造请求头信息

headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36

(KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.3964.2 Safari/537.36'

,'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8'}

conn = http.client.HTTPConnection("fanyi.baidu.com") #创建HTTP连接

body = {'kw': keyword} #构造post信息

body = parse.urlencode(body) #对post内容进行url编码

conn.request("POST","/sug",body=body,headers=headers) #开始请求

response = conn.getresponse() #获取响应

if(response.status==200): #判断服务器响应代码为200的话即返回正常

result = response.read().decode('utf-8'); #获取响应数据

result = json.loads(result) #解析json

print('翻译内容为:',result['data'][0]['v']) #输出翻译内容

else:

print('出现错误') #如果服务器响应代码不是200,是500或者404或者其他错误代码,都显示为错误

 


本文地址:百科知识频道 https://www.hkm168.com/zhibai/126181.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科知识
小编:小易整编
相关文章相关阅读
  • 祝福老师句子大全,教师节送礼必备(感恩教育恩人)

    祝福老师句子大全,教师节送礼必备(感恩教育恩人)

    祝福老师句子大全,教师节送礼必备(感恩教育恩人)教师节是每年的9月10日,这一天是我们向教育恩人表达感激之情和祝福的日子。在这个特殊的日子里,送上一句祝福老师的话语,表达我们对教育工作者的敬意和感激之情,成为了每位学生们献给老师的最好礼物。...

  • 贺知章名句赏析,诗人风采展示(品味优美诗歌)

    贺知章名句赏析,诗人风采展示(品味优美诗歌)

    贺知章名句赏析,诗人风采展示(品味优美诗歌)贺知章,唐代诗人,被誉为“豪放派”代表之一。他的诗歌生动有力,意境深远,语言通俗易懂,充满浓郁的民族气息。他留下了许多优美的诗句,让人感慨万千,不得不赞叹其诗才与风采。其中,著名的“海内存知己,天...

  • 纸飞机折法,制作简单易学(挑战手工艺术)

    纸飞机折法,制作简单易学(挑战手工艺术)

    纸飞机折法,制作简单易学(挑战手工艺术)纸飞机是一款低成本、简单易学的手工艺品,因其制作过程简单易懂,大家可以尝试在家,不需要太多专业工具。首先准备一张A4大小的白纸,将其折成一半,然后再打开,将两边的边角对齐,再次往中间折叠。在折叠的位置...

  • 中超赛程表,看球购票攻略(跟随绿茵场之旅)

     中超赛程表,看球购票攻略(跟随绿茵场之旅)

    中超赛程表,看球购票攻略(跟随绿茵场之旅)中超联赛一直以来都备受球迷关注,每个赛季都会有无数的球迷前往现场观看比赛。为了让广大球迷更好地安排自己的观赛计划,我们在这里为大家介绍一下中超赛程表和看球购票的攻略。中超赛程表中超联赛一般从3月份开...

  • 春节习俗大全,传统文化策源地(领略浓郁年味)

    春节习俗大全,传统文化策源地(领略浓郁年味)

    春节习俗大全,传统文化策源地(领略浓郁年味)春节是中国最重要的传统节日,也被称作“年节”、“新春节”等,是一个具有重大历史意义和文化内涵的节日。说到春节,就不得不提到具有浓郁地域特色和文化内涵的习俗,这些习俗既体现了中华民族的优秀文化传统,...

  • “水”字旁常用字,快速记忆方法(提高汉字识别能力)

    “水”字旁常用字,快速记忆方法(提高汉字识别能力)

    “水”字旁常用字,快速记忆方法(提高汉字识别能力)汉字是中国文化的重要组成部分,对于中文学习者而言,汉字的认识和记忆是非常重要的。其中“水”字是汉字中的一个旁常用字。在学习这个字时,我们可以采用一些快速记忆方法,提高汉字识别能力。首先,我们...

  • 做梦梦见很多蛇,分析梦境内涵(看懂心理暗示)

    做梦梦见很多蛇,分析梦境内涵(看懂心理暗示)

    做梦梦见很多蛇,分析梦境内涵(看懂心理暗示)做梦时梦见很多蛇是一种比较常见的梦境,对于这种梦境的解释和分析是非常重要的。从心理学的角度来看,这种梦境不仅反映了我们潜意识中的想法和情感,也可以为我们指引未来的行动。首先,梦见很多蛇可能说明我们...

  • 制作铃声详解,打造个性化手机(表现自我风格)

    制作铃声详解,打造个性化手机(表现自我风格)

    制作铃声详解,打造个性化手机(表现自我风格)随着移动设备的普及,手机不仅是通信工具,也成为了一种个性化的表现方式。而铃声则是手机个性化中最直接的表现形式之一。制作一个个性化的铃声,不仅可以让你的手机更具有个性化的特色,同时还可以让你展现出自...

  • 周排行
  • 月排行
  • 年排行

精彩推荐