WireShark网络分析~部署方式

2024-08-29 03:44

本文主要是介绍WireShark网络分析~部署方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、《Wireshark网络分析就这么简单》 第一章学习

声明:文章只限于网络学习和实验,请遵守《网络安全法》。

第一章问题一:两台服务器A和B的网络配置如下(见图1),B的子网掩码本应该是255.255.255.0,被不小心配成了255.255.255.224。它们还能正常通信吗?

1.搭建网络拓扑


 

2.配置IP地址、子网掩码和网关;

服务A配置信息如下

服务B配置信息如下:

3.重点:路由配置代码如下:
#进入试图模式
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
#进入主机R1,同时起名为R1
[Huawei]sys R1
#给0/0/0接口设置IP地址和掩码
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.26.2 24
#开启路由0/0/0的接口
[R1-GigabitEthernet0/0/0]undo shutdown
Info: Interface GigabitEthernet0/0/0 is not shutdown.#查看配置的路由接口是否开启
[R1-GigabitEthernet0/0/0]display interface brief
PHY: Physical
*down: administratively down
(l): loopback
(s): spoofing
(b): BFD down
^down: standby
(e): ETHOAM down
(d): Dampening Suppressed
InUti/OutUti: input utility/output utility
Interface                   PHY   Protocol InUti OutUti   inErrors  outErrors
GigabitEthernet0/0/0        up    up          0%     0%          0          0
GigabitEthernet0/0/1        down  down        0%     0%          0          0
GigabitEthernet0/0/2        down  down        0%     0%          0          0
NULL0                       up    up(s)       0%     0%          0          0#查看路由表,发现路由配置没有问题
[R1-GigabitEthernet0/0/0]display ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: PublicDestinations : 7        Routes : 7        Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
127.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0192.168.26.0/24  Direct  0    0           D   192.168.26.2    GigabitEthernet
0/0/0192.168.26.2/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/0192.168.26.255/32  Direct  0    0           D   127.0.0.1       GigabitEthernet
0/0/0
255.255.255.255/32  Direct  0    0           D   127.0.0.1       InLoopBack0
4.查看环境是否配置成功

发现ping可以成功,说明子网掩码修改为255.255.255.254可以通信

二、 《Wireshark网络分析就这么简单》 第一章第一题 抓包学习

1.服务器B 直接ping 服务器A ;采用大鲨鱼抓包

12行分析需如下:

        服务B通过ARP广播查询默认网关192.168.26.2的MAC地址。为什么我ping的是服务器A的IP,B却去查询默认网关的MAC地址呢?这是因为B根据自己的子网掩码,计算出A属于不同子网,跨子网通信需要默认网关的转发。而要和默认网关通信,就需要获得其MAC地址。

第13行,2号包如下:

        默认网关是192.168.26.2向服务B回复了自己的MAC地址。为什么这些MAC地址的开头明明是00:e0:fc 和 54:89:98 ,WireShark上显示出来却都是HuaweiTe_?这是因为MAC地址的前3个字节表示厂商。而00:e0:fc 和 54:89:98都被分配给Huawei公司。这是全球统一的标准,所以Wireshark干脆显示出厂商名了。

第十四行,3号包如下:

 

        B发出ping包,指定Destination IP 为A,即192.168.26.129.但Destination MAC却是默认网关的(00:e0:fc:26:7b:1e)。这表明服务B希望网关把包转发给A。至于默认网关有没有转发,我们目前无从得知,除非在网关上抓个包。

4号包如下:

          服务B收到A发出的APP广播,这个广播查询的是B的MAC地址。这是因为在A看来,B属于相同子网,同子网通信无需默认网关的参与,只要通过ARP获得对方MAC地址就行了。这个包也表明默认网关成功地把B发出的ping请求转发给A了,否则A不会无缘无故尝试和B通信。

第5包如下

       

         服务B回复了A的ARP请求,把自己的MAC地址告诉A。这说明B在执行ARP回复时并不考虑子网。虽然ARP请求来自其他子网的IP,但也照样回复。

第6包如下:

 

 服务B终于收到了服务A的ping回复。从MAC地址(54:89:98:2c:46:6f)可以看出,这个包是从A直接过来的,而不是通过默认网关的转发。

第7、8、9、10包如下:

 

        都是重复的ping请求和ping回复。因为A和B都已经知道对方的联系方式,所以就没必要再发ARP了。

2.重点总结:

        分析完这几个包,答案出来了。原来通信过程是这样的:B先把Ping请求交给默认网关,默认网关再转发给A。而A收到请求后直接把Ping回复给B,形成三角环路。

        1、服务B --ping请求-->  网关;

        2、网关 --ping请求-->  服务A;

        3、服务A--ping请求-->服务A;

3.分享文件

1.大鲨鱼抓服务B ping 服务A.pcapng 日志

2.eNSP实验环境备份

三、Wireshark远程数据包捕获

背景:开启远程桌面,rdp服务,再系统中安装wrieshark进行抓包分析;缺点是在远程登录的过程中,都会产生无关与目的远程连接数据流量。

wireShark远程抓包软件配置:

        服务器安装winpacap中的rpcapd程序;

        客户端安装wireshark连接服务端。

 

四、Wireshark虚拟机数据包捕获

选中指定网卡进行流量嗅探;域网嗅探同一网段的主机;

案例演示:

        使用netdiscover  -r  CIDR 发现局域网主机,同时利用wireshark捕获虚拟机的流量。

(一)打开大鲨鱼,选中虚拟网络8

(二)打开虚拟机Kali系统,查看本地网络

# ifconfig                  
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 10.0.0.129  netmask 255.255.255.0  broadcast 10.0.0.255ether 00:0c:29:78:c5:9d  txqueuelen 1000  (Ethernet)RX packets 6831  bytes 673696 (657.9 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 61612  bytes 4345612 (4.1 MiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.46.129  netmask 255.255.255.0  broadcast 192.168.46.255inet6 fe80::20c:29ff:fe78:c5b1  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:78:c5:b1  txqueuelen 1000  (Ethernet)RX packets 600  bytes 109609 (107.0 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 554  bytes 83036 (81.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0eth2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.56.101  netmask 255.255.255.0  broadcast 192.168.56.255ether 00:0c:29:78:c5:a7  txqueuelen 1000  (Ethernet)RX packets 6395  bytes 511414 (499.4 KiB)RX errors 0  dropped 182  overruns 0  frame 0TX packets 1915  bytes 185256 (180.9 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

(三)选中一个网卡,扫描同一局域网,进行流量嗅探

┌──(root㉿kalich)-[~]
└─# netdiscover -r 10.0.0.1/24

 (四)查看大鲨鱼抓包数据包,同时kali的的扫描结果

 

六、Wireshark ARP欺骗数据包捕获)

案例演示

        在Kali linux中完成ARP欺骗,开启wireshark抓取本地数据包。

虚拟机主机01IP:10.0.0.111

虚拟机主机02IP:10.0.0.128

主机10.0.0.128:执行命令:

arpspoof [-i 指定使用的网卡]  [-t 要欺骗的主机] [-r 要伪装成的主机]
# arpspoof -i eth1 -t 10.0.0.111 -r 10.0.0.1

主机10.0.0.111的目标地址是10.0.0.1,通过ARP欺骗可以捕获10.0.0.111主机的请求数据。

后续更新,ARP欺骗防御措施!
 

这篇关于WireShark网络分析~部署方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1116747

相关文章

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

python中的显式声明类型参数使用方式

《python中的显式声明类型参数使用方式》文章探讨了Python3.10+版本中类型注解的使用,指出FastAPI官方示例强调显式声明参数类型,通过|操作符替代Union/Optional,可提升代... 目录背景python函数显式声明的类型汇总基本类型集合类型Optional and Union(py

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优