不可不知的网络攻击

如今网络应用已深入我们生活的方方面面 , 小到一次支付 , 大到发射一枚导弹 , 网络安全直接关系着一个公司甚至国家的稳定 。在安全面前 , 任何承诺都没有意义 。本文罗列了从 链路层到 传输层常见的几种网络攻击方式 , 并对它们的攻击原理展开简要的分析 。
ARP 攻击
ARP(Address Resolution Protocol) 是一种地址解析协议 , 目的是在局域网中 , 获取已知 IP 地址对应的目标 mac 物理网卡地址 。ARP 协议工作在 7 层网络模型的第二层:数据链路层 。这里要多解释一下 , 我们熟悉的 IP 地址其实是一种虚拟的网络地址 , IP 地址工作在网络层 , 但在链路层 , 数据帧是通过 MAC 地址(设备物理地址)进行传输的 。所以在真正开始通信前 , 需要先将目标 IP 地址转换为 MAC 地址 。
举个例子 , 你转学来到一个新的班级 , 准备把作业交给班里的数学课代表 , 但你不知谁是数学课代表 , 怎么办呢?你只需大吼一声 , “谁是数学课代表” 并确保这句话被每个人听见 , 这样你的目标自然会来联系你 。
ARP 也是如此 , 它需要向网络内所有终端广播询问消息 , 并等待结果 , 这种请求与回执均是以广播的方式进行的 , 所以给了攻击者以可乘之机 。
首先说说 ARP 欺骗 , ARP 欺骗常见的可分为 网关型欺骗与 主机型欺骗 , 不过原理都一样 。一种劫持网关 另一种劫持到某台主机的数据 。

不可不知的网络攻击

文章插图
流程如下:
假设当 PC1 要访问 PC4 192.168.2.101  , 本地 IP 为 192.168.1.101 子网掩码 255.255.255.0 网关 192.168.1.1 经过判断目标不是本网段 IP  , 需将请求发送至网关 。此时就需要向 192.168.1.x 这个网段中广播 ARP 获取网关 IP 对应的 MAC 地址 。但此时和网关身处同网段的 PC2 和 PC3 也可以收到这条 ARP 消息 , 若此时 PC2 冒称自己为网关 , 且抢先一步做出应答 , 则以后 PC1 经过网关的信息均会被 PC2 劫持 。
不可不知的网络攻击

文章插图
还有一种 ARP 攻击会导致部分或全部终端网络瘫痪 , 他利用了交换机每当收到新的 ARP 请求时都会刷新请求发起者信息的功能 ,  PC2 不断的发送 ARP 请求 , 导致交换器疲于应对建立新的 IP -> MAC 映射关系 , 导致崩溃 。这种攻击可以是针对全网也可以是只针对某台终端 , 只要在请求中修改对应的 IP 与 MAC 地址就行 。
由于 ARP 协议工作在链路层 , 是一种非常底层的协议 , 原则上目前没有什么方法可以完全杜绝 ARP 攻击 , 这种攻击主要是针对局域网 , 在各高校尤其是软件学院是重灾区(捂脸) 但通过合理的配置可以提高网络的 “抵抗力” 。
ARP 攻击的防御:
1. 限制交换机 ARP 映射表的最大学习空间 , 防止缓存溢出 。
2. 指定交换机 ARP 映射表更新阈值 , 只处理超出阈值的映射 , 避免频繁更新 。
3. 只记录交换机自己发出的映射 , 不记录终端主动请求的映射
4. 必杀!在交换机做静态映射 , 定死 ARP 表 , 让 IP 和 MAC 永久性关联 , 此招效果拔群 , 但就是网管会有点忙 。
DHCP 攻击
DHCP (Dynamic Host Configuration Protocol) 动态主机配置协议 , 它的作用是为每一台新接入网络的终端分配 IP 地址 , 当然如果在上面用过必杀的话 DHCP 也就没意义了 。
不可不知的网络攻击

文章插图
【不可不知的网络攻击】一次 DHCP 请求简单来说是这样的:首先终端发出 DHCP 广播 , 为什么是广播呢?因为在网络中可能有多台 DHCP 服务器有 , 当 DHCP 服务器收到请求报文后 , 会给请求者一个回执 , 此时就确定了哪一个 DHCP 服务器来完成这次分配任务 , 然后 终端再次广播 IP 请求报文(广播为的是让另外的 DHCP 服务器知道此 IP 已经用过了) , 服务器收到后 , 在发送确认消息 ack 。
基于 DHCP 的攻击有很多种 , 常见的 2 种是 地址耗尽攻击与 仿冒者攻击 。


推荐阅读