今天BOSS让我总结ARP欺骗的原理和防范策略,在这里把总结的结果贴出来吧。求人品,求速转正。

ARP原理:
在局域网内部,各主机之间以MAC地址作为标识通信对象的标志。然而,有时通信发起的主机并不知道目标主机的MAC地址,仅知道其IP地址。ARP协议就是将IP地址转换MAC地址的协议。

主机A要向主机B发起通信,先本地的ARP缓存表,如果找到了B的IP地址对应的MAC地址,就会使用MAC B进行数据传输。如果未找到,则A广播一个ARP Request报文(携带主机A的IP地址IPa和物理地址MACa),请求IP地址为IPb的主机B的物理地址MACb。同一局域网内的所有主机包括B都收到ARP Request报文,但只有主机B发现报文中的目的IP,即IPb,是本机的IP地址。于是向A主机发回一个ARP Reply报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据。
因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。ARP缓存表采用老化的机制,在一段时间里表中的某一个表项没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询的速度。

ARP欺骗原理:
黑客C经过收到A发出的ARP Request广播报文,能够偷听到A的 (IP, MAC) 地址, 黑客C就伪装为B,告诉A (受害者) 一个假MAC地址(这个假地址是C的MAC地址),使得A在发送给B的数据包都被黑客C截取,而A, B 浑然不知。

欺骗种类:

1、截获网关发出的数据。
欺骗源通过ARP报文通知网关一系列错误的内网MAC-IP地址关系,并按照一定的频率不断进行,使网关的ARP缓存表中不能保存正常的地址信息中,结果网关的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。
2、伪造网关
欺骗源把自己伪装成网关,向局域网内的主机发送ARP应答或免费ARP报文。使得局域网内的主机误以为欺骗源的MAC是网关MAC地址。使得原本流向网关的数据都被错误地发送到欺骗源。
3、伪造主机
欺骗源C把自己伪装成局域网内的另一台主机B,使得局域网内发往B的报文都流向了C。伪造主机的过程与伪造网关类似。
4、跨网段的ARP攻击
把ARP欺骗与ICMP重定向相结合。假设A,B在同一网段,C在另一网段,C要欺骗A,自己是B。C发送一个TIP为A,SMAC为C,SIP为B的ARP应答报文到网关,网关会把MACc---IPb的对应关系学习到自己的ARP缓存表中,同时把ARP应答转发到A。A更新自己的ARP缓存 IPb --- MACc, A要向IPb发送报文时,网关发现IPb不在与A同一网段内,而在C所在的网段,于是发送ICMP重定应报文给A,告诉A“IPb的不在同一网段内,下一跳为网关”,A在自己的路由表中添加一个表项,把IPb的报文都发往路由器。这样C就能截获A发往B的报文。

防范技术:
1、在网关和主机上设备静态ARP表项,这样欺骗ARP报文携带的信息与静态表项不同,会被忽略。
仅适合于小规模局域网,不适合于DHCP

2、在交换机上限制每个端口的ARP表项数量。端口上仅能够学习有限数量的ARP表项。如果设置为1,则只允许一个ARP表项被学习,伪装的MAC地址就无法通过交换机。对上述[欺骗种类1]比较有较。

3、与DHCP结合
DHCP snooping的过程中,会建立DHCP表项,主机的的IP以及用户MAC、VID、PORT、租约时间等信息组成用户记录表项,从而形成DHCP Snooping 的用户数据库。DHCP可以很清楚地知道给哪个MAC分配了哪个IP。
交换机收到ARP报文时,将收到ARP报文的源IP、源MAC、端口号、VLAN ID信息同DHCP-Snooping数据库的用户信息进行匹配。如果一致则认为合法ARP报文,按既有流程处理;否则视为非法ARP报文,丢弃处理。


4、在交换机端收集所有ARP报文信息,一但MAC和对应的IP有变动,发出警告。







ARP欺骗,骗你没商量的更多相关文章

  1. 使用ARP欺骗, 截取局域网中任意一台机器的网页请求,破解用户名密码等信息

    ARP欺骗的作用 当你在网吧玩,发现有人玩LOL大吵大闹, 用ARP欺骗把他踢下线吧 当你在咖啡厅看上某一个看书的妹纸,又不好意思开口要微信号, 用arp欺骗,不知不觉获取到她的微信号和聊天记录,吓一 ...

  2. 防止ARP欺骗的方法!!!

    防止ARP欺骗的方法!!! 根据鄙人上网经常掉线,怀疑可能是某人使用网络剪刀手,网络执行官,局域网终结者等工具.经过搜索有关资料,有了一点点防范经验,借以参考~! 一 首先我们来了解下这类攻击工具的原 ...

  3. [c#]记一次实验室局域网的ARP欺骗

    起因 某天中午午睡时,笔者被激烈的键盘和鼠标声音吵醒,发现实验室的同学在那边忘我地打LOL,顿觉不爽,于是决定整他一下.想了一下之后觉得就让他掉线一下作为惩罚好了.结合以往的理论知识,大家在同一个局域 ...

  4. arp欺骗技术

      ARP欺骗技术-获取内网目标IP访问图片!   简介: ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的网络层,负责将某个IP地址解析 ...

  5. 关于ARP欺骗与MITM(中间人攻击)的一些笔记( 二 )

    一直没有折腾啥东西,直到最近kali Linux发布,才回想起应该更新博客了….. 再次说明,这些技术并不是本人原创的,而是以前记录在Evernote的旧内容(排版不是很好,请谅解),本文是继关于AR ...

  6. 中间人攻击之arp欺骗 科普ARP欺骗

    中间人攻击之arp欺骗 科普ARP欺骗 A <-> B A中有个ARP Table,每次发包都会在此Table中查找,若找不到,发APR Request包询问.此时若hacker冒充B的M ...

  7. 一篇故事讲述了计算机网络里的基本概念:网关,DHCP,IP寻址,ARP欺骗,路由,DDOS等...

    计算机主机网关的作用是什么? 假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关.当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声 ...

  8. kali系统:局域网arp欺骗, 搞定任意windows计算机

    目的 通过Arp欺骗, 给局域网内的所有用户网页中植入木马, 只要用户运行以后, 就会反弹一个shell到我们计算机 准备 kali系统 metaspolit的使用 Arp欺骗工具:bettercap ...

  9. ARP欺骗配置及演示过程

    目录 环境 软件 网络拓扑图 配置流程 配置构思 具体流程 问题 演示过程 状态 检查Attack前centOS7_1的ARP地址表 在kali上输入以下命令发动攻击 此时查看centOS7_1的AR ...

随机推荐

  1. ArrayList集合-[长度问题]--C#

    list.Count//获取集合中实际元素的个数.list.Capacity//获取集合中可包含的元素数. /** *   每次集合中实际包含元素的个数(Count)超过了可以包含的元素的个数(Cap ...

  2. WPF Multi-Touch 开发:高效开发模式

    原文 WPF Multi-Touch 开发:高效开发模式 在前几篇文章中已经介绍了触屏操作的多种模式,并对其开发方式也有了进一步了解.细心的朋友应该会发现在上一篇文章中,如果拖动图片过快它会因惯性效果 ...

  3. Spring源码解析——如何阅读源码(转)

    最近没什么实质性的工作,正好有点时间,就想学学别人的代码.也看过一点源码,算是有了点阅读的经验,于是下定决心看下spring这种大型的项目的源码,学学它的设计思想. 手码不易,转载请注明:xingoo ...

  4. 道可叨 | Python 标准库 urllib2 的使用细节

    道可叨 | Python 标准库 urllib2 的使用细节 request = urllib2.Request(uri) request.add_header('User-Agent', 'fake ...

  5. 浙江大学PAT上机题解析之3-05. 求链式线性表的倒数第K项

    给定一系列正整数,请设计一个尽可能高效的算法,查找倒数第K个位置上的数字. 输入格式说明: 输入首先给出一个正整数K,随后是若干正整数,最后以一个负整数表示结尾(该负数不算在序列内,不要处理). 输出 ...

  6. Linux中处理需要传输的IP报文流程

    本文主要讲解了Linux中处理需要传输的IP报文流程,使用的内核的版本是2.6.32.27 为了方便理解,本文采用整体流程图加伪代码的方式对Linux中处理需要传输的IP报文流程进行了讲解,希望可以对 ...

  7. Android应用开发经常使用知识

    在其它站点看到的,Mark一下 1.近期打开的应用不在近期任务列表中显示 android:excludeFromRecents="true" 设置为true,则排除在近期任务列表之 ...

  8. docker 学习手冊-中文版下载

    这个PDF算是学习docker的一个小总结,全部文章摘自我在csdn的博客专栏: http://blog.csdn.net/column/details/docker.html 第一章到第八章摘自do ...

  9. Perl 5 教程

    Perl 5 教程 http://www.cbi.pku.edu.cn/chinese/documents/perl/index.htm

  10. js注册检测 用户名、密码、手机号、邮箱

    请输入电话号码:<input name="" type="text" id="telphone" value="" ...