首页 . 理学 . 计算机科学技术 . 信息安全 . 网络安全 . 网络攻击 . 网络欺骗

IP欺骗

/IP spoofing/
条目作者彭建山

彭建山

最后更新 2023-09-26
浏览 183
最后更新 2023-09-26
浏览 183
0 意见反馈 条目引用

通过伪造数据包IP头部中的源IP字段达到假冒身份的攻击目的。

英文名称
IP spoofing
所属学科
计算机科学技术

由于IPv4协议中的IP头部是明文表示的,所以IP欺骗适用于所有包含IP头部的协议,包括TCP、UDP、ICMP、HTTP等,其中以TCP协议的IP欺骗最为常见,攻击效果最显著。

TCP将IP地址作为通信的主要身份凭证,部分承载于TCP的应用协议甚至将IP地址作为访问控制的凭证。标志性事件是1994年K.D.米特尼克(Kevin David Mitnick)利用IP欺骗实现对rlogin服务器的远程攻击:通过远程猜测TCP的ACK Number,伪装合法源IP地址的身份与服务器建立TCP3次握手连接,发送了一个高权限命令并成功地在服务器上执行。

除了假冒身份,IP欺骗还可用于在TCP通信中注入数据,或者中断TCP连接。

攻击者作为TCP连接的发起端,实现IP欺骗难点在于获得TCP的ACK Number。ACK Number包含在TCP第二次握手包中,由服务器随机生成。由于第二次握手发向伪造的IP地址,攻击者自身无法直接得到,所以需要通过猜测或嗅探来得到ACK Number以完成TCP3次握手。

①猜测ACK Number。早期的操作系统存在ACK Number随机性不强的问题,可以通过远程探测观察ACK Number的生成规律,准确预测下一次握手的ACK Number变化范围。现代操作系统采用了强随机算法,每一次握手的ACK Number存在40亿个可能值,使得猜测变得极为困难。2016年曹跃发现Linux操作系统在实现RFC5961规范时存在边信道漏洞,允许攻击者猜测互联网上任意两台指定版本Linux主机TCP通信使用的ACK Number。

②嗅探ACK Number。攻击者可对同一局域网内的其他主机发起IP欺骗攻击:伪装成其他IP尝试与受害者主机建立TCP连接,再利用ARP欺骗、嗅探等攻击手段获取TCP通信时的ACK Number,完成TCP3次握手进而以假冒身份发送和接收数据。

相关条目

阅读历史

    意见反馈

    提 交

    感谢您的反馈

    我们会尽快处理您的反馈!
    您可以进入个人中心的反馈栏目查看反馈详情。
    谢谢!