网络层协议及ARP攻击

2021-05-19

    一:网络层介绍及ICMP协议

1,网络层

  网络层位于OSI参考模型的第三层,位于传输层和数据链路层之间。向传输层提供最基本的端到端的数据传送服务。定义了基于IP协议的逻辑地址,连接不同媒介类型,选择数据通过网络的最佳路径。主要网络设备是路由器,主要PDU单元为数据包。

 

 

 

2,IP数据包结构

 

 

 

 

3,ICMP协议

  ICMP,互联网控制报文协议。是一个“错误侦测与回馈机制”,通过IP数据包包装,用来发送错误和控制消息。我们常用的“ping”命令就是基于ICMP协议。

 

  

 

 

 

 

4,ICMP协议的封装

  ICMP协议属于网络层协议

  ICMP数据的封装过程

  

 

 

 

 

5,ping命令

  ping命令可以用来测试对方是否在线

  基本格式为:

  ping  [选项]  主机名/IP地址

       选项:

  -t  :会一直不停的执行ping。调试故障或者需要进行持续性连通性测试时使用,Ctrl+C可以中断命令

    

 

 

 

  -l  :可以设定ping包大小。单位为字节,可用于简单测试通信质量

    

 

 

   

  -a  :可以显示主机名称

            

 

 

 

    

 

  ping命令基于ICMP协议,是成对出现的,并且是一发,一收

 

 

 

  

   局域网内当ping命令不同时,可能是1,防火墙的设置。2,IP的配置除了问题

 

 

 

 

 

     二:ARP原理及ARP攻击

 

1,ARP协议概述

  局域网中主机通信要有IP地址和MAC地址

  地址解析协议。是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址

 

2,ARP地址解析。将IP解析为MAC地址

 

  

  当局域网内PC1想和PC4通信,没有PC4的MAC地址,先去自己的ARP缓存表里查找

 

 

 

 

 

   PC1在ARP缓存表里没有找到PC4的MAC地址。发送广播寻找

 

 

     所有主机收到PC1的广播,PC4单播回应,其他主机丢弃

 

 

 

    PC1得到PC4的MAC地址,将其写入ARP缓存表中,发送数据

 

 

 

3,ARP攻击原理

  ARP报文有两个,一个请求,一个回应。

  正常当两个主机第一次通信时,A发送ARP请求报文,B发送ARP回应报文,通过B的回应报文,A确定B的MAC地址。

  当处在同环境下的另一台主机C主动发送ARP回应报文,告诉主机A自己是主机B时,就可以欺骗主机A

  

 

 

 

 

 

 

 

  当攻击者同时欺骗了主机和网关,主机的所有上网数据都会经过攻击者

 

 

 

4,ARP绑定。绑定网关

  将IP和MAC地址,通过手动或者自动扫描的方式,绑定在一起

  

    先查看网关IP

    route print

 

 

    查看网关MAC地址,并且查看到现在网关类型为动态

    arp -a

 

 

    

    找到对应的接口

    netsh interface ipv4 show interface

 

 

 

 

    将网关的IP地址和MAC地址绑定

    netsh interface ipv4 set neighbors +接口号  +网关IP  +网关MAC

 

 

    再用arp -a 查看网关类型

 

 

 

5,解除网关ARP 绑定

    netsh interface ipv4 delete neighbors + 接口号  +网关IP  +网关MAC

         再使用arp -a 查看,发现变回了动态