目录
一、协议安全性
1.数据链路层:交换机欺骗(MAC泛洪攻击)
2.网络层
3.传输层:TCP
二、网络攻击链模型
三、端口扫描
(1)CAM表(转发表):记录MAC地址到交换机物理端口的映射。
(2)攻击过程:
1)在局域网发送欺骗性MAC源地址;
2)CAM表将填充伪造的MAC地址记录,过多的伪造记录将有关交换机内存耗尽;
3)整张CAM表都被伪造MAC地址记录填充时,交换机以类似集线器的模式工作,向其它物理端口广播转发数据。
(1)IP安全:分片会消耗接收双方,特别是接收方的内存资源,从而可以构造畸形保温,增加分片的复杂性,破坏可用性。
1)以太网帧的数据部分最大长度限制为1500字节,超过限制的IP报文需要分片。
2)分片在路由器,重组在目的主机。
3)拒绝服务攻击主要方式
4)基于IP分片的攻击:
①泪滴攻击Teardrop
用于DoS攻击,利用Windows95/NT/3.1和低版本的Linux中处理IP分片的漏洞,发送偏移重叠的UDP数据报,使目标主机重组出错,导致目标系统崩溃或重启。
②泪滴攻击变种一——小片段攻击
用于穿透防火墙,防火墙不会检测同一个IP报文的所有分片,只检测第一片或最后一片。所以可以构造小片段使防火墙需要检测的信息进入到不被检测的分片中。
③泪滴攻击变种二——重叠分片攻击
用于穿透防火墙,防火墙在处理重叠分片时与目标机可能存在差异性:当重叠时,有的系统是以先到的数据为主,有的系统则是用后到的数据覆盖先前的数据。
假设受害者主机以后到的数据优先原则处理TCP协议,第一个分片中的TCP服务类型设为端口80(HTTP),这是大多数防火墙允许的,而在第二个分片中以端口23(Telnet)改写第一个分片中的80端口,从而穿过了防火墙。
④泪滴攻击变种三
攻击者伪造并发送大量的分片,但却不让这些分片构成完整的数据报以此占用防火墙或IDS(入侵检测系统)的CPU和存储单元,构成DoS攻击。
⑤ping of death
利用协议实现时的漏,向受害者发送超长的Ping数据包,导致受害者系统异常。当产生畸形的、尺寸超过ICMP上限的包也就是加载的数据大小超过64KB(65535)上限时,就会出现内存分配错误,导致TCP/IP协议栈崩溃,致使接收方死机。
(2)ARP(地址解析协议)安全
1)ARP请求是广播,回答是单播
2)ARP技术原理
①A希望给B(IP地址为210.41.244.25)传输一个数据包。
②A发送一个ARP的广播请求数据包,希望得到B的(IP地址为210.41.244.25)物理地址
③网络上的所有的设备都能收到这个数据包。但是只有B才回答。
3)ARP欺骗:利用ARP协议漏洞,发送欺骗报文,修改目标主机的ARP表,使得目标主机给其他主机的报文发送到自己这里(重定向)
①攻击者向A、B发送欺骗报文,将“10.10.10.2的MAC地址是11:22:33:44:55:CC”的映射关系发送给A,将“10.10.10.1的MAC地址是11:22:33:44:55:CC”的映射关系发给B,使A、B相互通信的实际对象变为攻击者C
②攻击者从网络接口上嗅探受害主机发过来的数据帧
③攻击者将嗅探到的数据发送回原本应该接收的主机
(1)TCP会话劫持
为了伪造 TCP 数据包, 应该正确设置序列号。如图所示, 接收方已经收到了一些数据, 序列号到 x, 因此, 下一个序列号应该是 x + 1。如果伪造的数据包不用 x + 1 作为序列号, 而使用了 x + δ, 这会成为一个乱序包。这个包中的数据会被存储在接收方的缓冲区中 (只要缓冲区有足够的空间) , 但是不在空余空间的开端 (即 x + 1) , 而会被存在 x + δ 的位置, 也就是在缓冲区中会留下 δ 个空间。伪造的数据虽然存在缓冲区中, 但不会被交给应用程序, 因此暂时没有效果。当空间被后来的 TCP 数据包填满后, 伪造包中的数据才会被一起交给应用程序, 从而产生影响。如果 δ 太大, 就会落在缓冲区可容纳的范围之外, 伪造包会因此被丢弃。
如果接收方是 telnet 服务器, 从发送方到接收方的数据是命令, 一旦控制了该会话, 就可以让 telnet 服务器运行攻击者的命令。这就是把这类攻击称为 TCP 会话劫持的原因 。
(2)TCP SYN Flood
攻击者伪造地址进行SYN请求且不完成三次握手,产生半开连接,使服务器消耗大量的资源(内存为主)维护半开连接表(netstat -an)
(1)利用TCP/IP协议缺陷,探测主机端口是否开放以及操作系统类型
(2)常见技术:
TCP全连接扫描
SYN半连接扫描
PING扫描
UDP扫描