本文详细介绍关于 TCP/IP协议安全性能问题的分析
假设有两台主机A、B和入侵者控制的主机X。假设B授予A某些特权,使得A能够获得B所执行的一些操作。X的目标就是得到与B相同的权利。为了实现该目标,X必须执行两步操作:首先,与B建立一个虚假连接;然后,阻止A向B报告网络证实系统的问题。主机X必须假造A的IP地址,从而使B相信从X发来的包的确是从A发来的。
我们同时假设主机A和B之间的通信遵守TCP/IP的三次握手机制。握手方法是:
A→:SYN(序列号=M)
B→A:SYN(序列号=N),ACK(应答序号=M+1)
A→B:ACK(应答序号=N+1)
主机X伪造IP地址步骤如下:首先,X冒充A,向主机B发送一个带有随机序列号的SYN包。主机B响应,向主机A发送一个带有应答号的SYN+ACK包、该应答号等于原序列号加1。同时,主机B产生自己发送包序列号,并将其与应答号一起发送。为了完成三次握手,主机X需要向主机B回送一个应答包,其应答号等于主机B向主机A发送的包序列号加1。假设主机X与A和B不同在一个子网内,则不能检测到B的包,主机X只有算出B的序列号,才能创建TCP连接。其过程描述如下:
X→B:SYN(序列号=M),SRC=A
B→A:SYN(序列号=N),ACK(应答号=M+1)
X→B:ACK(应答号=N+1),SRC=A
同时,主机X应该阻止主机A响应主机B的包。为此,X可以等到主机A因某种原因终止运行,或者阻塞主机A的操作系统协议部分,使它不能响应主机B。
一旦主机X完成了以上操作,它就可以向主机B发送命令。主机B将执行这些命令,认为他们是由合法主机A发来的。
§2.2 TCP状态转移的问题
上述的入侵过程,主机X是如何阻止主机A向主机B发送响应在的,主机调通过发送一系列的SYN包,但不让A向调发送SYN-ACK包而中止主机A的登录端口。如前所述,TCP维持一个连接建立定时器。如果在规定时间内(通常为75秒)不能建立连接,则TCP将重置连接。在前面的例子中,服务器端口是无法在75秒内作出响应的。
责编:豆豆技术应用
- Linux/Unix新闻
- Linux/Unix入门
- Linux/Unix命令
- Linux/Unix安装
- Linux/Unix编程
- Linux/Unix管理
- Linux/Unix桌面
- Linux/Unix内核
- Linux/Unix软件
- Linux/Unix发行版
- redhat/Fedora
- Ubuntu Linux
- IBM AIX
- FreeBSD
- Solaris
- NetBSD
- SCO Unix
- find基本用法
- ldd命令原理及用法例子
- su和sudo命令的区别与使用技巧
- Linux操作系统下的dd命令技巧
- 关于Top命令的参数详解
- 关于Tar命令的使用
- SSH实用技巧及常用命令使用
- Linux后台执行命令
- VI命令使用技巧集锦
- Vmstat命令列出的属性详解
- 如何查看及修改文件读写权限
- 最大可存储的单文件容量
- ext2/ext3文件系统介绍
- 常用压缩格式的压缩解压方法
- Linux系统的引导过程详细解析
- Configure参数解释说明
- Linux下硬盘和分区的命名方法
- 硬链接与软链接的区别
- 权限和所有权模型
- 存储设备的两种表示方法