网络安全知识核心之ARP协议

概述

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

  1. 发送 ARP 请求的以太网数据帧 广播 到以太网上的每个主机,ARP 请求帧中包含了目的主机的 IP 地址。

  2. 目的主机收到了该 ARP 请求之后,会发送一个 ARP 应答,里面包含了目的主机的 MAC 地址。

ARP 协议工作原理

  1. 每个主机都会在自己的 ARP 缓冲区中建立一个 ARP 列表,以表示 IP 地址和 MAC 地址之间的对应关系。

  2. 主机(网络接口)新加入网络时(也可能只是 mac 地址发生变化,接口重启等), 会发送免费 ARP 报文把自己 IP 地址与 Mac 地址的映射关系广播给其他主机。

  3. 网络上的主机接收到免费 ARP 报文时,会更新自己的 ARP 缓冲区。将新的映射关系更新到自己的 ARP 表中。

  4. 某个主机需要发送报文时,首先检查 ARP 列表中是否有对应 IP 地址的目的主机的 MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送 ARP 数据包,该数据包包括的内容有:源主机 IP 地址,源主机 MAC 地址,目的主机的 IP 地址等。

当本网络的所有主机收到该 ARP 数据包时:

  1. 首先检查数据包中的 IP 地址是否是自己的 IP 地址,如果不是,则忽略该数据包。

  2. 如果是,则首先从数据包中取出源主机的 IP 和 MAC 地址写入到 ARP 列表中,如果已经存在,则覆盖。

  3. 然后将自己的 MAC 地址写入 ARP 响应包中,告诉源主机自己是它想要找的 MAC地址。

源主机收到 ARP 响应包后。将目的主机的 IP 和 MAC 地址写入 ARP 列表,并利用此信息发送数据。如果源主机一直没有收到 ARP 响应数据包,表示 ARP 查询失败。ARP 高速缓存(即 ARP 表)是 ARP 地址解析协议能够高效运行的关键

如何防范ARP攻击

1、 MAC地址绑定

使网络中每一台计算机的IP地址与硬件地址一一对应,不可更改。

2、使用静态ARP缓存

用手工方法更新缓存中的记录,使ARP欺骗无法进行。

3、使用ARP服务器

通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不被黑。

4、使用ARP欺骗防护软件:

如ARP防火墙

5、及时发现正在进行ARP欺骗的主机并将其隔离

6、使用最新版本 DNS服务器 软件并及时安装补丁

7、关闭DNS服务器的递归功能

DNS服务器利用缓存中的记录信息回答查询请求或是DNS服务器通过查询其它服务器获得查询信息并将它发送给客户机,这两种查询方式称为递归查询,这种查询方式容易导致DNS欺骗。

8、限制区域传输范围

限制域名服务器做出响应的地址、限制域名服务器做出响应的递归请求地址、限制发出请求的地址。

9、限制动态更新

10、采用分层的DNS体系结构

11、检查源代码

如果发生了URL重定向,就一定会发现。不过,检查用户连接的每一个页面的源代码对普通用户来说是不切实际的想法。

12、确保应用有效和能适当地跟踪用户

无论是使用cookie还是会话ID,都应该确保要尽可能的长和随机。

相关推荐
孪生质数-12 小时前
Ansible基础入门
服务器·自动化·ansible·openstack
生活爱好者!12 小时前
效率高!开源协作 Wiki 与文档管理平台 NAS一键部署docmost
运维·网络·docker·容器·开源
星释13 小时前
Rust 练习册 60:鲍勃与字符串处理的状态机思维
开发语言·网络·rust
翼龙云_cloud13 小时前
阿里云渠道商:WordPress网站如何使用文件存储NAS?
运维·服务器·阿里云·云计算
BINGCHN13 小时前
流量分析入门(二):wireshark的使用
网络·测试工具·wireshark
鸡蛋炒肉13 小时前
radius服务器创建方法
服务器·radius
2401_8370885014 小时前
在 IDEA 中启动同一个项目的两个实例,让idea底层配置两个Tomcat 服务器
java·服务器·intellij-idea
桃花岛主7014 小时前
multipart/form-data 和 application/x-www-form-urlencoded区别
服务器·网络·网络协议·http
讨厌下雨的天空14 小时前
缓冲区io
linux·服务器·前端
im_AMBER14 小时前
计网 01 WebSocket | MDN
网络·websocket·网络协议