
摘要:在分析TCP/IP协议簇基本体系结构的基础上,针对TCP/IP协议本身存在的一些安全问题及其应用于Internet所带来的安全隐患,从不同角度讨论了各种可能的攻击策略和相应的防范措施,有助于基于TCP/IP协议的网络安全建设。
关键词:TCP/IP协议;因特网;欺骗;网络安全
前言
随着全球计算机网络的日益扩大,人们已充分认识到分布式网络系统带来的好处:高性能、高可靠性、高灵敏度、可扩充性以及系统的透明性等.然而,安全问题因网络的开放、互联而更加复杂.网上的信息传输量之大,系统之复杂使得对信息流动进行跟踪记录几乎不可能,数据的完整性、保密性难以保障.在电子商务、数字货币和互联网络银行等领域,安全问题显得尤为重要.因此网络安全已成为数据通信领域研究和发展的一个重要方向.在网络的各种传输协议中,TCP/IP是目前最为成熟可靠、应用最广的协议.其中主要有2种方法:重新制订一个安全的网络互连协议;在兼容目前网络系统的基础上开发网络安全产品来保证网络上的信息安全.目前采用前一种方法还不现实,因此唯一可行的解决方法就是采用网络安全技术来弥补它的缺陷,堵住安全漏洞,增强网络安全.
2 TCP/IP协议
TCP/IP协议并不完全符合开放式系统互连(OSI)参考模型. OSI参考模型是一种具有7层通信协议的抽象参考模型,其中每一层执行某一特定的任务.而TCP/IP通讯协议采用了4层的层次结构,即应用层、传输层、网络层和网络接口层,每一层通过呼叫它下一层所提供的网络服务来完成自己的需求。
3 TCP/IP网络安全性分析
3.1 网络嗅探及对策
网络嗅探是利用网络上的接口接收不属于本主机的数据.计算机网络通常建立在共享信道上,而在每一对主机之间都建立专门的连接线路代价太高,也没有必要,这就为网络嗅探提供了必要的条件.用户账号和口令等信息一般都是以明文的形式在网络上传输,所以一旦被黑客在杂错节点上嗅探到,用户就可能会遭到攻击.针对这一类攻击,可以采取以下措施予以防范:
(1)网络分段:一个网络段包括一组共享底层设备和线路的机器,通过网络分段可以对数据流进行,从而达到防止嗅探的目的.
(2)一次性口令技术:口令并不在网络上传输,而是在网络两端进行字符串的匹配.客户端利用从服务器上得到的口令(Challenge)和自身的口令计算出或从列表中选择一个新的字符串并返回给服务器.然后服务器利用相应的比较算法进行匹配,若不匹配则不允许建立连接,并且所有的Challenge和字符串仅使用一次,这样就从一定程度上了网络嗅探.
3.2 IP源地址欺骗及辨别
IP欺骗是网络黑客攻击系统最常用的手段之一,它常常是其它攻击方法的基础.TCP/IP协议用IP地址来作为网络节点的唯一标识,但节点的IP地址又是不固定的,因此攻击者可冒充某个可信任节点的IP地址,对主机进行攻击.IP源地址欺骗分为2种:外部源地址欺骗和内部源地址欺骗.
外部源地址欺骗中,一种是外部用户冒充内部用户进行攻击.这种情况下用户很好区分,因为它进入内部网络的唯一通道是路由器,而在广域网接口上不可能有内部源地址数据包进入.另一种是攻击者冒充你信任的网络进行连接,可采用基于地址信任的策略来防止这一攻击.
3.3 基于ICMP的攻击及对策
3.3.1 ICMP通道
ICMP是IP层的一部分,它是不同机器的IP软件之间传送差错和控制信息的无连接协议.ICMP报头有3个共同的域:类型、代码及校验和.
PING命令在发送一个ICMP Echo请求报文时,任何收到此报文的机器必须给源主机返回一个ICMP Echo回答报文,所以此命令可用来检测一个目的主机是否可达.PING命令普遍存在于TCP/IP网络及其子网中,所以防火墙和网络都允许PING通过而忽略了它的危险性:被用来进行拒绝服务攻击.
3.3.2 检测与防止
如果ICMP回应被允许的话,数据包过滤将无法检测到是否有秘密通道的存在.对ICMP这样一个无连接的协议,伪装的主机仍然可以将含有秘密数据的回应请求发到目标主机,引起该主机的回应,所以ICMP回应到信任主机是没有用的.目前虽然通过数据包过滤器可以检测数据域的内容是否合法,但这种应用还不是很广泛,并且不能完全防止欺骗.所以最好的办法就是拒绝网络上所有的ICMP回应.
3.4 路由欺骗及防范
每一个IP数据报或物理帧都会在主机的网络层被检查,以决定是转发给同一子网中的主机还是下一个驿站.所以所有的路由欺骗方法都是通过伪造路由表,错误引导非本地的数据报实现.
3.4.1 源路由选择欺骗
TCP/IP协议中,IP数据报为进行测试设置了一个选项:IP Source Routing,该选项可以直接指明到达节点的路由,攻击者可以利用这个选项进行欺骗和非法连接.其原理是攻击者冒充某个可信节点的IP地址,构造一个通往某个服务器的直接路径和往返路径,利用可信任用户作为通往服务器的路由中的最后一站,就可以向服务器发请求,对其进行攻击.在TCP/IP协议的2个传输层协议TCP和UDP中,由于UDP是面向非连接的,没有初始化的连接建立过程,所以UDP更容易被欺骗.防止源路由欺骗的方法有2种:一种是通过设置主机忽略重定向信息来防止路由欺骗,另一种是通过检测本机的常驻数据,查看此信息是否来自合法的路由器,以达到防止源路由欺骗的目的.
3.4.2 路由选择信息协议攻击
RIP协议用来在局域网中发布动态路由信息,它是为了对局域网中的节点提供一致路由选择和可达性信息而设计的,但各节点并不检查收到信息的真实性,因此攻击者可以在网上发布假的路由信息,利用ICMP的重定向信息欺骗路由器或主机,将正常的路由器定义为失效路由器,从而达到非法存取的目的.防止这种欺骗的方法是禁止路由器被动使用RIP和被动使用RIP的范围.
3.5 ARP欺骗及其对策
ARP协议的工作过程如下:IP数据包发送时会被发送到同一个子网的主机,源主机在ARP Cache中进行查询,就会向网络上所有主机广播一个包含目的主机IP地址、本机的物理地址和IP地址的特殊物理帧.每一个收到此帧的主机都会刷新自身ARP Cache中的IP-物理地址联编.目的主机还会向源主机发送一个包含自身IP地址和硬件地址的ARP应答.源主机收到此回答后,就会刷新Cache,此时就可以发送数据报了.
检测ARP欺骗:服务器可以通过向RARP服务器询问来检测客户的ARP欺骗,RARP服务器保留着网络中硬件和相关IP地址的信息.防止ARP欺骗:(1)不要把网络安全信任关系单独建立在IP或MAC基础上,理想的关系应该建立在IP+MAC基础上;(2)使用ARP服务器,通过该服务器查找自己的ARP转换表来响应其它机器的ARP广播,并确保这台ARP服务器不被黑客攻击.
3.6 DNS欺骗
当主机需要将一个域名转化为IP地址时,它会向DNS服务器发送一个查询请求;同样,把IP地址转化为域名时会发送一个反查询请求.这样一旦DNS服务器中数据被破坏,DNS欺骗就会产生.网络上的主机都信任DNS服务器,所以一个被破坏的DNS服务器可以将客户引导到非法服务器,也可欺骗服务器相信某个IP地址是被信任客户.
DNS欺骗可通过在本机上保留一个包含域名和相应IP地址的数据库来防止.每一个服务器至少要保存信任主机的信息.此外,一个冒充被信任客户的攻击者往往要进入负责保留攻击者的IP地址DNS服务器,修改反向查询表,这时就必须使用正向和反向查询表进行交叉查询来防范.除此之外,还存在2种可能的攻击:一种是基于嗅探和IP欺骗的攻击方法:拦截,这种攻击只能通过利用基于加密的终端协议来降低拦截的威胁;一种是服务拒绝攻击,这时,可以通过禁用Finger服务、关掉可能产生无限序列的服务和增加等待连接的队列长度并减少半连接的保存时间来进行防止.
4 结束语
综上所述,由于TCP/IP协议本身存在的缺陷和漏洞,给网络安全带来了一些隐患,所以必须采取一些附加的防范措施来降低对网络的攻击程度,从而尽可能地确保网络的安全.当然,它还存在许多由操作系统和防火墙所带来的网络安全问题,也是值得大家注意的.这些也正是要修改IPv4的主要原因之一。
参考文献
[1] 王立飞.我国计算机网络的发展[D]. 华中科技大学,2010
[2] 杨英俊.j计算机网络[D]. 华中科技大学,2010
[3] 肖潇. 网络安全的发展趋势[D]. 华中科技大学,2010
[4] 陈雷. 算法分析D]. 华中科技大学,2008
[5] 尹华飞. 基于网络安全的发展趋势 [D]. 华中科技大学,2009
[6] 严灵毓. 制约我国网络安全发展的因素[D]. 华中科技大学,2010
