如何使用wireshark抓包
抓取报文:
下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名,然后开始在此接口上抓包。例如,如果想要在无线网络上抓取流量,点击无线接口。点击Capture Options可以配置高级属性,但现在无此必要。
点击接口名称之后,就可以看到实时接收的报文。Wireshark会捕捉系统发送和接收的每一个报文。如果抓取的接口是无线并且选项选取的是混合模式,那么也会看到网络上其他报文。
上端面板每一行对应一个网络报文,默认显示报文接收时间(相对开始抓取的时间点),源和目标IP地址,使用协议和报文相关信息。点击某一行可以在下面两个窗口看到更多信息。逗+地图标显示报文里面每一层的详细信息。底端窗口同时以十六进制和ASCII码的方式列出报文内容。
需要停止抓取报文的时候,点击左上角的停止按键。
色彩标识:
进行到这里已经看到报文以绿色,蓝色,黑色显示出来。Wireshark通过颜色让各种流量的报文一目了然。比如默认绿色是TCP报文,深蓝色是DNS,浅蓝是UDP,黑色标识出有问题的TCP报文——比如乱序报文。
报文样本:
比如说你在家安装了Wireshark,但家用LAN环境下没有感兴趣的报文可供观察,那么可以去Wireshark wiki下载报文样本文件。
打开一个抓取文件相当简单,在主界面上点击Open并浏览文件即可。也可以在Wireshark里保存自己的抓包文件并稍后打开。
过滤报文:
如果正在尝试分析问题,比如打电话的时候某一程序发送的报文,可以关闭所有其他使用网络的应用来减少流量。但还是可能有大批报文需要筛选,这时要用到Wireshark过滤器。
最基本的方式就是在窗口顶端过滤栏输入并点击Apply(或按下回车)。例如,输入逗dns地就会只看到DNS报文。输入的时候,Wireshark会帮助自动完成过滤条件。
也可以点击Analyze菜单并选择Display Filters来创建新的过滤条件。
另一件很有趣的事情是你可以右键报文并选择Follow TCP Stream。
你会看到在服务器和目标端之间的全部会话。
关闭窗口之后,你会发现过滤条件自动被引用了——Wireshark显示构成会话的报文。
检查报文:
选中一个报文之后,就可以深入挖掘它的内容了。
也可以在这里创建过滤条件——只需右键细节并使用Apply as Filter子菜单,就可以根据此细节创建过滤条件。
OS X 提供了 Internet Sharing,直接建一个热点,共享给任何设备都可以,只要是连接到该 WI-FI
热点上的设备,流量都得经过该热点,嗅探器装在热点上,想抓什么包抓什么包,比单纯的代理方便多,而且可以抓的包种类也更多。
当然,你的 MBP 得有有线可以将网络共享才行。。。
WIFI Options
可以设置点加密啥的。
开启后就这样了。
手机连接好刚才的
WIFI。
所有的网络流量都经过 MBP 中转,嗅探起来就方便了。
打开神器
Wireshark,依照图示选择嗅探的端口。
Start 完了就等着收包了,监听 HTTP
啥的都跟玩儿似的,不管是啥协议都能搞定,具体的用法嘛,就是另外一个问题了。
本文以App作为例子,实际应用不限于App范围。
大部分场合都可以通过程序调试来定位问题,但有些场景使用抓包来定位接口问题更准确、更方便,如以下场景:
要实现对App的网络数据抓包,需要监控App与服务器交互之间的网络节点,监控其中任意一个网络节点(网卡),获取所有经过网卡中的数据,对这些数据按照网络协议进行解析,这就是抓包的基本原理。
但是中间网络节点,不受我们控制,所以基本无法实现抓包的,只能在客户端和服务端进行抓包。
通常我们监控本地网卡数据,如下图:
本地网络 指的是WIFI的路由,如果直接抓路由器的包还是比较麻烦的,因此我们会在 手机 和 本地路由 之间加一层 代理服务 ,这样只要抓代理服务的网络数据即可:
虽然在 手机 侧也可实现抓包,但和 本地路由 一样,抓包比较麻烦,如果不是没有办法,尽量还是不在手机侧抓包。但是有一种情况必须在手机端抓包,那就是在4G网络情况下:
4G网络状态下如何抓包,以及它的劣势,我们后面章节再细讲。
抓包实际上是分析网络协议的一种过程,尽管繁琐的细节劳动都让抓包工具做了,但我们还是需要了解下基础的网络协议,好帮助我们更好的分析问题。
首先需要了解下经典的OSI七层网络模型,以及每层的作用,其次对TCP、HTTP协议简单了解。
HTTPS是基于HTTP协议的一种改进,在 TCP之上 的会话层增加安全处理。对于应用层来说,HTTPS和HTTP没有什么不同,也就是说,HTTPS是保证网络传输的安全性,对业务数据无侵入。
简化理解大概是这个样子:
SSL和TLS是保证安全传输的协议,包括证书认证、加解密和数字签名。
项目中HTTPS的链路:
因此,客户端与后台,编写网络接口时,不需要关心SSL或TLS,按照HTTP协议处理即可。
既然HTTPS在网络传输是经过加密的,那么抓包抓到的数据就是密文,不经过解密是无法看到报文的。针对这个问题,如上图WIFI环境下设置代理的方式可以解决,具体思路是:
所以整个网络链路依然是HTTPS在传输,但代理服务自己可以获取到明文数据。
比较常用的抓包工具大概有4个,主要用作互补,配合使用基本所有平台、所有抓包需求都能满足:
需要说明的是,tcpdump可将数据保存成文件,直接用wireShark打开分析,针对后台或手机抓包使用起来十分方便。
几个工具间的使用关系:
为什么要真机抓包?必定是没有办法设置代理服务了,如4G网络情况下直接和移动基站链接,没法设置代理服务。凡是非4G网络状态下,都不建议真机抓包。
iOS 5后,apple引入了RVI remote virtual interface的特性,它只需要将iOS设备使用USB数据线连接到mac上,然后使用rvictl工具以iOS设备的UDID为参数在Mac中建立一个虚拟网络接口rvi,就可以在mac设备上使用tcpdump,wireshark等工具对创建的接口进行抓包分析。
具体步骤:
android是linux系统,和后台一样可以使用tcpdump命令来抓包,但是需要root权限,因为一般手机系统不带有抓包命令 tcpdump ,需要自行安装。
安装tcpdump:
使用tcpdump:
这是就已经进入抓包状态,手机所有的网络请求都会被捕获,并保存到capture文件中。
导出capture文件:
原文: 网络抓包
抓包工具在APP开发过程中使用非常频繁,对开发者理解网络传输原理以及分析定位网络方面的问题非常有帮助。
笔者一直比较喜欢Wireshark,但由于最近的项目是短连接项目,Wireshark太过重量。所以笔者选择Charles进行App的抓包,配置也更加简单。
iOS手机,连接与电脑同一个WiFi。然后点击“设置->无线局域网->连接的WiFi”,设置HTTP代理。
进入wifi的配置设置。
增加代理信息并保存。
服务器为电脑IP地址:如1921680102
端口:8888
打开Charles。
手机配置成功后会弹出提示,点击“Allow”即可。
此时,HTTP的网络包已经可以查看,但是HTTPS的依旧不可以。
想要HTTPS抓包,首先要按照顺序完成上面的HTTP的配置。
点击上面选项后,Charles会弹出提示。
在手机Safari浏览器输入地址 "chlspro/ssl",出现证书安装页面,点击安装
点击安装。
对于iOS10之后的系统版本,需要进行下面的操作——对根证书进行信任操作。
开启“SSL Proxying”
点击“SSL Proxying Setting”,增加SSL拦截规则,像笔者比较懒,就如图将所有443端口的请求都进行了拦截。
不需要重启Charles,此时开始,所有的HTTPS的请求也是可见的了。
抓包结束后一定要关闭wifi的代理配置,否则Charles关闭后,手机将无法用这个wifi上网。
pc端 步骤
3、打开Charles,再来打开你想抓的网站,用Charles来抓取一些数据(例如:img、js文件、css文件和其他)
4、只要双击Overview上的url那一行,就能弹出一个写满全地址的框,把地址放进浏览器打开,就能获取到json数据
注意:如果网站(还是移动端)的数据加密,就抓取不到了,还有一点,因为是没用钱买Charles,所以Charles只能用几分钟就得重新打开
移动端 步骤
5、先在电脑上下载一个免费的WIFI,把电脑和手机都连在同一个人局域网上
6、打开Charles,点击工具栏上的 proxy ---> proxy Settings ----> 勾选上 Enable transparent HTTP proxying --->点击OK
注意:不要勾选 use a dynamic port,否则端口会随时在变,端口8888是默认
7、点击 proxy ---> Access Proxying Settings --> 点击Add ---> 再来打开cmd ---> 输入 ipconfig 命令,找到本机的Ipv4地址(通常以19开头,只要在cmd界面输入ipconfig回车找到ipv4就行了) ---> OK
8、设置手机,打开连接手机与电脑上的同一网络的WIFI,代理 设置为 手动 ,主机名设置 有Charles打开的电脑的Ipv4的地址,端口默认为8888,点击确认 就可以了
网络抓包工具怎么用
点开用 会抓取你电脑经过网卡的数据包 分为 tcp udp ip arp 的数据包 然后自己分析
怎么用网络抓包工具最好是有 流程的
如果需要专业一点请用
ethereal(英文)不是超简单
sniffer (有中文汉化的)也不错,有许多人说是最强的,但我还是认为ethereal最简单好用
抓包工具wireshark怎么用
这里有教程,一看就懂blogjobbole/70907/
抓包工具是干什么的?如何使用
抓数据包的,可以用来分析网络流量,可以用来破译抓来的数据,比如密码之类的。网上应该有相关教程,自己研究
如何使用抓包工具?为什么要抓包
抓包主要抓取流量,用于分析,如网络诊断、流量分析等等 可以试试基于进程抓包QPA工具
如何用抓包工具分析出有用的网络数据 5分
这些内容都是加密的,抓包是分析不出来的!!
如何使用抓包工具
开始界面
wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。
点击Caputre->Interfaces 出现下面对话框,选择正确的网卡。然后点击"Start"按钮, 开始抓包
Wireshark 窗口介绍
WireShark 主要分为这几个界面
1 Display Filter(显示过滤器), 用于过滤
2 Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表
3 Packet Details Pane(封包详细信息), 显示封包中的字段
4 Dissector Pane(16进制数据)
5 Miscellanous(地址栏,杂项)
使用过滤是非常重要的, 初学者使用wireshark时,将会得到大量的冗余信息,在几千甚至几万条记录中,以至于很难找到自己需要的部分。搞得晕头转向。
过滤器会帮助我们在大量的数据中迅速找到我们需要的信息。
过滤器有两种,
一种是显示过滤器,就是主界面上那个,用来在捕获的记录中找到所需要的记录
一种是捕获过滤器,用来过滤捕获的封包,以免捕获太多的记录。 在Capture -> Capture Filters 中设置
保存过滤
在Filter栏上,填好Filter的表达式后,点击Save按钮, 取个名字。比如"Filter 102",
网络上的抓包工具有什么用
Ethereal 不错,而且很小!
什么网络抓包工具好用
solarwinds
wireshark
sniffer pro
如何利用网络抓包工具得到的数据怎么解析tcp/ip
Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。
一 准备工作
虚拟机Virtual Box(Telnet服务端)
--安装Windows XP SP3操作系统
------开启了Telnet服务
------添加了一个账户用于远程登录,用户名和密码都是micooz
宿主机Windows 81 Pro(Telnet客户端)
--安装了分析工具Wireshark1112
--安装了Telnet客户端程序
PS:虚拟机网卡选用桥接模式
0条评论