论文部分内容阅读
计算机科学和互联网技术的迅速发展一方面给人们的生产生活提供了极大的便利,但另一方面也带来了很多不容忽视的安全隐患。这些安全隐患滋生了网络上的各种攻击技术。如今每年都有很多有组织的网络攻击方发生,这些攻击不但对社会造成损失,也影响着国家的信息安全。因此针对这些攻击技术的研究不仅促使人们不断完善各种网络协议的设计,也能够帮助人们逐步建立起安全防范意识和安全防御机制。TCP协议是Internet使用最广泛的协议之一,它采用一系列措施来提供面向连接的、可靠的字节流服务,包括三次握手,滑动窗口检查确认和重传机制,流量控制等。但是这些机制的复杂性也导致协议自身存在一些缺陷,如TCP初始序列号的伪随机性,大滑动窗口的特点,目前已经有多个相关漏洞被公布,其中通过预测TCP序列号发起序列号攻击已经严重威胁着计算机网络的安全。针对TCP序列号漏洞的攻击由来已久,但由于用来建立连接的序列号较难预测,人们对此类攻击并不重视。但是由于TCP协议中窗口字段的特征,在实际的数据传输中,不需要完全精确的序列号,只要伪造的序列号落在窗口范围内,就可以被接收方正常处理。这种特性大大降低了攻击的难度。对于一个长期运行的TCP连接,攻击者可以通过伪造TCP报文对TCP协议漏洞进行攻击,截断TCP连接,造成拒绝服务攻击(DOS)。本文分析了目前常见操作系统TCP协议栈的初始序列号分布的伪随机性,并在此基础上,给出了基于混沌时间序列预测的初始序列号预测方法,并结合TCP窗口特征,实现了TCP Reset攻击。实验表明,常见操作系统的TCP协议栈初始序列号分布呈近似线性增长的趋势,并且基于混沌时间序列的预测方法可以达到较高的预测精度。而序列号预测结合TCP大窗口特征可以明显提高TCP Reset攻击的可行性。