|
Smurf 攻击的动机与前一种攻击相同。容易发现,由于这种攻击的放大效应,它甚至能够使工业强度的 Web 服务器瘫痪。同样,攻击者只需要很少的资源。 传输控制协议(TCP) TCP 协议在包交换计算机网络中提供面向连接的、可靠的流传递服务。这意味着 TCP 模块保证传递无重复、无传输错误,而且数据以正确顺序传输。TCP 进一步提供了端口抽取功能,这使得主机可以并行地打开多个 TCP 连接。您可以由此发现 TCP 是由源地址/端口和目的地地址/端口四部分标识的。IP 地址/端口对被称为套接字。 TCP 与下面的 IP 层和上面的表示层及应用层协议(如 Telnet 或 SMTP)相互操作,如图 1 所述。 在继续讨论攻击之前,我将更详细地讨论 TCP 的某些方面,这些知识对于下面讨论的攻击是必需的。尤其是 TCP 包(称为段)的结构、如何在主机之间建立 TCP 连接和如何关闭连接。 TCP 包的结构 与 IP 数据报类似,TCP 段包含头部分、可选(选项)部分和数据部分。现在,让我们更仔细地研究一下 TCP 头的某些重要字段: 源端口:分配给启动连接的主机上虚连接的端口号。 目的地端口:目的地端口号。这也由启动连接的主机分配,因为只有该主机知道自己“想”连接到哪里。例如,如果您打开到特定主机的 Telnet 连接,则目的地端口将被设置为 23。 序列号和确认号:发送方和接收方使用两个序列号来确保包没有丢失、没有重复以及可以在目的地节点以正确顺序重新组装。 标志:这个字段包含六个控制位: URG:向接收方表明一接收完数据就进行紧急处理。 ACK:表明确认号字段是有意义的。 PSH:表明必须迅速地将数据传递到接收方。 RST:表明要立即复位连接。 SYN:在需要同步序列号的情况下设置。 FIN:表明不会再有来自发送方的数据了(也就是说,连接将要关闭)。 以上是 TCP 头中的重要字段,下面关于 TCP 连接的建立和关闭的几节将使您更好地理解这些字段的用途。 建立和关闭 TCP 连接 连接建立:TCP 连接的建立由要建立连接的客户机和该客户机联系的服务器通过三步握手过程执行。要开始连接,您需要有一个在特定端口提供服务的服务器;例如,在端口 23 侦听的 Telnet 服务。当客户机想要打开与服务器的连接时,它向服务器发送一个连接请求。这意味着向服务器发送一个设置了 SYN 标志的 TCP 包。服务器以设置了 SYN 和 ACK 标志的包应答。最后,客户机通过向服务器发送设置了 ACK 标志的 TCP 包进行确认。这样,客户机和服务器之间的连接就建立起来了。 上一页 [1] [2] [3] [4] [5] [6] 下一页
|