目录
[1、WireShack 简介](#1、WireShack 简介)
[2、WireShark 基本使用方法](#2、WireShark 基本使用方法)
[3、 WireShack 抓包分析](#3、 WireShack 抓包分析)
[3.1 Hypertext Transfer Protocol (应用层)](#3.1 Hypertext Transfer Protocol (应用层))
[3.2 Transmission Control Protocol (传输层)](#3.2 Transmission Control Protocol (传输层))
[3.3 Internet Protocol Version 4(网络层)](#3.3 Internet Protocol Version 4(网络层))
[3.4 Ethernet Il (链路层): 数据链路层以太网头部信息](#3.4 Ethernet Il (链路层): 数据链路层以太网头部信息)
[3.5 Frame(物理层)](#3.5 Frame(物理层))
1、WireShack****简介
Wireshark 是一个免费开源的网络数据包分析软件。 网络数据包分析软 件的功能是截取互联网传输的网络数据包,并尽可能显示出最为详细的网络数据包数据 。
2、WireShark 基本使用方法
2.1 启动wireshark
在之前安装的kali下,已经预装了wireshark,点击启动
2.2 选择监听网卡,双击即可
2.3 混杂模式下对网络造成的影响较大,所以选择关闭混杂模式(暂停捕获后,点击捕获选项卡,点击)
混杂模式表示接收所有经过该网卡的数据包,即使不是发给该设备的数据包也被抓取
2.4 保存文件
注意: 保存文件格式选 pcap ,这个格式基本所有的抓包软件都能打开,兼容性最好;
2.5 WireShack 筛选器
例如:筛选抓取的http包,输入http,回车即可,如果要清除筛选条件,点击筛选框右侧的X号
筛选TCP、UDP、icmp、dns方法一样
根据ip地址筛选
筛选源地址
ip.src host == 192.168.3.67 or ip.src host == 192.168.1.1
ip.src host == 192.168.3.67 表示源 IP 地址
ip.dst host == 192.168.3.28 表示目的地址
注:两个条件用 or 进行了连接,是或的意思;当然我们也可以使用 and
or 的意思是两个条件满足一个就行
and 的意思是两个条件必须同时满足
2.6 从上几个图中可以看到,时间列显示的时间看不懂,可以更改下时间格式
3、 WireShack****抓包分析
在目标资产主动信息收集篇章中,介绍了TCP/IP五层模型,通过wireshark抓包分析,可以直观的看到五层模型的工作过程。
先简单回顾一下五层模型:
物理层----数据链路层----网络层---传输层----应用层
(1)Frame(物理层): 物理层的数据顿概况
(2) Ethernet Il (链路层): 数据链路层以太网头部信息
(3)Internet Protocol Version 4(网络层): 互联网层 IP 包头部信息
(4)Transmission Control Protocol (传输层): 传输层 T 的数据段头部信息,此处是 TCP
(5)Hypertext Transfer Protocol (应用层):应用层的信息,此处是 HTTP 协议
3.1 Hypertext Transfer Protocol (应用层)
http (超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议, 访问物理机 http://192.168.3.38/dvwa 时抓获的包直接过滤出 http 协议的包,如果想看到在访问之前的三手握手包,可以过滤 tcp,因为 http连接在访问前需要建立 TCP 会话。
请求包:192.168.3.67请求192.168.3.38
GET/HTTP/1.1#头部相关信息,HTTP 协议 11 版本
Request Method: GET#请求方法为头部信息
Request URL: /#表示请求资源为网站的根目录(可以理解为首页)
Request Version: HTTP/1.1 #表示 HTTP 协议 11 版本
Host:192.168.3.38#表示请求主机名称
User-Agent: Mozilla #表示用户使用的访问工具及版本
响应包:192.168.3.38 响应 192.168.3.67
HTTP/1.1 200 0K # 表示 HTTP 协议 1.1 版本,状态 200 ,表示 OK
Status Code: 200 # 响应的状态码, 200 表示正常
Response Phrase: OK # 表示响应短语 OK
Server: apache/2.4.39 # 服务器程序及版本信息
Content-Type: text/html # 内容类型
3.2 Transmission Control Protocol (传输层)
请求包:192.168.3.67请求192.168.3.38
source port :源端口,即本机端口,这个端口是随机分配的。
Destination port:目的端口,这个端口是固定的,80是http协议,443是https协议
响应包:192.168.3.38 响应 192.168.3.67
从响应包可以发现,源端口和目的端口正好换了位置,响应时候,会根据发起方随机分配的端口进行交互。
3.3 Internet Protocol Version 4(网络层)
先看请求包的信息
再看响应包
从请求包和响应包分析,重点先关注源地址和目的地址。
3.4 Ethernet Il (链路层): 数据链路层以太网头部信息
3.5 Frame(物理层)
物理层是 OSI 的第一层,它虽然处于最底层,却是整个开放系统的基础。物理层为设 备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。简单记忆,那就是" 信号和介质 ",但是重点在信号,物理设备其实不在TCP/IP协议范围内,但物理层理解为包括物理设备,有助于更好的理解物理层的作用,因为信号传输需要介质,记住了物理设备,那也就记住了了物理设备的作用是传输信号的。
总结:以上通过wireshark抓包简单梳理了下TCP/IP五层协议的工作流程,TCP/IP协议是非常复杂的,通过本篇文章,旨在理解每一层的主要工作内容(从渗透角度),应用层建立连接,传输层是添加端口,网络层是增加IP地址,链路层是添加MAC地址,物理层是信号传输。