• ARP欺骗攻击原理及其防御


    一、概述
    1、ARP协议
    地址解析协议,将IP地址转换为对应的mac地址,属链路层协议
    数据包分为:

    • 请求包(广播):本机IP地址、mac地址+目标主机IP地址
    • 应答包(单播):本机IP地址、mac地址+来源主机IP地址、mac地址

    通信方式:

    • 局域网内通信:
      在这里插入图片描述
      主机A和主机B通信过程:
      (1)主机A先检查自己的缓存表中有没有主机B的IP地址和mac地址的对应关系,有就直接进行通信;如果没有,就在局域网广播一个arp请求包,包括主机A的IP地址、mac地址和主机B的IP地址。
      (2)局域网内所有机器都会收到这个请求包,收到后与自己的ip地址对比一下,如果是自己的,就发送一个响应包,包括主机A的IP地址、mac地址和主机B的IP地址、mac地址;如果不是自己的,就丢掉。

    • 局域网间通信:与上面过程类似,但是主机A要先和网关进行通信,再和主机B进行通信。
      在这里插入图片描述
      注意:a.两台主机的IP地址不在同一网段,需要通过网关来转发
      b.涉及两个arp缓存表,一个是主机中存放的,另一个是网关处路由器设备自己的arp缓存表

    2、 ARP欺骗
    利用ARP协议的缺陷进行的一种非法攻击

    二、ARP欺骗攻击原理
    1、原理:主机接收到一个应答包之后,并不会验证自己是否发送过对应的arp请求包,也不会验证这个arp请求包是否可信,而是直接用应答包里的IP地址和mac地址的对应关系替换掉arp缓存表里原有的对应关系。
    2、过程
    在这里插入图片描述
    攻击主机B向网关C发送一个应答包,包括主机A的IP地址、主机B的mac地址。同时,向主机A发送一个应答包,包括网关C的IP地址,主机B的mac地址。
    这个时候,网关C就会将缓存表里主机A的mac地址换成主机B的mac地址,而主机a就会将缓存表里网关C的mac地址换成主机B的mac地址。
    所以,网关C发送给主机A的消息全被主机B接收,主机A发送给网关C的消息也全被主机B接收,主机B就成为主机A和网关C通信的“中间人”。
    三、ARP欺骗攻击的检测与防御
    检测:
    1、网络频繁掉线
    2、网速突然变慢
    3、使用arp -a命令查看的网关mac地址与真实的网关mac地址不同
    4、使用嗅探软件发现局域网内存在大量arp应答包
    防御:
    1、绑定mac地址
    2、使用静态arp缓存表
    3、使用arp服务器,通过服务器来查找arp转换表来响应其他机器的广播
    4、使用arp欺骗防护软件
    四、ARP欺骗的危害
    1、使同一网段内其他用户无法上网
    2、可以嗅探到交换式局域网中的所有数据包
    3、对信息进行篡改
    4、可以控制局域网内任何主机

    你是这白开水一样淡的日子里偷偷加的一颗糖~~
  • 相关阅读:
    mongdb 拓展的下载地址和编译安装(php)
    Linux-CentOs7-svn安装及钩子配置
    centos 安装php7、pecl 、swoole、redis拓展
    MOD 10,11算法(GB/T 17710-1999 数据处理 校验码系统 )的 Python实现
    .NetCore源码阅读笔记系列之HttpAbstractions(五) Authentication
    .NetCore源码阅读笔记系列之Security (四) Authentication & AddJwtBearer
    .NetCore源码阅读笔记系列之Security (三) Authentication & AddOpenIdConnect
    .NetCore下利用Jenkins如何将程序自动打包发布到Docker容器中运行
    如何将自己的Image镜像Push到Docker Hub
    Kubernetes图形化归纳总结基础介绍整理
  • 原文地址:https://www.cnblogs.com/0nc3/p/12063475.html
Copyright © 2020-2023  润新知