20232831 2023-2024-2 《网络攻防实践》第4次作业


目录

  • 20232831 2023-2024-2 《网络攻防实践》第4次作业
    • 1.实验内容
    • 2.实验过程
      • (1)ARP缓存欺骗攻击
      • (2)ICMP重定向攻击
      • (3)SYN Flood攻击
      • (4)TCP RST攻击
      • (5)TCP会话劫持攻击
    • 3.学习中遇到的问题及解决
    • 4.学习感悟、思考等
    • 参考资料


20232831 2023-2024-2 《网络攻防实践》第4次作业

1.实验内容

在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击ICMP重定向攻击SYN Flood攻击TCP RST攻击TCP会话劫持攻击

ARP缓存欺骗攻击:ARP(地址解析协议)缓存欺骗攻击是一种网络攻击,攻击者向目标主机发送虚假的ARP响应,将目标主机的IP地址映射到攻击者控制的MAC地址上。这使得攻击者能够中间窃取、篡改或监视目标主机与其他网络设备之间的通信。
ICMP重定向攻击:ICMP重定向攻击是一种利用ICMP(Internet控制消息协议)消息欺骗目标主机的攻击。攻击者发送伪装的ICMP重定向消息给目标主机,指示目标主机使用不安全的路由器或网关进行通信。这可能导致流量被重定向到攻击者控制的设备,从而实现中间人攻击。
SYN Flood攻击:SYN Flood攻击是一种拒绝服务(DoS)攻击,旨在消耗目标服务器的资源,使其无法响应合法用户的请求。攻击者向目标服务器发送大量伪造的TCP连接请求(SYN),但不完成TCP三次握手过程,从而导致服务器在维护未完成的连接队列时耗尽资源,无法处理新的连接请求。
TCP RST攻击:TCP RST攻击是一种利用TCP协议中的复位(RST)标志发送虚假TCP RST分节的攻击。攻击者发送虚假的TCP RST分节给目标主机,强制终止已建立的TCP连接。这种攻击可能导致服务中断或数据损坏。
TCP会话劫持攻击:TCP会话劫持攻击是一种攻击者劫持已建立的TCP会话的攻击。攻击者在TCP握手阶段或后续通信中窃取会话标识符,并伪装成合法用户,以获取对目标系统的访问权限。一旦劫持成功,攻击者可以执行恶意操作,例如窃取敏感信息或执行未经授权的操作。

2.实验过程

(1)ARP缓存欺骗攻击

首先,对实验环境进行配置。
直接打开三台虚拟机,查询它们的IP地址和Mac地址。由于在实验一中已经配置过,因此直接展示如下:

虚拟机名称IP地址MAC地址
Kali-Linux攻击机(Vmnet8网段192.168.200.400:0c:29:38:6b:f1
Metasploitable-Linux靶机 (Vmnet1网段192.168.200.12300:0c:29:3d:fb:01
Win2kServer靶机(Vmnet1网段192.168.200.12400:0C:29:36:cf:15

Kali-Linux攻击机:
在这里插入图片描述
Metasploitable-Linux靶机
在这里插入图片描述
Win2kServer靶机
在这里插入图片描述
互ping发现,靶机之间可以互相ping通,但是攻击机与靶机无法互ping,这是因为攻击机与靶机不在同一网段,攻击机在Vmnet8网段,而靶机位于Vmnet1网段:
在这里插入图片描述
在这里插入图片描述

但是查看实验一发现,即使不在同一网段,互ping也能实现。当时配置结束时是可以实现ping通的,做下的记录如下:
在这里插入图片描述
当时的实验环境是打开了蜜网网关,猜测应该是蜜网网关的开启,能够链接起不同的网段,因此再次打开蜜网网关后,发现可以实现互ping。
在这里插入图片描述
因此继续进行以下实验:
首先使用Metasploitable-Linux靶机 ping Win2kServer靶机:
在这里插入图片描述
在Metasploitable-Linux靶机中输入arp -a查看当前的ARP表,发现有网关(因为开了蜜网网关,如果关闭蜜网网关,则没有这条记录)和Win2kServer靶机的IP记录和MAC地址记录

且其中Win2kServer靶机的记录为:192.168.200.124/00:0C:29:36:cf:15,与查看的IP和MAC相同
在这里插入图片描述
使用以下命令进行工具netwox的安装

sudo apt-get install netwox

在这里插入图片描述
使用该工具进行以下代码的操作,实现ARP缓存欺骗攻击,即使用netwox伪造并发一个mac地址(虚假mac地址)为00:0C:29:36:cf:16且ip地址为192.168.200.124的数据包,目的是让Metasploitable-Linux靶机误以为虚假mac地址就是Win2kServer靶机的mac地址,但实际上这个虚构地址并不是:

sudo netwox 80 -e 00:0C:29:36:cf:16 192.168.200.124

在这里插入图片描述
可以看出已经发生改变,最后的15变成了16,说明欺骗成功。
在这里插入图片描述
且Win2kServer靶机也检测到了异常,接受到了伪造的信息。
在这里插入图片描述
攻击成功后会发现,Metasploitable-Linux靶机无法ping通Win2kServer靶机,欺骗成功:

(2)ICMP重定向攻击

首先,对实验环境进行展示。

虚拟机名称IP地址
Kali-Linux攻击机(Vmnet8网段192.168.200.4
SeedUbuntu靶机 (Vmnet8网段192.168.200.3

首先在SEEDUbuntu上ping www.baidu.com检查连通性,并查看路由信息route -n:

在这里插入图片描述
可以发现下一个跳的第一个ip地址是网关192.168.200.1

在Kali上使用==netwox ==伪造重定向数据包,即将局域网中来源于IP为192.168.200.3的数据包抓取,并以网关192.168.200.1的名义向数据包的源地址发送一个ICMP重定向报文,使得Kali攻击机的IP地址192.168.200.4作为默认路由,使用的代码如下:

sudo netwox 86 -f "host 192.168.200.3" -g 192.168.200.4 -i 192.168.200.1

在这里插入图片描述
在SEEDUbuntu上再次ping www.baidu.com,发现已经重定向到192.168.200.4上,则ICMP重定向攻击成功,路由的下一跳地址被修改为了192.168.200.4。
在这里插入图片描述

(3)SYN Flood攻击

虚拟机名称IP地址
Kali-Linux攻击机(Vmnet8网段192.168.200.4
SeedUbuntu靶机 (Vmnet8网段192.168.200.3
Metasploitable-Linux靶机 (Vmnet1网段192.168.200.123

首先,使用SeedUbuntu,通过telnet命令远程连接Metasploitable-Linux靶机,检测连通性:

telnet 192.168.200.123

在这里插入图片描述
在这里插入图片描述

可以看到连接成功!

随后,使用Kali攻击机对Metasploitable-Linux靶机的telnet端口(23号端口)进行SYN Flood攻击,即拒绝服务攻击,消耗靶机的资源,使得服务崩溃,导致SeedUbuntu无法使用telnet远程连接Metasploitable-Linux:

sudo netwox 76 -i 192.168.200.123 -p 23

在这里插入图片描述
打开kali的wireshark 可以看见,Kali攻击机正在向Metasploitable-Linux靶机(192.168.200.123)的23号端口疯狂发送SYN请求
在这里插入图片描述
即实现SYN Flood泛洪攻击!

(4)TCP RST攻击

虚拟机名称IP地址
Kali-Linux攻击机(Vmnet8网段192.168.200.4
SeedUbuntu靶机 (Vmnet8网段192.168.200.3
Metasploitable-Linux靶机 (Vmnet1网段192.168.200.123

首先,使用SeedUbuntu,通过telnet命令远程连接Metasploitable-Linux靶机,检测连通性:
在这里插入图片描述

在Kali攻击机中输入以下命令,实现SYN Rst攻击:

sudo netwox 78 -i 192.168.200.123

在这里插入图片描述
开始攻击后,稍等十秒左右,就会发现telnet连接被外界打断:
在这里插入图片描述
再次通过telnet连接,无法连接上,说明TCP RST攻击成功!
在这里插入图片描述

(5)TCP会话劫持攻击

虚拟机名称IP地址
Kali-Linux攻击机(Vmnet8网段192.168.200.4
SeedUbuntu靶机 (Vmnet8网段192.168.200.3
Metasploitable-Linux靶机 (Vmnet1网段192.168.200.123

这次的攻击更换了ettercap工具,首先,在Kali攻击机上使用以下命令进行工具的打开:

sudo ettercap -G

在这里插入图片描述
点击右上角的按钮,进行工具的开始使用:
在右上角依次点击Ettercap Menu、Hosts、Host List,将SEEDUbuntu和MetaSploitable的IP设置为攻击目标。然而打开后发现并没有这两个靶机的IP,甚至一个IP都没有。
在这里插入图片描述
因此,点击Scan for hosts,进行网段内主机扫描后,再查看Host List,即可发现以下IP:

在这里插入图片描述

192.168.200.1(网关
192.168.200.3(SeedUbuntu靶机
192.168.200.8(蜜网IP
192.168.200.120(此为结束ip地址,暂未知为何存在,也许是网关或者用于留存下来的IP
192.168.200.123(Metasploitable-Linux靶机
在这里插入图片描述

因此,在Host List中将SEEDUbuntu和MetaSploitable的IP分别设置为攻击目标1和攻击目标2:
在这里插入图片描述
随后点击ARP Poisoning进行ARP欺骗
在这里插入图片描述
在这里插入图片描述
点击Connections查看连接,进行SEEDUbuntu和MetaSploitable之间的连接查看
在这里插入图片描述
此时还没有使用SEEDUbuntu进行MetaSploitable的telnet登录,因此列表为空:
在这里插入图片描述
接着,使用SeedUbuntu,通过telnet命令远程连接Metasploitable-Linux靶机:
可以看到Connections连接列表中出现了相关信息,即192.168.200.3通过23号端口对192.168.200.123进行了连接:
在这里插入图片描述
点击这条信息,可以得到更详细的内容:
在这里插入图片描述
甚至能查看输入的账号密码,以及靶机的交互界面:
在这里插入图片描述
攻击成功!
试验结束!

3.学习中遇到的问题及解决

  • 问题:一开始,攻击机和靶机不在同一网段,无法连通,这导致后续实验均不可成功实现!
  • 问题解决方案 :通过排查以及参考自己的实验一(第一次作业),发现即使不在同一网段(Vmnet1、Vmnet8),也可以进行连通互ping,只需要打开蜜网网关即可,这是实验一中的内容得到的经验。(当然也可以简单粗暴,直接将所有实验的攻击机和靶机均放入同一网段,例如都在Vmnet1或者Vmnet8

4.学习感悟、思考等

通过本次实验,我学习了TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击这五个实验。实验过程中,我了解了攻击原理,同时排查了网段不同导致出现的问题,对网络攻防以及网络连接的理解进一步加深。

参考资料

  • 20232831 2023-2024-2 《网络攻防实践》第1次作业(未传上网)
  • ChatGPT

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/779301.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

R语言使用dietaryindex包计算NHANES数据多种营养指数(2)

健康饮食指数 (HEI) 是评估一组食物是否符合美国人膳食指南 (DGA) 的指标。Dietindex包提供用户友好的简化方法,将饮食摄入数据标准化为基于指数的饮食模式,从而能够评估流行病学和临床研究中对这些模式的遵守情况,从而促进精准营养。 该软件…

C/C++中重载函数取地址的方法

目录 1.现象 2.指定参数取函数地址 3.利用Qt的类QOverload 1.现象 函数重载在C/C编码中是非常常见的,但是我们在std::bind或std::function绑定函数地址的时候,直接取地址,程序编译就会报错,示例如下: class CFunc1…

【C++】map set

文章目录 1. 关联式容器2. 键值对3. 树形结构的关联式容器3.1 set3.1.1 set 的介绍3.1.2 set 的使用 3.2 map3.2.1 map 的介绍3.2.2 map 的使用 3.3 multiset3.3.1 multuset 的介绍3.3.2 multiset 的使用 3.4 multimap3.4.1 multimap 的介绍3.4.2 multimap 的使用 1. 关联式容器…

Docker安装xxl-job并整合到SpringBoot项目

1. 创建数据库 执行如下SQL语句创建相关表 CREATE database if NOT EXISTS xxl_job default character set utf8mb4 collate utf8mb4_general_ci; use xxl_job;SET NAMES utf8mb4; CREATE TABLE xxl_job_info (id int(11) NOT NULL AUTO_INCREMENT,job_group int(11) NOT NUL…

PyCharm代码一键格式化

前言 每次写完代码,就看见很多警告,乍一看还以为我又写了什么bug,原来是提示,啊放心了。可是我可见不得这些东西,因为代码里都是红红的下划线,好像在圈圈点点。。。 代码格式化 于是利用PyCharm里的快捷…

【Go】六、函数

文章目录 1、函数的定义2、内存分析3、注意点4、函数数据类型5、自定义数据类型(起别名)6、支持对返回值命名 1、函数的定义 语法: func 函数名(形参列表)(返回值类型列表){执行语句..return 返回值列…

mac系统使用经验

mac安装brew brew是macos下的一个包管理工具,类似与centos的yum,ubuntu的apt-get等。 自动脚本(全部国内地址)(在Mac os终端中复制粘贴回车下面这句话) /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/H…

PHP实现单列内容快速查重与去重

应用场景:excel一列内容比如身份证号&#xff0c;可能有重复的&#xff0c; 则用此工具快速查询那些重复及显示去重后内容。 使用&#xff1a;粘贴一列数据&#xff0c;然后提交发送。 <?php $tm "单列查重去重(粘贴Excel中1列内容查重)!";function tipx($str…

无人驾驶矿卡整体解决方案(5g物联网通信方案)

​无人驾驶矿卡是智能矿山的重要组成部分,通过远程操控替代人工驾驶,可以显著提高采矿效率和作业安全性。但要实现无人驾驶矿卡,需要依赖于可靠高效的通信网络,来传输现场视频、控制指令和运行数据。以下是某大型煤矿在部署无人驾驶矿卡时,所采用的星创易联物联网整体解决方案。…

基于springboot实现校园周边美食探索及分享平台系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现园周边美食探索及分享平台系统演示 摘要 美食一直是与人们日常生活息息相关的产业。传统的电话订餐或者到店消费已经不能适应市场发展的需求。随着网络的迅速崛起&#xff0c;互联网日益成为提供信息的最佳俱渠道和逐步走向传统的流通领域&#xff0c;传统的…

YOLOV8逐步分解(2)_DetectionTrainer类初始化过程

接上篇文章yolov8逐步分解(1)--默认参数&超参配置文件加载继续讲解。 1. 默认配置文件加载完成后&#xff0c;创建对象trainer时&#xff0c;需要从默认配置中获取类DetectionTrainer初始化所需的参数args&#xff0c;如下所示 def train(cfgDEFAULT_CFG, use_pythonFalse…

python的神奇bug2

今天测试出一个很诡异的bug&#xff0c; 这个错误还真的很难发现 测试1 a [1,10,100] for i in a:print(i)if(i10):a[20,30,-1]一般来说我们在进行迭代时&#xff0c;a这个值时不能改动的&#xff0c;但是现在的问题时如果我不小心给改动了呢&#xff0c;结果如下 也就是说…

基于JSPM的美食推荐管理系统

背景 互联网的迅猛扩张彻底转变了全球各类组织的运营模式。自20世纪90年代起&#xff0c;中国各级政府和企事业单位便开始探索运用网络系统来处理管理事务。然而&#xff0c;早期的网络覆盖不广、用户接受度不高、相关网络法规不健全以及技术发展不成熟等因素&#xff0c;都曾…

达梦数据库新手上路排坑

数据库安装 这个没啥说的&#xff0c;按照官网教程操作&#xff0c;我使用的是docker进行安装 下载文件docker文件 官方下载地址- load -i dm8****.tar (注意修改为当前下载的文件)达梦官方文档注意修改为当前版本 docker run -d -p 5236:5236 --name dm8 --privilegedtrue -…

HarmonyOS 应用开发之PageAbility组件

PageAbility组件概述 PageAbility是包含UI、提供展示UI能力的应用组件&#xff0c;主要用于与用户交互。 开发者通过DevEco Studio开发平台创建PageAbility时&#xff0c;DevEco Studio会自动创建相关模板代码。PageAbility相关能力通过单独的featureAbility实现&#xff0c;…

STL —— vector(1)

博主首页&#xff1a; 有趣的中国人 专栏首页&#xff1a; C专栏 本篇文章主要讲解vector使用的相关内容 1. vector简介 vector 是 C 标准库中的一个容器类模板&#xff0c;它提供了动态数组的功能&#xff0c;可以方便地管理和操作元素的集合。下面是关于 vector 的一些基本信…

基于单片机智能家居控制系统设计

**单片机设计介绍&#xff0c;基于单片机智能家居控制系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的智能家居控制系统设计旨在实现家居设备的自动化控制和智能化管理&#xff0c;提高家庭生活的便利性和舒…

大数据做「AI大模型」数据清洗调优基础篇

关于本文 近期一直在协助做AI大模型数据清洗调优的工作&#xff0c;主要就是使用大数据计算引擎Spark做一些原始数据的清洗工作&#xff0c;整体数据量大约6PB-8PB之间&#xff0c;那么对于整个大数据量的处理性能将是一个重大的挑战&#xff0c;关于具体的调优参数配置项暂时不…

【论文阅读+复现】AniPortrait: Audio-Driven Synthesis of Photorealistic Portrait Animation

AniPortrait&#xff1a;音频驱动的逼真肖像动画合成。 code&#xff1a;Zejun-Yang/AniPortrait: AniPortrait: Audio-Driven Synthesis of Photorealistic Portrait Animation (github.com) paper&#xff1a;[2403.17694] AniPortrait: Audio-Driven Synthesis of Photoreal…

Soot入门学习笔记

Soot 适合参考的文档和教程如下&#xff1a; 北京大学软件分析技术 南京大学软件分析 Tutorials for soot McGill University 198:515 (vt.edu) 比较好的笔记资料&#xff1a; 南京大学《软件分析》课程笔记 比较好的入门作业或者案例&#xff1a; CSCE710 Assignmen…