当前位置: 首页 > news >正文

攻击实验(ARP欺骗、MAC洪范、TCP SYN Flood攻击、DHCP欺骗、DHCP饿死)

实验一 ARP欺骗

一、拓扑

二、实验准备、

1.设置终端

漏洞靶机集合

选择需要的数量和镜像

打开设备上的驱动精灵安装网卡

安装成功后查看IP地址、网关信息等。

三、实验步骤

1.实验原理

中间人(攻击者)在终端与网关之间持续发送伪造的 ARP 应答包双向欺骗终端和网关---让终端误认为攻击者是网关,让网关误认为攻击者是终端,从而使两者的通信数据均经攻击者转发(即 “中间人” 角色)。

❓如果我只欺骗网关会发生什么

假设只欺骗网关(告诉网关:“我是受害者,请把数据发给我!”):

  1. 上行流量(受害者 → 网关)

    1. 受害者正常发送数据到网关 ✅

    2. 攻击者无法截获(流量不经过攻击者) ❌

  2. 下行流量(网关 → 受害者)

    1. 网关将本应发给受害者的数据发给攻击者 ✅

    2. 但攻击者无法将数据送回受害者(受害者不认识攻击者的MAC,所以受害者不会接收攻击者发送的数据) ❌

  3. 结果
  • 受害者收不到网关返回的数据(如网页响应)→ 网络中断!
  • 攻击者只能收到单向残破数据(如下行流量),无法完成监听或篡改。

❓如果我只欺骗受害者会发生什么

攻击流程拆解

假设攻击者(192.168.1.100)只向受害者(192.168.1.10)发送欺骗报文:

1. 受害者发出的流量(上行)

  • 受害者访问百度:
    192.168.1.10 → 攻击者MAC(受害者以为攻击者是网关) → 数据包到达攻击者 ✅
    结果:攻击者可监听/篡改受害者发出的所有请求(如 HTTP 登录密码)。

2. 网关返回的流量(下行)

  • 网关处理完请求后,需将百度响应返回给 192.168.1.10
    192.168.1.1 → 受害者真实MAC,网关未被欺骗,直接发给受害者 → 数据包直达受害者 ✅
    结果:攻击者完全收不到下行流量 ❌

结果:网络为何中断

关键问题:TCP 连接断裂

当受害者发出 SYN 请求(如访问网站):

  1. SYN 包被攻击者截获 → 攻击者可选择丢弃或转发给网关

  2. 网关收到 SYN 后回复 SYN-ACK → 直接发给受害者(未经过攻击者)。

  3. 受害者收到 SYN-ACK 后回复 ACK → 再次发给攻击者(因受害者以为攻击者是网关)。

致命矛盾出现

  • 网关在等待 ACK 确认包(受害者已发出,但被攻击者截获)

  • 受害者发出的 ACK 被攻击者拿走 → 网关永远收不到 ACK

  • TCP 三次握手失败 → 连接无法建立 → 受害者无法加载任何网页!


❓为什么网关能收到受害者数据包?

受害者发送数据包中信息:

攻击方收到后动作(关键):

  • 查询 自己的路由表,将真实网关mac地址重新封装!!

2.使用Ettercap工具进行攻击

使用命令ettercap -G打开Ettercap

在Ettercap上绑定一个网口

选择一个网口

 选择完成后界面发生改变

发现局域网中的主机

扫描结果

添加欺骗目标

为了保证被欺骗的主机可以上网执行这一步

kali总是发送这样的应答型无故ARP。

欺骗成功

实验二、MAC洪范攻击

一、实验过程

1.MAC攻击的原理

泛洪攻击即是攻击者利用这种学习机制不断发送不同的MAC地址给交换机,填满整个 MAC表,此时交换机只能进行数据广播,攻击者凭此获得信息。

2.在kali终端上使用命令攻击

macof

3.攻击后交换机

实验三 TCP SYN Flood攻击

1.用hping3攻击

2.防御:

实验四 DNS欺骗 

1.原理

通过篡改 DNS 解析过程中的数据,将用户原本请求的域名指向错误的 IP 地址,从而引导用户访问恶意网站或拦截其网络流量。

2.具体操作步骤

修改/etc /ettercap/etter.dns的配置文件

添加域名与ip映射,表示主机访问任意域名都转化成10.0.0.135

开启apache服务,并测试,进入cd /etc/init.d,开启服务./apache2 start

攻击者的网页

进行ARP欺骗ettercap -G,设置欺骗的对象

双击dns_spoof,打开插件

在被欺骗主机上ping baidu.com发现是攻击者ip

访问网页发现是攻击者设置的网页

实验五 DHCP饿死

一、实验原理

由于DHCP没有什么验证机制,任何一发送过来的DHCP请求都可以请求到地址。那么就可以伪造大量的DHCP Discover报文。使得DHCP服务器的地址耗尽,不能正常工作。

二、实验过程

步骤一:打开工具yersinia -G

步骤二:使用dhcp模块,发起dhco discover报文。

http://www.dtcms.com/a/324307.html

相关文章:

  • Spring Boot与WebSocket构建物联网实时通信系统
  • LeetCode 子集
  • Java基础-Map接口
  • 香橙派 RK3588 部署 DeepSeek
  • SQL约束:数据完整性的守护者
  • Linux中rsync数据镜像工具的解析与应用实战
  • 如何在 Ubuntu 24.04 LTS Linux 上安装 MySQL 服务器
  • JavaScript防抖与节流:拯救你的网页卡顿危机!
  • GitHub 趋势日报 (2025年08月09日)
  • 通过Certbot自动申请更新HTTPS网站的SSL证书
  • vue中使用h5plus
  • 一些js数组去重的实现算法
  • 黑马SpringBoot+Elasticsearch作业2实战:商品搜索与竞价排名功能实现
  • 使用正则表达式检测Base64字符串并提取图片类型及正文的JavaScript函数,代码精简且高效
  • 250810-OpenWebUI集成Dify应用
  • 《设计模式》策略模式
  • STM32的计数模式和pwm模式
  • 亚麻云之数据安家——RDS数据库服务入门
  • sqli-labs-master/Less-62~Less-65
  • 01.【面试题】在SpringBoot中如何实现多数据源配置
  • (Python)爬虫进阶(Python爬虫教程)(CSS选择器)
  • 2025年全国青少年信息素养大赛Scratch编程践挑战赛-小低组-初赛-模拟题
  • Linux系统编程Day11 -- 进程状态的优先级和特性
  • 移动端音频处理实践:59MB变声应用的技术实现分析
  • 机器学习-增加样本、精确率与召回率
  • LeetCode 869.重新排序得到 2 的幂:哈希表+排序(一次初始化)
  • Android 16 KB页面大小适配的权威技术方案总结
  • Android快速视频解码抽帧FFmpegMediaMetadataRetriever,Kotlin(2)
  • Android 开发问题:Invalid id; ID definitions must be of the form @+id/ name
  • 010601抓包工具及证书安装-基础入门-网络安全