arp欺骗及其实验

        ARP欺骗(ARP Spoofing)是一种网络攻击技术,攻击者通过伪造ARP(地址解析协议)消息,将其MAC地址与目标IP地址关联,从而实现对网络流量的截获、篡改或重定向。以下是ARP欺骗的详细信息:

一.理论

1. ARP协议概述

  • 功能:ARP用于将IP地址解析为MAC地址,以便在局域网中进行数据传输。

  • 工作原理:当设备需要发送数据到特定IP地址时,它会广播ARP请求,询问哪个设备拥有该IP地址。拥有该IP地址的设备会回复其MAC地址。

  • ARP的分类

    ARP主要分为普通的ARP、免费ARP和代理ARP(此处主要介绍普通ARP和免费ARP)

    普通ARP和免费ARP的作用

    1、通过ARP的请求和应答报文,可以根据目的IP地址来解析其对应的MAC地址

    2、发送免费ARP请求,可以探测本机的IP地址在广播域内是否冲突、告知其他网络节点自己的IP地址和MAC地址、更新其他网络节点的ARP缓存表

    ARP报文中涉及的全0-MAC地址和全F-MAC地址

    全F为数据链路层封装的MAC,表示二层广播发送(免费ARP应答的Target MAC也为全F,表示该目的IP对应的MAC为非未知的)

    全0为ARP请求报文的Target MAC封住的,表示目的MAC未知

  • arp协议:即地址解析协议,将IP地址转换为对应的mac地址,属链路层协议

  • 补充内容:计算机网络基础知识总结 | 菜鸟教程

2. ARP欺骗的原理

  • 伪造ARP响应:攻击者向网络中的设备发送伪造的ARP响应,声称自己的MAC地址与目标IP地址相关联。
  • 缓存中毒:受害者的ARP缓存会被更新,导致其将数据发送到攻击者的MAC地址,而不是目标设备。
  • arp欺骗原理_arp欺骗的工作原理-CSDN博客
  • ARP攻击最终的结果是导致网络中断,而ARP欺骗的最终结果是使得流量通过自身达到监控或控制的目的

3. 攻击目的

  • 数据截获:攻击者可以监听和记录通过其设备传输的数据。
  • 中间人攻击:攻击者可以修改数据包内容,例如篡改网页内容或注入恶意代码。
  • 拒绝服务:通过不断发送伪造的ARP消息,使网络中的设备无法正常通信。

4. 攻击步骤

  1. 侦察:攻击者使用网络嗅探工具(如Wireshark)识别网络中的设备和IP地址。
  2. 发送伪造ARP消息:攻击者向网络中的设备发送伪造的ARP响应。
  3. 缓存中毒:受害者的ARP缓存被更新,导致数据流向攻击者。
  4. 数据截获和篡改:攻击者可以监听、记录或修改数据流。

vmware虚拟网卡配置Kali学习(ms17-010、ms08-067漏洞复现)_kali没有网络-CSDN博客

二.实验:

靶机 win7

默认网关:192.168.222.2

ip地址:192.168.222.132

攻击机:kali2023

ip地址:192.168.222.130

(一)arp断网攻击

1.在虚拟机中下载好arpspoof工具,并且查看好kali和win7的ip,看看相互ping能不能ping通

2. 利用命令查看存活主机,fping -g 192.168.222.0/24,查看当前局域网还存在那些主机,以确定要攻击的主机的ip地址
  • fping:这是一个用于发送 ICMP Echo 请求的命令行工具,类似于 ping,但可以同时对多个主机进行 ping 操作。fping 的优点是速度快,适合在大范围内进行网络探测。
  • -g:这个选项表示生成一个 IP 地址的列表。它会根据提供的网络地址范围生成所有可能的主机地址。

  • 192.168.222.0/24:这是一个 CIDR(无类域间路由)表示法,表示一个子网。192.168.222.0/24 表示从 192.168.222.0 到 192.168.222.255 的所有 IP 地址(共 256 个地址),其中 24 表示网络部分的位数,即前 24 位为网络地址,后 8 位为主机地址。

3.命令格式:arpspoof -i 网卡 -t 目标ip 网关

其中,-i后面的参数是网卡名称,-t后面的参数是目的主机和网关,截取目标的主机发往网关的数据包 

可见目标win7直接断网了

终止进程后

可以继续访问

 

(二)arp限速

        大致概念:

        当kali欺骗了网关和受害者的时候,受害者访问网络就需要经过kali的网卡,那我们限制kali网卡的速度或者转发的速度就可以限制对方的网速。这里可以使用的工具有tc、iptables、WonderShaper等等,我们以tc为例,tc是通过限制网卡的速度来限制对方的,是一种杀敌一千自损八百的手段。
在写这个之前,介绍工具:(TC)

在Linux中,流量控制都是通过TC这个工具来完成的。通常, 要对网卡进行流量控制的配置,需要进行如下的步骤:

◆ 为网卡配置一个队列;

◆ 在该队列上建立分类;

◆ 根据需要建立子队列和子分类;

◆ 为每个分类建立过滤器。

需要注意的是, 在TC 中使用下列的缩写表示相应的网络延迟:

时间的计量单位:

s、sec或者secs 秒

ms、msec或者msecs 毫秒

us、usec、usecs或者一个无单位数字 微秒

QDisc(排队规则) [qdɪsk]是queueing discipline [ˈkjuːɪŋ] [ˈdɪsəplɪn] 的简写,它是理解流量控制(traffic control)的基础。无论何时,内核如果需要通过某个网络接口发送数据包,它都需要按照为这个接口配置的qdisc(排队规则)把数据包加入队列。然后,内核会尽可能多地从qdisc里面取出数据包,把它们交给网络适配器驱动模块。

ARP限制网速攻击-CSDN博客

1.要限制网速,kali要先开启路由器转发功能

1.开启端口转发
cat /proc/sys/net/ipv4/ip_forward 	        #值为0表示没开启流量转发,为1表示开启了
echo 1 > /proc/sys/net/ipv4/ip_forward     #开启流量转发
2 .限速靶机
sudo tc qdisc add dev eth0 root netem delay 200ms

 解释:

  • sudo:这个命令以超级用户(root)权限执行,因为修改网络配置通常需要更高的权限。
  • tc:这是Linux中用于流量控制的命令行工具。

  • qdisc:代表“队列规则”(Queueing Discipline),是用于管理数据包的调度和排队的机制。

  • add:表示添加一个新的队列规则。

  • dev eth0:指定要应用规则的网络设备,这里是eth0,通常是一个以太网接口。

  • root:表示这是一个根队列规则,所有流量都将经过这个规则。

  • netem:代表网络仿真(Network Emulation),用于模拟网络延迟、丢包、重排序等网络特性。

  • delay 200ms:设置网络延迟为200毫秒。这意味着通过eth0接口发送的数据包将会被延迟200毫秒后再发送出去

        简单的说就是先把kali限速

        可以看见,相比之前,响应速度增加了200ms

3.开启ARP攻击
arpspoof -i eth0 -t 192.168.222.132 192.168.222.2

        这里和上面的断网攻击的区别就是,目标机器不会被断网,但是会被限速,而且比起上面的攻击,因为还可以与外界联系,所以很难被察觉

从这里可以看见攻击前后的响应速度差别

(最后的数据为取消arp欺骗的正常响应速度)

(三)ARP嗅探

同样的在使用arp欺骗前 先开启Kali的IP转发

开启IP转发后 流量会经过kali的主机而后再去到目标,

这时开启arpspoof进行欺骗后目标就不会断网,此时kali可拦截相关受害者主机相关信息,开启wireshark拦截受害者ping数据。

         接下来就是流量分析的范畴了

来个简单的实用一点的工具使用,图片那个driftnet就不再演示了

urlsnarf(既能抓URL也能抓图片)

使用urlsnarf嗅探受害者访问了哪些网页,默认抓取80、8080、3128端口的数据。
开启路由转发功能,使用arpspoof开启欺骗,然后使用urlsnarf来抓,这个工具好用一些

第一步,开启数据转发

echo 1 > /proc/sys/net/ipv4/ip_forward

第二步,arp欺骗

arpspoof -i eth0 -t 192.168.222.132 198.168.222.2

第三步,实时抓取

urlsnarf -i eth0   #eth0是要抓的网卡

(需要重新开窗口)

urlsnarf -i eth0

 以下为结果展示

        可见已经成功抓取到了这个流量,实际上也可以通过 wireshark来筛选分析流量,只是比这个要复杂。

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

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

相关文章

怎么修改编辑PDF的内容,有这4个工具就行了。

PDF 软件在现代的办公或者是学习当中的应用非常广泛,编辑PDF内容对很多人来说也是一件常有的事情。如果有了PDF 编辑软件,查看,编辑,修改,分享也会变得更加方便简单,所以今天要给大家介绍几款这样的工具。 …

python-库

python-库 常用库 仅个人笔记使用,感谢点赞关注 常用库 dill:对象序列化 目前仅专注于 NLP 大模型 机器学习和前后端的技术学习和分享 感谢大家的关注与支持!

vue特效,一片动态星空

vue实现漂亮星空&#xff0c;超级简单 1.创建vue项目&#xff1a; vue create demo 2.注册vuecli : npm i element-ui -S 3.加载依赖 &#xff1a;npm i 4.运行项目 :npm run serve <!DOCTYPE html> <html lang"en"> <head><…

Linux SSH免密登录

生成密钥-默认 出现三个提示步骤,直接回车即可 看到下图的提示的时候,你已经生成密钥成功 ssh-keygen -t rsa 生成密钥-定制化 与默认的步骤一致,唯一不同的是命令,话不多说,上命令 ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_new-t rsa&#xff1a;指定密钥类型为 RSA。…

FreeRTOS:任务通知

目录 一、简介 二、相关API 1.发送任务通知的API 2.获取任务通知的API 三、使用场景 1.代替消息队列 2.代替二值信号量 3.代替计数信号量 4.代替事件组 一、简介 FreeRTOS的任务通知&#xff08;Task Notifications&#xff09;是一个轻量级、快速的机制&#xff0c;用于…

【ELK】初始阶段

一、logstash学习 安装的时候最好不要有中文的安装路径 使用相对路径 在 Windows PowerShell 中&#xff0c;如果 logstash 可执行文件位于当前目录下&#xff0c;你需要使用相对路径来运行它。尝试输入以下命令&#xff1a; .\logstash -e ‘input { stdin { } } output { s…

详解23种设计模式——第一部分:概述+创建型模式

目录 1. 概述 2. 创建型模式 2.1 简单&#xff08;静态&#xff09;工厂模式 2.1.1 介绍 2.1.2 实现 2.2 工厂模式 2.3 抽象工厂模式 2.4 单例模式 2.4.1 饿汉模式 2.4.2 懒汉模式 2.4.3 线程安全的懒汉式 2.4.4 DCL单例 - 高性能的懒汉式 2.5 建造者模式 2.6 原…

kaptcha依赖maven无法拉取的问题

老依赖了&#xff0c;就是无法拉取&#xff0c;也不知道为什么&#xff0c;就是用maven一直拉去不成功&#xff0c;还以为是魔法的原因&#xff0c;试了好久发现不是&#xff0c;只好在百度寻求帮助了&#xff0c;好在寻找到了这位大佬的文章Maven - 解决无法安装 Kaptcha 依赖…

纯血鸿蒙!

纯血鸿蒙&#xff0c;这是哪个营销大师给起的名字啊&#xff01; 纯血&#xff01;象征着高贵、自信、自主、血性、英雄气概&#xff0c;都融入这纯血鸿蒙了&#xff01; 鸿蒙本就是开天辟地&#xff0c;加上纯血&#xff0c;真是荡气回肠&#xff01; 鸿蒙的推出背景 我们前…

Git安装与配置(2.47.0版本超详细)

一、背景 1.什么是gitt&#xff1f;&#xff08;官网引用&#xff09; Git 是一个快速、可扩展的分布式版本控制系统&#xff0c;它拥有异常丰富的命令集&#xff0c;可以提供高级操作和对内部的完全访问。 参阅 gittutorial[7] 开始使用&#xff0c;然后查看 giteveryday[7] …

ARM嵌入式学习--第四天

汇编与C混合编程 -汇编指令中调用C语言 .global _start _start:mov r0,#5mov r1,#3bl add stop:b stop int add(int a,int b) {int c a b;return c; } 无优化情况&#xff1a;&#xff08;反汇编之后&#xff0c;发现多了很多很多指令&#xff0c;运行之后结果是错误的&a…

MySQL-19.多表设计-一对多-外键

一.多表问题分析 二.添加外键 三.外键约束的问题

SpringCloud无介绍快使用,单机Eureka服务注册中心cloud-eureka-server7001搭建(十)

TOC 问题背景 从零开始学springcloud微服务项目 注意事项&#xff1a; 约定 > 配置 > 编码IDEA版本2021.1这个项目&#xff0c;我分了很多篇章&#xff0c;每篇文章一个操作步骤&#xff0c;目的是显得更简单明了controller调service&#xff0c;service调dao项目源码以及…

单位评职称需要在指定媒体上投稿发表文章看我如何轻松应对

在职场中,晋升与评职称是一项不可或缺的任务,而在这个过程中,完成相关的投稿更是至关重要。作为单位的一名员工,当我得知自己需要在指定的媒体上发表文章以满足职称评审要求时,心中既期待又忐忑。起初,我选择了传统的邮箱投稿方式,然而却没想到,这条路竟让我倍感挫折。 刚开始,…

交叉注意力融合时域、频域特征的FFT + CNN -BiLSTM-CrossAttention轴承故障识别模型

往期精彩内容&#xff1a; Python-凯斯西储大学&#xff08;CWRU&#xff09;轴承数据解读与分类处理 Pytorch-LSTM轴承故障一维信号分类(一)-CSDN博客 Pytorch-CNN轴承故障一维信号分类(二)-CSDN博客 Pytorch-Transformer轴承故障一维信号分类(三)-CSDN博客 三十多个开源…

【Pycharm默认解释器配置文件】怎样删除配置解释器的无效历史记录?

有时候我们希望删除无效的解释器路径&#xff0c;可以找到这个文件&#xff0c;进行删除修改。 C:\Users\你的用户名\AppData\Roaming\JetBrains\PyCharm2022.3\options\jdk.table.xml直接删除解释器名称对应的一整个<jdk version"2">节点即可&#xff01; …

深度学习领域,你心目中 idea 最惊艳的论文是哪篇?

深度学习发展至今&#xff0c;共经历了三次浪潮&#xff0c;20 世纪40年代到60年代深度学习的雏形出现在控制论(cybernetics)中&#xff0c;20 世纪 80 年代 到 90 年代深度学习表现为 联结主义(connectionism)&#xff0c;直到 2006 年&#xff0c;才真正以深度学习之名复兴。…

电气学习知识点

文章目录 NPN和PNP输出 NPN和PNP输出 NPN和PNP&#xff08;两种不同类型的三极管&#xff09;都是集电极输出。&#xff08;集电极开路输出&#xff09; 下图b:基极、c集电极、e发射极 NPN示意图&#xff08;集电极连接负载 — 正方形&#xff09; NPN的电流流向是从集电极…

电子物证的数字化时代:龙信科技引领取证技术革新

文章关键词&#xff1a;电子物证、手机取证、云取证、介质取证、电子数据取证 在信息技术飞速发展的今天&#xff0c;电子物证在司法领域扮演着越来越重要的角色。电子物证是指以存储于介质载体中的电磁记录或光电记录对案件事实起证明作用的电子信息数据及其附属物。与传统物…

《云计算网络技术与应用》实训6-1:配置KVM虚拟机使用NAT网络

任务1、计算节点基础环境准备 1. 使用VMware安装CentOS 7虚拟机&#xff0c;安装时记得开启CPU虚拟化&#xff0c;命名为“KVMC6”。 2. &#xff08;网卡配置和之前的一样&#xff0c;都用100网段&#xff09;网关设置为192.168.100.1&#xff0c;地址段为192.168.100.10-25…