在IPv4网络中存在着不少安全漏洞,其中对于网络基本架构层中的TCP IP协议也同样有着严峻的安全问题。所以,对于安全方面的分析就是我们接下来要探讨的内容了。目前在Internet上使用的是TCP IP协议。TCP IP协议叫做传输控制/网际协议,它是Internet国际互联网络的基础。TCP IP是网络中使用的基本的通信协议。其中IP(Internet Protocol)全名为"网际互连协议",它是为计算机网络相互连接进行通信而设计的协议。TCP(Transfer Control Protocol)是传输控制协议。TCP IP协议是能够使连接到网上的所有计算机网络实现相互通信的一套规则,正是因为有了TCP IP协议,因特网才得以迅速发展成为世界上最大的、开放的计算机通信网络。
从表面名字上看TCP IP包括两个协议,传输控制协议(TCP)和互联网际协议(IP),其实TCP IP实际上是1组协议的集合,它包括了上百个各种功能的协议。如:远程登录、文件传输和电子邮件等等,而TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。IP协议之所以能使各种网络互联起来是由于它把各种不同的“帧”统一转换成“IP数据报”格式,这种转换是因特网的一个最重要的特点。所以IP协议使各种计算机网络都能在因特网上实现互通,即具有“开放性”的特点。
TCP IP协议的基本传输单位是数据包(datagram)。TCP协议负责把数据分成若干个数据包,并给每个数据包加上包头,包头上有相应的编号,以保证在数据接收端能将数据还原为原来的格式,IP协议在每个包头上还要加上接收端主机地址,这样数据通过路由器中的MAC地址来确定数据的流向,如果传输过程中出现数据丢失,数据失真等情况,TCP协议会自动要求数据重新传输,并重新组。总之,IP协议保证数据的传输,而TCP协议保证数据传输的质量。TCP IP协议数据的传输基于TCP IP协议的4层结构:应用层、传输层、网络层、接口层。
各TCP IP协议层存在的安全漏洞
链路层存在的安全漏洞
我们知道,在以太网中,信道是共享的,任何主机发送的每一个以太网帧都会到达别的与该主机处于同一网段的所有主机的以太网接口,一般地,CSMA/CD协议使以太网接口在检测到数据帧不属于自己时,就把它忽略,不会把它发送到上层协议(如ARP、RARP层或IP层)。如果我们对其稍做设置或修改,就可以使一个以太网接口接收不属于它的数据帧。例如有的实现可以使用杂错接点,即能接收所有数据帧的机器节点。解决该漏洞的对策是:网络分段、利用交换器,动态集线器和桥等设备对数据流进行限制、加密(采用一次性口令技术)和禁用杂错接点。
网络层安全漏洞
几乎所有的基于TCP IP的机器都会对ICMP echo请求进行响应。所以如果一个敌意主机同时运行很多个ping命令向一个服务器发送超过其处理能力的ICMP echo请求时,就可以淹没该服务器使其拒绝其他的服务。另外,ping命令可以在得到允许的网络中建立秘密通道从而可以在被攻击系统中开后门进行方便的攻击,如收集目标上的信息并进行秘密通信等。解决该漏洞的措施是拒绝网络上的所有ICMP echo响应。
IP安全漏洞
TCP IP协议中的IP包一旦从网络中发送出去,源IP地址就几乎不用,仅在中间路由器因某种原因丢弃它或到达目标端后,才被使用。这使得一个主机可以使用别的主机的IP地址发送IP包,只要它能把这类IP包放到网络上就可以。因而如果攻击者把自己的主机伪装成被目标主机信任的友好主机,即把发送的IP包中的源IP地址改成被信任的友好主机的IP地址,利用主机间的信任关系(Unix网络软件的开发者发明的术语)和这种信任关系的实际认证中存在的脆弱性(只通过IP确认),就可以对信任主机进行攻击。注意,其中所说的信任关系是指一个被授权的主机可以对信任主机进行方便的访问。所有的r*命令都采用信任主机方案,所以一个攻击主机把自己的IP改为被信任主机的IP,就可以连接到信任主机并能利用r*命令开后门达到攻击的目的。解决这个问题的一个办法是,让路由器拒绝接收来自网络外部的IP地址与本地某一主机的IP地址相同的IP包的进入。