ARP欺骗原理与模拟

本文只是协议学习中的心得,所示范的试验方法仅用作学习的目的,请大家不要恶意使用

一 什么是ARP协议?

ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。所以说从某种意义上讲ARP协议是工作在更低于IP协议的协议层。这也是为什么ARP欺骗更能够让人在神不知鬼不觉的情况下出现网络故障,他的危害更加隐蔽。

二 ARP欺骗的原理:

首先我们可以肯定一点的就是发送ARP欺骗包是通过一个恶毒的程序自动发送的,正常的TCP/IP网络是不会有这样的错误包发送的,而人工发送又比较麻烦。也就是说当黑客没有运行这个恶毒程序的话,网络上通信应该是一切正常的,保留在各个连接网络计算机上的ARP缓存表也应该是正确的,只有程序启动开始发送错误ARP信息以及ARP欺骗包时才会让某些计算机访问网络出现问题。接下来我们来阐述下ARP欺骗的原理。

第一步:假设这样一个网络,一个Hub或交换机连接了3台机器,依次是计算机A,B,C。

A的地址为:IP:192.168.1.1 MAC: AA-AA-AA-AA-AA-AA

B的地址为:IP:192.168.1.2 MAC: BB-BB-BB-BB-BB-BB

C的地址为:IP:192.168.1.3 MAC: CC-CC-CC-CC-CC-CC

第二步:正常情况下在A计算机上运行ARP -A查询ARP缓存表应该出现如下信息。

Interface: 192.168.1.1 on Interface 0x1000003
Internet Address Physical Address Type
192.168.1.3 CC-CC-CC-CC-CC-CC dynamic

第三步:在计算机B上运行ARP欺骗程序,来发送ARP欺骗包。

B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.10.3(C的IP地址),MAC地址是DD-DD-DD-DD-DD-DD(C的MAC地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造了)。当A接收到B伪造的ARP应答,就会更新本地的ARP缓存(A可不知道被伪造了)。而且A不知道其实是从B发送过来的,A这里只有192.168.10.3(C的IP地址)和无效的DD-DD-DD-DD-DD-DD mac地址。

第四步:欺骗完毕我们在A计算机上运行ARP -A来查询ARP缓存信息。你会发现原来正确的信息现在已经出现了错误。

Interface: 192.168.1.1 on Interface 0x1000003

Internet Address Physical Address Type

192.168.1.3 DD-DD-DD-DD-DD-DD dynamic

从上面的介绍我们可以清楚的明白原来网络中传输数据包最后都是要根据MAC地址信息的,也就是说虽然我们日常通讯都是通过IP地址,但是最后还是需要通过ARP协议进行地址转换,将IP地址变为MAC地址。而上面例子中在计算机A上的关于计算机C的MAC地址已经错误了,所以即使以后从A计算机访问C计算机这个192.168.1.3这个地址也会被ARP协议错误的解析成MAC地址为DD-DD-DD-DD-DD-DD的。问题也会随着ARP欺骗包针对网关而变本加厉,当局域网中一台机器,反复向其他机器,特别是向网关,发送这样无效假冒的ARP应答信息包时,严重的网络堵塞就会开始。由于网关MAC地址错误,所以从网络中计算机发来的数据无法正常发到网关,自然无法正常上网。这就造成了无法访问外网的问题,另外由于很多时候网关还控制着我们的局域网LAN上网,所以这时我们的LAN访问也就出现问题了。

(以上2节内容摘抄于网络)

ARP欺骗的模拟

下面我们使用科来网络分析系统进行模拟

一 首先使用 科来物理地址扫描 主机ip与mac地址

219.150.184.46 00:0C:76:20:0F:23

219.150.184.39 00:16:76:C2:BF:84

219.150.184.33 00:E0:FC:12:D0:19

使用科来网络分析系统捕获一个arp的响应数据包

这里最简单的办法就是用ping命令去ping一台主机,在科来网络分析系统系统中设置过滤器仅捕获arp协议

三 把捕获到的arp相应发送到数据包苟照构造器并进行如下修改

四 呵呵,剩下的就是把这个数据包发送出去了,

发送前用arp –a命令在219.150.184.46上看一下

这是正确的网关的ip与mac的对应关系

好了,现在我们就把构造的数据包发送出去

发送后在用arp –a命令在219.150.184.46上看一下

ok,219.150.184.46上面的网关的ip地址已经被映射到了我们的主机上了,你再用219.150.184.46去试下,是不是不能上网了?!呵呵!

ARP欺骗原理与模拟相关推荐

  1. 局域网 ARP 欺骗原理详解

    局域网 ARP 欺骗原理详解 ARP 欺骗是一种以 ARP 地址解析协议为基础的一种网络攻击方式, 那么什么是 ARP 地址解析协议: 首先我们要知道, 一台电脑主机要把以太网数据帧发送到同一局域网的 ...

  2. ARP欺骗原理及实验

    ARP欺骗原理 遵守我国网络安全法,此文章仅用于网络安全学习 ARP协议是地址解析协议,其作用是在以太网环境中,数据的传输所依懒的是MAC地址而非IP地址,ARP协议将已知IP地址转换为MAC地址 交 ...

  3. 网络安全—arp欺骗原理数据包分析

    网络安全-arp欺骗原理&数据包分析 提要:arp欺骗虽然比较简单,但是在日常面试中也是会被经常问到的问题,本文将通过kali中的arpspoof工具进行arp攻击,同时使用wireshark ...

  4. ARP欺骗原理及复现

    免责声明:本文章所涉及到的内容仅可用于学习交流,严禁利用文中技术进行违法行为,否则后果自负! 前置条件: 1.kali linux 2.ettercap工具 3.一个具有收发功能的网卡 4.我们的老伙 ...

  5. ARP欺骗原理及实现

    目录 一.ARP协议原理 二.ARP协议的报文字段以及字段含义 三.ARP攻击与欺骗 1.ARP攻击原理 2.ARP欺骗原理 四.ARP攻击与欺骗演示 五.Windows使用ARP命令 六.ARP攻击 ...

  6. java编程实现arp欺骗_局域网 ARP 欺骗原理详解

    局域网 ARP 欺骗原理详解 ARP 欺骗是一种以 ARP 地址解析协议为基础的一种网络攻击方式, 那么什么是 ARP 地址解析协议: 首先我们要知道, 一台电脑主机要把以太网数据帧发送到同一局域网的 ...

  7. ARP欺骗原理详细介绍

    一台主机A如果要向目标主机B发送数据,无论主机B在本网段还是在远程网络,这些需要发出去的数据包中需要四样必不可少的地址,那就是源IP地址和源MAC地址,以及目标IP地址和目标MAC地址,当主机B在封装 ...

  8. ARP欺骗原理及欣向路由的先天免疫(转)

    "网管,怎么又掉线了?!"每每听到客户的责问,网管员头都大了.其实,此起彼伏的瞬间掉线或大面积的断网大都是ARP欺骗在作怪.ARP欺骗攻击已经成了破坏网吧经营的罪魁祸首,是网吧老板 ...

  9. ARP欺骗原理以及路由器的先天免疫(转)

    ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的低层协议,负责将某个IP地址解析成对应的MAC地址. "网管,怎么又掉线了?!& ...

最新文章

  1. 云计算读书笔记(五)
  2. 【观点】互联网抑或使人更愚蠢
  3. 手机吃鸡登显示服务器繁忙,国际版吃鸡登录一直显示服务器繁忙 | 手游网游页游攻略大全...
  4. emc测试e3软件系数导入,EMC测试标准
  5. 全国计算机等级考试三级数据库知识点总结
  6. 判断字符串是否是邮箱或者手机号码格式
  7. 应届毕业生在面试的时候应该如何谈薪资待遇?
  8. java web 实训报告_javaweb实训报告总结.doc
  9. 泊松融合(Poisson blend)
  10. 深度学习中的优化问题
  11. nacos 单机部署_使用Docker部署Nacos-Server(单机版)
  12. 文件 组织 服务器 数据库,nc文件服务器 数据库文件
  13. 遥感影像如何进行标准分幅,或者如何获取分幅图幅号分幅图廓矢量?
  14. python水位传感器输出水位_水位传感器原理 怎么判断水位传感器是否坏了
  15. OCI runtime create failed: container_linux.go:380
  16. 基于Java毕业设计畜牧场信息管理系统源码+系统+mysql+lw文档+部署软件
  17. PTB-XL处理程序
  18. java qq ui界面_java swing 创建一个简单的QQ界面教程
  19. 从调整RSRQ测量参数提升4G驻留比
  20. java实现简繁字体转换

热门文章

  1. 手机pc显示不同的内容
  2. 安卓网络类型设置的实现
  3. sqlserver ADO.net 查询数据库加锁,事务提交
  4. CAS SSO 单点登录 实例
  5. C# ManualResetEvent
  6. jquery的全选,全不选,反选
  7. (Android Studio)ActionBar's Theme/Style [ActionBar主题风格修改]
  8. VS+VA 开发NDK
  9. [转发]项目修复-把有麻烦的项目带向成功
  10. 从未这么明白的设计模式(一):单例模式