wireshark过滤表达式&wireshark捕获ftp协议分析

Wireshark数据抓包分析之FTP协议 FTP是应用层的协议,它基于传输层,为用户服务,它们负责进行文件的传输。FTP是一个8位的客户端/服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unicode一样。但是,FTP有着极高的延时,这意味着,从开始请求到第一次接收需求数据之间的时间会非常长,并且不时的必需执行一些冗长的登陆进程。FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,并且是命令通向ftp服务器的进口。这里的数据流指的是数据的流动,控制流是控制数据的流动。 阅读详情
AI摘要

本文介绍了Wireshark网络封包分析软件的使用,特别是过滤表达式的应用,如按协议、IP地址、端口等进行过滤。通过实例展示了如何过滤IP地址、协议和端口,并探讨了FTP协议的捕获和分析,包括TCP三次握手、FTP PORT和PASV模式。此外,还讲述了FTP文件传输过程以及TCP四次挥手的断开连接过程。

本文的主题,记录学习Wireshark的一些问题。首先Wireshark是一个网络封包分析软件,其功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料,你可以把它想像成 “电工技师使用电表来量测电流、电压、电阻” 的工作 - 只是将场景移植到网络上,并将电线替换成网络线。

网上下载好wireshark一路默认前进安装后就可以进入wireshark,我们可以看到主要界面大概是这样的。如果底下显示“找不到接口”,你可以尝试管理员打开wireshark解决。
这里写图片描述

选择无线网就可以看到一个吊炸天的界面(当然大家对应自己想捕获的网络进行选择)

这里写图片描述
我们用wireshark的目的是捕获数据包再做后续处理(了解还不深入,更多的作用以后用到了再和大家分享),所以现在出现了这么一大堆结果难道要我们在MMP的九千多行中找结果吗,肯定不是哇,所以进入第一个知识点Wireshark过滤表达式。

一、过滤表达式
这里写图片描述
在顶上有一个搜索栏就是我们写过滤表达式的地方。主要实用有针对性的一些过滤表达式有按协议过滤;按目的端口过滤;按源IP地址过滤;按目的MAC地址过滤;针对长度和内容的过滤等,我们逐个说明,读者可以在自己wireshark进行实验(有点像在写sql的where语句,对的语句搜索栏是绿色的,有错误就是红色的)。

1、针对IP地址的过滤
Cmd输入ipconfig
这里写图片描述
(1)对源地址为10.136.157.37的包的过滤,即抓取源地址满足要求的包。
表达式为:ip.src ==10.136.157.37
(2)对目的地址为10.136.157.37的包的过滤,即抓取目的地址满足要求的包。
表达式为:ip.dst ==10.136.157.37
(3)对源或者目的地址为10.136.157.37的包的过滤,即抓取满足源或者目的地址的ip地址是10.136.157.37的包。
表达式为:ip.addr ==10.136.157.37或者ip.src ==10.136.157.37 or ip.dst ==10.136.157.37
(4)要排除以上的数据包,我们只需要将其用括号囊括,然后使用 “!”或者”not”即可。
表达式为:!(表达式) not(表达式)
这里写图片描述
2、针对协议的过滤
(1)仅仅需要捕获某种协议的数据包,表达式很简单仅仅需要把协议的名字输入即可。
表达式为:http
(2)需要捕获多种协议的数据包,也只需对协议进行逻辑组合即可。
表达式为:http or telnet (多种协议加上逻辑符号的组合即可)
(3)排除某种协议的数据包
表达式为:not arp or !tcp
这里写图片描述

3、针对端口的过滤(视协议而定)
(1)捕获某一端口的数据包
表达式为:tcp.port == 80
(2)捕获多端口的数据包,可以使用and来连接,下面是捕获高端口的表达式
表达式为:udp.port >= 2048
这里写图片描述

4、针对长度和内容的过滤
(1)针对长度的过虑(这里的长度指定的是数据段的长度)
表达式为:udp.length < 30 http.content_length <=20
(2)针对数据包内容的过滤
表达式为:http.request.uri matches “blog” (匹配http请求中含有vipscu字段的请求信息)
这里写图片描述

5、过滤目的Mac地址
在cmd输入ipconfig/all得到mac地址,即物理地址
这里写图片描述

表达式为:eth.addr==DC-85-DE-F2-06-7D
这里写图片描述

6、过滤出MAC地址为本机MAC地址,IP地址为非本机IP地址的数据包。
表达式为:eth.addr== DC-85-DE-F2-06-7D and ip.addr != 10.136.157.37
这里写图片描述

二、利用wireshark捕获ftp的协议交互过程并对此进行分析

接下来我们干点有意思的事情。
首先插个话题,很多人可能想知道如何在本机上搭建ftp服务器。本人win8系统,搭建方法如下:
1.打开“控制面板“,进入“程序”
这里写图片描述

2.找到“启用或关闭windows功能”,点击打开
这里写图片描述

3.在“windows功能”中找到“Internet信息服务”,并选中“FTP服务”、“FTP扩展性”和“IIS管理控制台”前的复选框,点击“确定”
等待成功后,在开始屏幕的搜索中输入“IIS”,然后点击打开“IIS管理器”
这里写图片描述

4.在左栏的“网站”上点击右键,打开“添加FTP站点”,填写相应信息。其中,站点名随意设置,物理路径就是本机电脑上的一个目录,ip地址可设为自己此时的ip地址。其他勾选可以参照自己需求。
这里写图片描述

这里写图片描述

这里写图片描述

5.点击完成就在本机上搭建了一个ftp站点。你可以打开浏览器输入ftp://刚刚输入的ip地址访问。

//——————————————蜜汁分割线——————————————

我们进入正题,打开wireshark,我们以访问ftp.nankai.edu.cn并下载一个文件为例看看在文件传输过程中发生了什么。

首先我们打开wireshark,打开捕获器,输入ip.src ==10.136.157.37 or ip.dst ==10.136.157.37(10.136.157.37改为大家自己的ip,还可以加上“and (tcp or ftp or ftp-data)”)进行监听。
打开cmd,输入ftp ftp.nankai.edu.cn,这时候看wireshark那边可以看到捕获了四个tcp报文和一个ftp报文。这是著名的“三次握手”嘛,不对为啥有四个tcp报文?仔细分析一下,先是客户(我的ip)给服务器(南开的这个ip)发送一个请求报文,之后服务器回复一个ACK报文并为这次连接分配资源,而我们客户端也回复了一个ACK报文并为这次连接分配资源,于是我们收到了服务器发来的ftp报文来欢迎我们“welcome to nankai ftp service”,接到服务器这个报文后客户端又发给服务器一个ACK报文,注意这个报文我们发现和上一个发过去的ACK报文作用应该是一样的,只是明确一下客户端这边建立好连接了,准备发送东西了,所以应该是回应了一下服务器发来的ftp文件而已,还是三次握手。
这里写图片描述
总结一下:
TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接
(1)第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。
(2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV状态。
(3)第三次握手:客户端A收到服务器B的SYN+ACK包,向服务器B发送确认包ACK(ACK=k+1),此包发送完毕,客户端A和服务器B进入ESTABLISHED状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据。
确认号:其数值等于发送方的发送序号 +1(即接收方期望接收的下一个序列号)。

用的一张图感受一下
这里写图片描述

好的,挥别三次握手,再次来到cmd,我们使用匿名访问南开ftp站点,用户输入anonymous,cmd这边告诉我们“230 Login successful”。我们来看看wireshark,发现这次我们客户端在上边已经告诉服务器我们要发东西了的情况下果不其然丢出一个ftp报文,带着我们的用户号一起给到了服务器端,于是对面来了一个ACK报文带着FTP报文传来,也就是我们在cmd看到的那个消息。然后,我们又发了一个ACK报文过去,当然作用和刚刚说的一样,“大哥我们还没死呢,你继续等着我的消息哈”。
这里写图片描述
这时我们点击重新捕获的按钮,接下来好好看看下载文件时传输线上发生了什么。在下载文件前,先做好一些准备工作,首先cmd中输入dir可以看看站点资源,我选择了index.html文件一会下载。然后cmd键入‪lcd C:\Users\as\Desktop\yao把下载地址定在目标位置。接下来我们开始捕获。在cmd键入get index.html,转身看看这边wireshark,霎时间捕获了一堆东西,主要包含的协议有tcp、ftp和ftp-data。我们仔细分析一下。

首先我们发现前三个FTP报文出现两个关键字PORT和PASV,这是什么呢?百度百科一下:
PORT(主动)方式的连接过程是,服务器开放一个端口,通知客户端连接,服务端接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了一个1024+的随机端口,你过来连接我”。于是服务器从20端口向客户端的1024+随机端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用 PASV命令告诉客户端:“我打开了一个1024+的随机端口,你过来连接我”。于是客户端向服务器的1024+端口发送连接请求,建立一条数据链路来传送数据。

所以这一段交互就是我们像南开站点发了一个port请求,服务器接受请求顺便告诉我们“port请求我们收到啦,不过建议你们用pasv比较好啊”,然后我们像服务器发出RETR(retireve)请求下载index.html,于是服务器发来报文,内容就是百科里说的,“我(服务器)开放了一个端口,你可以来连接了”,我们反手就是一个报文回复“连接上啦哈”,于是服务器又发了一个ftp的报文作为回应“我们服务器端用二进制方式来对index.html文件进行数据传输PS.它有41495bytes这么大”,并且发来ACK报文建立连接。这之后,很明显,index.html这个文件被分成了好多个小号文件以ftp-data方式传输过来,过程中还出现了一下ACK的报文我想应该是重新确认一下连接的作用。

这里写图片描述

当所有ftp-data的报文发完以后,也就是文件传输完成时候,服务器发来报文告诉我们“所有文件都传完啦”,并且直接有扔过来一个ACK报文,我们客户端也丢回去一个ACK报文,虚晃一枪“大哥谢谢啦,你等等别走我看看还有没需求要找你”

这里写图片描述

实验做完了当然没需求啦,所以我们cmd键入quit要断开连接,得到回应goodbye。很牛逼,我们看看wireshark那边,先是两个ftp互相告别,接下来就是著名的“四次挥手”。四个TCP一字排开,先是服务器发来了一个FIN,ACK报文告诉对面我不会再读你给我发的消息了,接着我们客户端知道后愤怒地甩回去一个ACK报文告诉服务器“你行,我们热脸不贴冷屁股,既然你不听我也不给你发消息了”。还没完,气还没消我们客户端也丢过去一个FIN,AVK报文,告诉对面礼尚往来,我也不会再鸟你的消息了,作为聊天的最后,服务器来了个最后的了结“断绝一切联系,我再给你发消息我就不是一个好的服务器!”。

嗯,然后嘛他们就失忆了,下一次我们找服务器大哥还是能握握手成为好朋友。

这里写图片描述

再来总结一下:
由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这个原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个 FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。
TCP的连接的拆除需要发送四个包,因此称为四次挥手(four-way handshake)。客户端或服务器均可主动发起挥手动作,在socket编程中,任何一方执行close()操作即可产生挥手操作。
(1)客户端A发送一个FIN,用来关闭客户A到服务器B的数据传送。
(2)服务器B收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
(3)服务器B关闭与客户端A的连接,发送一个FIN给客户端A。
(4)客户端A发回ACK报文确认,并将确认序号设置为收到序号加1。

再用一张图让大家看的更直观
这里写图片描述

这就是这次wireshark抓ftp包的实验全过程和分析内容啦。

That’s all thank you

FTP协议的Wireshark抓包分析 文章目录1.理论介绍2.ftp安装3.windows上连接ftp服务器3.1.通过浏览器访问3.2.通过资源管理器访问3.3.通过命令行进行访问(本次采用方式,使用主动模式连接)4.Wireshark抓包ftp分析4.1Wireshark抓包4.2抓包分析 环境配置: Ubuntu虚拟机(服务器):192.168.153.132 win7实体机(客户端):192.168.153.1 1.理论介绍 FTP是FileTransfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于In 阅读详情

相关推荐

winpcap编程实现自动过滤FTP用户名及密码

Wireshark提供了许多Filter Expression,我们可以很轻松的过滤出FTP的用户名和密码。请看下图 Filter Expression为ftp.request.command=="USER" or ftp.request.command=="PASS"。具体为什么查找FTP连接的建立过程,而且点击Expression之后可以看到wireshark封装了许多过滤规则。Wi

Q1n6 3481

Wireshark抓包ftp过滤后ftp无数据

https://img-blog.csdnimg.cn/55b1237614c2481d8e711915dace8206.png

dw将限制条件全部检测通过后才能提交表单 1853

FTP协议分析实验

FTP协议分析实验   【实验目的】 分析FTP协议的安全性。 【实验步骤】 1. 配置 Serv-U 服务器;建立用户名和密码(例如用户名是USER,密码PASS); (有很多可参考的网络资源。比如 http://www.jb51.net/article/28530.htm) 2. 使用协议分析软件 wireshark (http://www.wireshark.org/downl

awenst的博客 8834

Wireshark TS | FTP 传输失败问题

Wireshark TS | FTP 传输失败问题

7ACE的博客 918

【愚公系列】2023年04月 wireshark系列-数据抓包分析之FTP协议

FTP协议是一种用于文件传输的协议。它允许多位用户在Internet上共享文件和文件夹,并提供连接到远程计算机的高效途径。FTP协议使用TCP协议作为传输协议。

愚公智库 5万+

基于Wireshark实现对FTP的抓包分析

基于Wireshark工具,实现对FTP协议的抓包分析。本文使用的是虚拟机VMware Workstation配置的Windows 10x64。

qq_74013365的博客 3651

Wireshark 基础使用-启用抓包与过滤

wireshark 基本使用之过滤的使用方法;捕获过滤器、显示过滤器的使用与语法。

物联网老王的博客,公众号同名 8318

python-pptx库中文文档及使用样例

个人使用样例及部分翻译自官方文档,并详细介绍chart的使用

4万+

用wireshark对FTP的抓包分析

不知道IP的,可以win+r输入cmd,在命令行输入ipconfig查看IP在物理客户端下打开FileZilla-3.60.1,执行FileZilla.exe,输入以上设置过的主机、用户名和密码后,点击快速连接,端口号要记住是21如果连接后,出现图中的无法连接的问题,可以关闭虚拟机上的防火墙,重新连接。然后既可以在wireshark中看到FTP的报文了。

ZZZCY2003的博客 4769

Gephi实战指南——从数据导入到可视化输出

本文详细介绍了Gephi数据可视化工具的使用方法,从数据导入到可视化输出的全流程实战指南。涵盖Gephi三大工作区功能、数据导入技巧、图形编辑进阶操作以及专业级可视化输出方案,帮助用户高效完成社交网络分析等复杂任务。

weixin_28731223的博客 481

常用的集成TTL门电路

本篇主要分析了常用的逻辑门电路与非门,详细分析了电源原理。值得收藏。

ManagerUser的博客 5089

WireShark捕捉不到FTP数据包

涉及实验:使用网络协议分析器捕捉和分析协议数据包 利用Quick Easy FTP Server工具将该pc机模拟成FTP服务器端,安装与配置比较简单,网上有很多教程可以参考。 配置完成后,点击左上角绿色播放键开启FTP服务,点击后呈灰色。 开启wireshark抓包工具,在过滤器一栏中输入本机的IP地址,格式为ip.addr=…。在测试机上利用cmd命令行登录ftp服务器: ftp 本台主机域名 连接到服务器 输入用户名 输入对应的密码 执行ls命令 get license.txt 下载该目录下的一个文

weixin_44774630的博客 7471

Android汽车服务篇(一) CarService

本文主要说明了CarService这一系统服务的启动流程,以及一些关键成员的创建和初始化流程.同时简单介绍了一下客户端是如何获取和使用CarService对象, 如上文介绍的, CarService对象只是获取各个Manager的媒介,它本身并不承担管理传感器.空调等具体的任务.如果要获取车辆的相关信息,如车速, 车内空调温度,诊断信息, 或对车辆进行相关的控制,如升高和降低空调温度,控制座椅和车窗, 调节音量等,就要通过具体的Manager中的API和对应的服务来实现了.

u012514113的专栏 8148

FTP协议抓包详解

文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,是工作在应用层的协议,使用TCP进行传输。FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信。然而, 用户并不真正登录到自己想要存取的计算机上面而成为完全用户, 可用FTP程序访问远程资源, 实现用户往返传输文件、目录管理以及访问电子邮件等等, 即使双方计算机可能配有不同的操作系统和文件存储方式。

qq_44002418的博客 4234

vue3 - vite报错TypeError: crypto.hash is not a function(vue3+vite启动运行提示错误,项目无法启动且打包报错失败,详细解决排查方案教程)

vue3 vite 报错,vue3+vite启动报错:TypeError: crypto.hash is not a function,创建vue3+vite项目时报错TypeError: crypto.hash is not a function,如何解决这个问题,VUE3+VITE报错crypto.hash,vue3运行报错,vite运行报错,vue3打包报错,vite打包报错,vue3新建项目无法运行,vue3 vite创建项目直接报错了,node版本不兼容,修改了node版本还是不行,依旧报错,一直

✅ 精选推荐文章 1万+

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

(LDA新闻文本主题分析)基于 gensim训练LDA模型,进行新闻文本主题分析 完整代码+数据 可直接运行

机器学习深度学习业余选手 1498

Wireshark网络封包分析工具介绍+过滤器表达式语法

目录: 一、WireShark界面说明: 1、开始捕捉界面: 2、捕捉结果界面: 3、着色规则: 二、捕捉过滤器: 1、捕捉过滤器表达式: 2、捕捉过滤器语法: 三、显示过滤器: 1、基本过滤表达式: 2、复合过滤表达示: 3、常见用显示过滤需求及其对应表达式: WireShark安装,安装非常简单,处理安装路径自定义之外,其他都直接点下一步。 一、WireShark界面......

张维鹏的博客 8200

Qt插件之Qt Designer插件实现

相比于通过控件提升来使用自定义控件,在Qt Designer中直接使用自定义控件更加方便和直观。这里就介绍一下如编写和注册Qt Designer插件。Qt Designer插件本质上来说就是一个动态库,和普通的动态库的区别是插件中导出了Qt Designer能识别的接口。...

yang1fei2的博客 3102

WireShark 抓包及常用协议分析

WireShark是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。

1254

巡检类机器人电池容量计算方法论(原理+算法+真实案例)

摘要:本文系统阐述了巡检机器人电池容量的计算方法,重点解析了;能量平衡;核心原理和三种主流算法。通过光伏电站履带式巡检机器人的真实案例,详细演示了从工况拆解、功耗采集到容量计算的完整流程。文章指出:室内轻载场景可采用静态平均功耗法,户外常规工况推荐动态负载积分法,而复杂环境需采用融合估算算法。特别强调需考虑温度修正(冬季容量衰减20%)、冗余系数(1.2-1.5)和放电深度(磷酸铁锂DoD取80%)等关键参数。

start_up_go的博客 243

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

wireshark抓包分析FTP

简单通过抓把分析下ftp从登陆步骤 首先找到网上一个公用的ftp地址进行抓包测试,这里采用地址(瑞典Umeå universitet于默奥大学公共FTP服务器):ftp://ftp.acc.umu.se/ 打开wireshark,条件过滤:ip.addr==194.71.11.173 首先包28,35,36 tcp三次握手建立连接,说明ftp是建立在tcp协议之上的。 首先客户端主...

u013995395的博客 6881

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Wireshark教程:显示过滤器表达式

Wireshark显示过滤器表达式

nuan444979的博客 5374

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Wireshark分析FTP流量包

可以看出ftp操作 过滤ftp-data,查看tcp流,得到压缩包的数据流 数据显示为原始数据,并保存为.rar文件即可得到压缩包,解压时需要密码 搜索"pass",结果它在tcp流中 对0rvWprrs0NOz9se9wLQ=base64解码,显示结果为乱码(实际上是中文),保存为.txt文件再打开即可得到解压密码:一枝红杏出墙来 或者自己写个python脚本先b...

weixin_30815469的博客 1789

wireshark抓包

3.在windows上打开cmd命令行,连接ftp服务器 (账号 kali 密码kali)3.在搜索框中搜索 ip.addr == [填写邮箱的ip地址]2.打开wireshark,选择wifi 网卡 因为要访问外网。1.打开qq邮箱登录网站,确认qq邮箱的ip地址,方便筛选。1.准备一台虚拟机,用作ftp服务器,我这里使用kali。2.打开kali在上面安装ftp服务,也就是vsftpd。1.选择对应的虚拟网卡,通过Ip地址确认。【例2】嗅探HTTP登录邮箱的过程。【例1】嗅探FTP过程。

webBOFB的博客 76

FTP协议解析之Wireshark报文分析

FTP是客户端-服务器协议,客户端将请求文件,而本地或远程服务器将提供该文件。我们熟知的FTP客户端:WinSCP、WS FTP、FileZilla等都是使用文件传输协议,它是一种标准的Internet 协议。用于通过TCP / IP 连接在Internet上的计算机之间传输文件 。 文件传输协议如何工作? FTP是客户端-服务器协议,它依赖于客户端和服务器之间的两个通信通道。一个用于控制对话的命令通道和一个用于传输文件内容的数据通道。客户端通过请求下载文件来启动与服务器的对话。 客户端可以使用FTP上传、

chen1415886044的博客 1万+
下一篇: 入门masm32编写简单汇编程序并做具体分析
codes_first
博客等级 码龄10年 255粉丝 34原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值