20242943 2024-2025-2 《网络攻防实践》实践四报告

news/2025/3/25 21:55:33/文章来源:https://www.cnblogs.com/ssswwwttt/p/18792126

一.实践内容

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

1.ARP缓存欺骗攻击
ARP缓存欺骗攻击利用了ARP协议缺乏身份验证的漏洞。攻击者通过在局域网内发送伪造的ARP响应消息,将自己的MAC地址与网络中其他设备的IP地址绑定,从而使得网络上原本发往该IP地址的数据包错误地发送给攻击者。这样,攻击者可以截获、篡改甚至中断网络通信,同时保持对目标设备的“假冒”身份。该攻击往往需要定期发送伪造消息以维持ARP缓存中的错误映射。

2.ICMP重定向攻击
ICMP重定向攻击利用了设备默认信任ICMP重定向消息的特点。攻击者伪造合法的ICMP重定向信息,诱使目标主机更新其路由表,将本来直达目标的数据流转而通过攻击者控制的网关。这种攻击方式可以实现流量劫持,从而截获、篡改甚至中断通信。其原理在于大多数网络设备未对ICMP重定向消息进行严格验证,攻击者正是利用这一漏洞来操纵路由选择。

3.SYN Flood攻击
SYN Flood攻击利用了TCP三次握手过程中的资源分配机制。攻击者向目标服务器发送大量的TCP SYN请求包,这些请求往往采用伪造的源IP地址。当服务器收到SYN包后,会为每个连接分配资源并发送SYN-ACK回复,等待客户端发送最终的ACK确认。然而,由于攻击者不会发送该ACK,连接一直处于半开状态,占用服务器的连接队列。随着大量半开连接的累积,服务器的资源被耗尽,无法响应正常的连接请求,从而实现拒绝服务攻击。

4.TCP RST攻击
TCP RST攻击利用了TCP协议中的重置(RST)包机制。攻击者向目标主机发送伪造的TCP RST(重置)包,伪装成连接中的一方(如客户端或服务器)。当目标主机收到伪造的RST包时,它会错误地认为该连接已经被中断或重置,因此会立即关闭该连接。通过这种方式,攻击者能够强制终止正常的TCP连接,导致通信中断,从而实现拒绝服务攻击。该攻击的关键在于攻击者能够伪造源IP地址和端口,使得目标主机错误地处理连接。

5.TCP会话劫持攻击
TCP会话劫持攻击是通过窃取或伪造TCP连接中的有效数据包来接管已经建立的会话。攻击者首先需要监听目标网络上的通信流量,获取到TCP连接的序列号和其他关键信息(如会话的ID和身份验证信息)。一旦攻击者掌握了这些信息,就可以伪造并注入合法的数据包,冒充会话的合法一方,继续与对方进行通信。通过这种方式,攻击者可以控制会话,篡改数据或执行未授权的操作,甚至窃取敏感信息。攻击的关键是劫持和利用目标会话中的有效序列号,使攻击者能够插入伪造的包而不被目标主机察觉。

二.实践过程

1.ARP缓存欺骗攻击。

(1)在本次实验中,选择Kali作为攻击机,WinX、SEEDUbuntu9作为靶机。kali的IP地址为192.168.200.2,WinX的IP地址为192.168.200.4,SEEDUbuntu9的IP地址为192.168.200.5,mac为00:0c:29:b8:26:d9。三台主机需要在同一个网段内。
(2)在SEEDUbuntu9上ping一下WinX主机,确认二者是联通的,命令为ping 192.168.200.4。

(3)查看SEEDUbuntu9的arp表,命令为arp -a。可以看到WinX的mac为00:0c:29:4d:08:13。

(4)接下来我们要安装一个网络攻击的工具netwox,注意安装工具的时候需要链接外部网络。命令为sudo apt-get install netwox。

(5)使用netwox进行arp缓存欺骗攻击。命令为sudo netwox 80 -e 00:0c:29:b8:26:d9 -i 192.168.200.4,其中00:0c:29:b8:26:d9为SEEDUbuntu9、即被转发的靶机的mac地址,192.168.200.4为WinX、即进行欺骗攻击的目标主机的IP地址。

(6)再次查看SEEDUbuntu9的arp表,可以看到WinX的mac地址已经发生了改变,和SEEDUbuntu9一样了。

2.ICMP重定向攻击。

(1)在本次实验中,选择Kali作为攻击机,SEEDUbuntu9作为靶机。kali的IP地址为192.168.25.128,SEEDUbuntu9的IP地址为192.168.25.129。两台主机需要在同一个网段内。
(2)查看SEEDUbuntu9的网关地址192.168.25.2,命令为route -n。

(3)在kali上使用netwox对SEEDUbuntu9进行ICMP重定向攻击。命令为sudo netwox 86 -f "host 192.168.25.129" -g 192.168.25.128 -i 192.168.25.2,其中192.168.25.129是靶机的IP地址,192.168.25.128是攻击机的IP地址,192.168.25.2是网关。

(4)在SEEDUbuntu9上ping一下百度网站,可以观察到流量的下一跳变成了攻击机的地址。

3.SYN Flood攻击。

(1)在本次实验中,选择Kali作为攻击机,Metasploitable_ubuntu、SEEDUbuntu9作为靶机。kali的IP地址为192.168.25.128,Metasploitable_ubuntu的IP地址为192.168.25.132,SEEDUbuntu9的IP地址为192.168.25.129。三台主机需要在同一个网段内。
(2)在SEEDUbuntu9主机上对Metasploitable_ubuntu主机进行telnet访问服务,命令为telnet 192.168.25.132。此时登陆Metasploitable_ubuntu主机还是很轻松的。

(3)在kali上使用netwox对Metasploitable_ubuntu进行SYN Flood攻击。命令为sudo netwox 76 -i 192.168.25.132 -p 23。

(4)再次在SEEDUbuntu9主机上对Metasploitable_ubuntu主机进行telnet访问,发现此时已经无法登录Metasploitable_ubuntu主机了。

(5)打开wireshark进行抓包,可以看到kali攻击机向靶机发送了大量无用的syn链接请求包。

4.TCP RST攻击。

(1)在本次实验中攻击机与靶机的情况与3相同。
(2)在SEEDUbuntu9主机上对Metasploitable_ubuntu主机进行telnet访问服务,可以登录。

(3)在kali上使用netwox对Metasploitable_ubuntu进行TCP RST攻击。命令为sudo netwox 78 -i 192.168.25.132。

(4)再次在SEEDUbuntu9主机上对Metasploitable_ubuntu主机进行telnet访问,发现此时链接已经被强制关闭。

5.TCP会话劫持攻击。

(1)在本次实验中攻击机与靶机的情况与3相同。
(2)本次实验需要使用ettercap工具,输入命令ettercap -G,可以打开ettercap的图形化界面。

(3)点击右上角的对号—>Host—>Scan for hosts。

(4)在列表中将SEEDUbuntu9、Metasploitable_ubuntu两个靶机的IP地址分别设置为target1和target2。

(5)点击MITM—>ARP poisoning—>OK。

(6)点击Menu—>View—>Connections。

(7)然后在SEEDUbuntu9主机上对Metasploitable_ubuntu主机进行telnet访问,输入Metasploitable_ubuntu的账号和密码,登录,返回ettercap界面,可以看到在Connections上建立的链接。

(8)打开链接数据,可以看到登录Metasploitable_ubuntu时所输入的账号和密码。

三.实践总结

本次实验实际操作了一些TCP/IP协议的攻击,通过这些攻击我很好地了解TCP/IP协议的工作原理及其潜在的安全漏洞。实验内容包括ARP缓存欺骗攻击、ICMP重定向攻击和SYN Flood攻击等,通过使用netwox等工具,我们对目标网络实施攻击并通过Wireshark等工具观察数据包的变化。导致服务无法访问。ARP欺骗通过伪造ARP消息,实施中间人攻击,截获或篡改目标主机的网络通信;ICMP重定向攻击可以将靶机的流量重定向到指定的目标主机中;在SYN Flood攻击中,我们通过伪造大量TCP请求包,使目标主机的连接数增加;等等等等。

针对这些攻击,我同样搜索了一些防范的方法,包括部署静态ARP表和ARP检测工具避免ARP欺骗,配置防火墙、阻止不必要的ICMP请求来防止ICMP重定向攻击,使用SYN Cookie、TCP连接排队机制等对抗SYN Flood等等。本次实验让我深刻认识到了TCP/IP协议安全性问题的重要性,并且提高了对网络安全的理解。

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

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

相关文章

使用PyCharm连接服务器并配置Python虚拟环境

使用PyCharm连接服务器并配置Python虚拟环境 以StrongSORT作为例子,用PyCharm打开StrongSORT项目1.打开idea设置,找到SSH配置2.添加配置并测试连接3.新建一个刚刚添加的服务器的终端4.新建一个StrongSORT项目文件夹 mkdir StrongSORT5.按照README文档创建虚拟环境 conda crea…

sd9

1、Knowledge Distillation in Iterative Generative Models for Improved Sampling Speed 提高采样速度2种方法:schedular优化、蒸馏 本论文基于DDIM,DDPM训练出来的epsilon theta 可以直接用于DDIM。由于DDIM的降噪过程是确定的,但是step多,由此定义了一个确定的教师分…

【昆工 25 考研调剂捡漏!计算机调剂名额近80+】

📣【昆工 25 考研调剂捡漏!计算机调剂名额近80+】📣 3月25日唐师兄更新 🔥计算机考生看过来!昆明理工大学信息工程与自动化学院调剂通道开启!名额多、方向全、全日制/非全均有岗,速进群锁定上岸席位! 🌟 重点调剂方向 🌟 ✅ 计算机应用技术(16人) ✅ 人工智能…

76. 最小覆盖子串(滑动窗口)

O(1)的字符频度匹配 设计一个 distance数组记录 s字串和 t的匹配程度。也就是每个字符频度的差 s[c] - t[c] = distance[c] t初始化distance中个字符的频度,如果s[c] 统计到一个,就在distance--,这样,当distance为0时,就代表这个字符完全匹配。 此外再创建一个count记录有…

在HTML页面通过JavaScript访问Ollama本地部署的DeepSeek

在HTML页面通过JavaScript访问Ollama本地部署的DeepSeek,顺便解决了 HTML 页面调用 Ollama 服务的跨域问题前排提醒: 1. 操作系统为Windows11 2. 如果你还没有使用Ollama本地部署DeepSeek,可以参考Windows系统上使用Ollama本地部署DeepSeek 3. 顺便解决了 HTML 页面调用 Oll…

【3】进制转换学习总结(c++)

1.进制的基础知识 一:进制是进位计数制,是人为定义的带进位的计数方法。对于任何一种进制,例如:X进制,就表示每一位置上的数运算时都是逢X进一位。比如十进制就是逢十进一,二进制就是逢二进一。 二:生活中常见的进制有:十进制,十二进制,二十四进制,六十进制等。 2.十…

vue+leaflet示例:地图截图批量导出(附源码下载)

demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。 运行工具:vscode或者其他工具。 配置方式:下载demo源码,vscode打开,然后顺序执行以下命令: (1)下载demo环境依赖包命令:npm i (2)启动demo命令:npm run dev (3)打包demo命令: n…

智能Agent如何改造传统工作流:从搜索到全能助手

智能Agent如何改造传统工作流:从搜索到全能助手 引言:当AI遇上工作流 还记得我们以前搜索信息的方式吗?输入关键词,浏览大量结果,筛选有用内容,再整合成我们需要的答案。这个过程不仅耗时,还常常让人感到疲惫。 如今,智能Agent的出现正在彻底改变这一切。想象一下,你只…

vue+leaflet示例:拓展wms以及wmts地图范围裁剪(附源码下载)

demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。 运行工具:vscode或者其他工具。 配置方式:下载demo源码,vscode打开,然后顺序执行以下命令: (1)下载demo环境依赖包命令:npm i (2)启动demo命令:npm run dev (3)打包demo命令: n…

vue+leaflet示例:快速渲染聚合矢量瓦片(附源码下载)

demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。 运行工具:vscode或者其他工具。 配置方式:下载demo源码,vscode打开,然后顺序执行以下命令: (1)下载demo环境依赖包命令:npm i (2)启动demo命令:npm run dev (3)打包demo命令: n…

vue+leaflet示例:热力图(附源码下载)

demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。 运行工具:vscode或者其他工具。 配置方式:下载demo源码,vscode打开,然后顺序执行以下命令: (1)下载demo环境依赖包命令:npm i (2)启动demo命令:npm run dev (3)打包demo命令: n…

vue+leaflet示例:地图全图以及框选截图导出功能(附源码下载)

demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。 运行工具:vscode或者其他工具。 配置方式:下载demo源码,vscode打开,然后顺序执行以下命令: (1)下载demo环境依赖包命令:npm i (2)启动demo命令:npm run dev (3)打包demo命令: n…