首页 > 其他分享 >ARP欺骗攻击:利用driftnet截获图片数据流

ARP欺骗攻击:利用driftnet截获图片数据流

时间:2023-01-17 18:11:07浏览次数:59  
标签:ARP IP MAC 地址 driftnet 主机 数据流 欺骗

ARP协议原理

地址解析协议,即(Address Resolution Protocol),是根据 IP 地址获取MAC地址的一个TCP/IP协议。

(1)每台主机都会在自己的ARP缓冲区建立一个ARP列表,以表示IP地址和MAC地址的对应关系。当源主机需要将一个数据包发送到目的主机时,会先检查自己的ARP列表中是否存在该IP地址对应的MAC地址,如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址,硬件地址,以及目的主机的IP地址。

(2)网络中所有主机收到这个ARP请求之后,会检查数据包中的目的IP是否和自己的IP地址一致,如果不一致就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP列表中已经存在该IP的信息,则将其覆盖,然后将自己的 MAC 地址写入 ARP 响应数据包中发送给源主机,告诉源主机自己是它想要找的 MAC 地址。

(3)源主机收到这个ARP响应数据包之后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。

ARP属哪一层?

基于功能来考虑,它的功能最终是获取到MAC信息,服务于链路层,所以是链路层协议;

ARP的作用

① IP数据包不能直接在实际网络中传输。

② IP地址在物理网络中对目标机器的寻址,必须转换为物理地址,即MAC地址。

③ ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

交换环境的网络使用交换机(Switch)连接各个网络节点 。

  • 交换机通过自己的ARP缓存列表来决定把数据报发送到某个端口, 这样就不是把一个数据报转发到所有端口了, 这种做法一方面大大提高了网络的性能, 另一方面也提高了安全性。
  • 在交换环境下, 即使网卡设置为混杂模式, 也只能监听本机的数据包, 因为交换机不会把其他节点的数据报转发给嗅探主机。

ARP 欺骗(ARP Spoofing)

ARP欺骗攻击是利用ARP协议本身的缺陷进行的一种非法攻击,目的是为了在全交换环境下实现数据监听。

通常这种攻击方式可能被病毒、木马或者有特殊目的攻击者使用。

原理:主机在实现ARP缓存表的机制中存在一个不完善的地方,当主机收到一个ARP的应答包后,它并不会去验证自己是否发送过这个ARP请求,而是直接将应答包里的MAC地址与IP对应的关系替换掉原有的ARP缓存表里的相应信息。

ARP的缺陷

  • ARP建立在信任局域网内所有结点的基础上。
  • 优点是高效,但不安全。
  • 无状态的协议,不检查是否发过请求或是否是合法的应答,不只在发送请求后才接收应答。
  • 只要收到目标MAC是自己的ARP请求包或ARP应答包,就接受并缓存。
  • 这样,便为ARP欺骗提供了可能,恶意节点可以发布虚假的ARP报文从而影响网内结点的通信,甚至可以做“中间人”。

ARP欺骗例子

典型ARP欺骗类型之一

欺骗主机作为“中间人”,被欺骗主机的数据都经它中转,以窃取被欺骗主机间的通讯数据。

假设一网络环境中有三台主机分别为A、B、C

A- IP:192.168.10.1 MAC:AA-AA-AA-AA-AA-AA

B- IP:192.168.10.2 MAC:BB-BB-BB-BB-BB-BB

C- IP:192.168.10.3 MAC:CC-CC-CC-CC-CC-CC

B给A应答IP是192.168.10.3 MAC是BB-BB-BB-BB-BB-BB

B给C应答IP是192.168.10.1 MAC是AA-AA-AA-AA-AA-AA

B对A伪装成C,对C伪装成A,A和C都被欺骗了!

典型ARP欺骗类型之二

-截获网关数据,欺骗路由器的ARP表。

-它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常的计算机无法收到信息。

典型ARP欺骗类型之三

-伪造网关,欺骗内网计算机,造成断网。

-建立假网关,让被它欺骗的计算机向该假网关发数据,而不是发给路由器。这样无法通过正常的路由器途径上网,在计算机看来,就是上不了网,即网络掉线或断网了。

ARP攻击

ARP攻击主要是指ARP欺骗,也包括ARP扫描(或称请求风暴),即在网络中产生大量ARP请求广播包,严重占用网络带宽资源,使网络阻塞。ARP扫描一般为ARP攻击的前奏。

ARP攻击主要是存在于局域网中。

ARP攻击一般通过木马感染计算机,ARP欺骗木马只需成功感染一台电脑,就可能导致整个局域网都无法上网,严重的甚至可能带来整个网络的瘫痪。受到ARP攻击的计算机一般会出现的现象:

  • 不断弹出“本机的0-255段硬件地址与网络中的0-255段地址冲突”的对话框。
  • 计算机不能正常上网,出现网络中断的症状。

利用driftnet截获图片数据流

1.安装driftnet

image

2.以网卡模式运行
pS1Lo1x.png

3.捕获图片
pS1OS3t.png

4.将捕获图片保存到指定目录

image

pS1LLHe.png

5.打开ettercap
pS1LjNd.png
pS1LXAH.png

6.将攻击机IP和靶机IP添加到target1和target2中
pS1Lv4A.png

7.启动ARP欺骗模块
pS1Lz9I.png

当靶机在浏览图片的时候,攻击机就嗅探到了靶机浏览的图片:
靶机:
pS1O9jf.png
攻击机:
pS1OpgP.png

再浏览点图片玩一玩:
pS1OPu8.png
pS1OiDS.png

标签:ARP,IP,MAC,地址,driftnet,主机,数据流,欺骗
From: https://www.cnblogs.com/tavee/p/17058464.html

相关文章

  • 一款ARPG游戏是如何搭建云真机系统的
    随着业内对“工业化”认知的不断提升,越来越多的UWA用户通过UWAPipeline的各项功能,为项目研发提供了极大的助力。其中的自动化测试与GOTOnline性能测评的结合,帮助项目组在......
  • 单向绑定vs双向绑定、单向数据流vs双向数据流
    参考文章:http://www.qb5200.com/article/482839.html单双向绑定指的是View层跟Model层之间的映射关系单向绑定vs双向绑定react采用单向绑定,vue采用单向绑定和双向绑定。......
  • CF850B Arpa and a list of numbers 题解 枚举
    题目链接:https://codeforces.com/problemset/problem/850/B题目大意我们定义一个数列是”坏的数列”当且仅当这个数列不为空且数列中所有元素的最大公约数为\(1\)。......
  • 手把手教你做一款音乐播放器(csharp的winform)
    前言:项目是c#的winform写的,使用的播放器是基于AxWindowsMediaPlayer。AxWindowsMediaPlayer的方法1.1首先新建一个页面如图所示:图片左侧是列表使用listview右侧是背景......
  • 力扣 295. 数据流的中位数[堆]
    295.数据流的中位数中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。例如 arr=[2,3,4] 的中位数是 3 。......
  • arp攻击原理
    arp攻击原理是通过伪造arp应答,将真的ip与假的mac地址发送给主机。首先需要攻破一台内网的服务器作为攻击主机,在攻击主机发送arp应答1.攻击主机发送arp应答,包......
  • Kali中安装并使用dsniff中的arpspoof和urlsnarf
    简介dsniff是一款很好用的嗅探工具,里面有arpspoof和urlsnarf这两个工具安装apt-getinstalldsniff使用介绍注意:如果没有arpspoof或者说没有dsniff的话,kali会自动提示......
  • 【优先队列】LeetCode 295. 数据流的中位数
    题目链接295.数据流的中位数思路维护两个优先队列,分别装载排序后数据流左边的数和数据流右边的数,其中left为大顶堆,right为小顶堆。如果元素个数是奇数,则把中位数放......
  • 前后端 数据流下载文件
    1.前端取流接口需要补充 responseType:'blob'参数,用来限定响应数据类型。functionloadBlob(params){returnaxios({method:'get',url:'/download',......
  • SSIS_数据流转换(派生列&聚合)
    功能:实现分组求和,增加新的字段求和selectID,salary,bonusfromaccountselectID,SUM(ISNULL(salary,0))assalary,SUM(ISNULL(bonus,0))asbonus,SUM(ISNULL(salary,0)+......