标题: MS05-019/KB893066简介 https://scz.617.cn/windows/200504271435.txt ☆ IP选项攻击 CVE ID : CVE-2005-0048 BUGTRAQ ID : 13116 NSFOCUS ID : 7608 tcpip.sys在处理IP选项过程中存在安全漏洞。接收到某种畸型IP报文后,tcpip.sys 将检测出这是一个畸型IP报文,检测函数动态生成一个错误码返回给主调函数。问题 在于这个动态生成的错误码恰好等于成功码,使得主调函数认为检测无误,不进入出 错流程。在正常流程中处理这个畸型报文时,可能导致多种类型的安全问题,最常见 的是纯粹的DoS,也有可能在发生内核态池缓冲区溢出之后获得有效控制权。具体流 程依赖于内核态池缓冲区中的残像。 绝大多数现代路由设备会丢弃这种异常攻击报文,因而将此攻击范围限定在与攻击源 同掩码的子网内。 Vulnerabilities in TCP/IP Allow Remote Code Execution and DoS (MS05-019, Exploit) http://www.securiteam.com/exploits/5SP0C20FFY.html 安装MS05-019/KB893066之后,检测函数不会返回恰好等于成功码的错误码,主调函 数认为检测有误,进入出错流程。 ☆ MTU攻击 CVE ID : CVE-2004-1060 BUGTRAQ ID : NSFOCUS ID : 7607 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = 3 | Code = 4 | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unused = 0 | Next-Hop MTU | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Internet Header + 64 bits of Original Datagram Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 这种ICMP响应报文用于更新原发送方的MTU。微软的协议栈实现几乎未做安全检查, 轻易相信来自这种ICMP响应报文中的"Next-Hop MTU",并增加一条特定主机路由。这 有两个负作用,一是通过路由表消耗资源,二是匹配该特定主机路由的的待发送报文 将根据新的MTU进行分片。 ☆ 利用协议不可达ICMP报文重置TCP连接 CVE ID : CVE-2004-0790 BUGTRAQ ID : NSFOCUS ID : 7606 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = 3 | Code = 2 | Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unused = 0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Internet Header + 64 bits of Original Datagram Data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Windows的TCP/IP协议栈收到"协议不可达ICMP报文"后,几乎未做安全检查就直接相 信了这个报文,根据ICMP数据区的TCP连接相关四元组找出TCP控制块(TCB)并关闭它。 假设AddrA/PortA是周知IP、周知端口,第三方攻击者试图利用协议不可达ICMP报文 切断AddrB到AddrA/PortA的TCP连接,只需穷举PortB即可,而这最多只需65536次。 整个过程都与th_seq无关。 Multiple Vendor TCP/IP Implementation ICMP Remote DoS Exploit http://www.frsirt.com/exploits/20050420.HOD-icmp-attacks-poc.c.php 安装MS05-019/KB893066之后,开始检查ICMP数据区中的th_seq。