探讨网络中地址映射的安全问题
探讨网络中地址映射的安全问题
作者:赵媛媛
来源:《硅谷》2011年第01
        摘要: 随着网络的发展,技术的进步,网络安全面临的挑战也在增大。目前,在众多网络协议中,地址解析协议(Address Resolution ProtocolARP)是非常容易受到攻击的。为了有效地对付网络中非法用户对ARP协议的各种攻击,我们提出一种安全的地址映射协议(SARP),从而实现IP地址到硬件地址的安全映射。
        关键词: 网络安全;地址映射;ARPSARP
        中图分类号:TP3文献标识码:A文章编号:167175972011011018901
       
        1 计算机网络面临的安全问题
        我们已经进入二十一世纪,网络已经成为信息社会的命脉和发展知识经济的重要基础。随
着网络的发展,技术的进步,网络安全面临的挑战也在增大。网络上的入侵事件不断发生。现在,网络面临的安全问题不仅仅来自于系统本身,更多的是某些居心叵测的人利用自己的专业知识,使用截获、中断、篡改、伪造等方式来从网络上窃听他人通信内容和伪造信息,更为严重的是某些恶意破坏分子利用病毒来破坏系统的稳定性,这给给整个网络带来了破坏性的灾难和不可估量的损失。当网络的用户来自社会各个阶层的部门时,大量在网络中存储和传输的数据就必须得到保护。于是,人们根据不同的网络安全隐患,研究出许多方法来抵御网络的攻击,比如防火墙,认证,加密技术等都是当今常用的方法。但网络安全仍然是人们一个优待研究的话题。
        2 地址解析协议(ARP
        目前,在众多网络协议中,地址解析协议(Address Resolution ProtocolARP)是非常容易受到攻击的。
        2.1 ARP简介
        地址解析协议(ARP)是在仅知道主机的IP地址时确定其物理地址的一种协议。它用于
IP地址映射为硬件地址,也就是主机在发送帧之前将目标IP地址转换到目标MAC地址的过程,它是TCP/IP协议簇中的一个非常重要的协议。
        2.2 ARP存在的安全问题
        ARP十分简单,在Internet中得到了广泛应用,但其自身存在着极大的安全隐患。ARP协议的基础就是信任局域网内所有的人,它对ARP请求(应答)的真实性不作任何验证,是一个无认证的协议。为了减少网络流量,ARP模块在接收到一个ARP请求(应答)时,会把获得的<IPMAC>地址对更新ARP缓存表。也就是说,从网上收到的任何ARP请求(应答)都会更新主机的缓存表,而不管其是否真实。因此,ARP非常容易受到攻击。典型的一种方法称为ARP伪装,下面简单分析ARP伪装的原理。
        如(图1),Z为攻击主机,利用ARP协议的无认证特性,ZX发送一个以<IPyMACz>为源地址的ARP包,就会更新XARP缓存表.使XIPy的物理地址解析为MACz。同理,也可使YIPx的物理地址解析为MACz,这就是ARP伪装技术。
        Z应用ARP伪装技术修改XYARP缓存表后,XY发给对方的IP数据包都会发向物
理地址MACzXY可以继续向对方发IP数据包,但对方收不到,XY之间的网络通信无法实现。
        ARP的安全问题会导致许多危害,比如引网络连接不通畅,断网或遭到病毒袭击等。
        3 安全ARP的实现
        为了有效地对付网络中非法用户对ARP协议的各种攻击,我们提出一种安全的地址映射协议(SARP),它可以安全的将IP地址转换成物理地址,从而实现安全的地址映射。
        3.1 SARP协议结构
        首先,在局域网中增加一台映射服务器,用于存储网络中各台主机IP地址和MAC地址。地址映射不再通过主机之间的ARP进行,而通过主机与映射服务器之间的SARP协议来完成。SARP协议分为地址收集协议和地址映射协议。
        3.1.1 地址收集协议
        地址收集协议用于服务器收集各个主机的IP地址和MAC地址,并维护地址映射的有效性。
        3.1.2 地址映射协议
        主机通过地址映射协议向服务器发出地址映射请求,服务器进行地址映射,返回所请求的目的主机的MAC地址。
        3.2 SARP协议工作原理
        SARP协议本身也会受到同一网络中非法用户的攻击,我们假定非法用户可以实施下面两种类型的攻击:
        1)信息修改:在服务器或主机发出消息之后,非法用户截取并且纂改消息的内容,接受方收到的是已被纂改的消息。
        2)信息重放:在消息发出之后,非法用户截取消息并用以前发送过的同一类型消息替代。
        为了对抗这些攻击,SARP使用了如下的安全机制:
        1)完整性检查:为了防止非法用户修改消息,可以对消息实施完整性检查。首先,为网络中每一台主机分配一个唯一的密钥(记为scr),服务器和该台主机共享该密钥。密钥被用来计算每条消息的验证码。例如:假定消息为acpt(ciphd)acpt表示消息名,ciphd表示消息的三个域),那么消息验证码m=MD(ciphdscr)。这里,MD是一个消息摘要函数,可以使用MD5SHAHMAC等算法。消息验证码被添加到待发送的消息中,因此上述消息变为acpt(ciphdm)。如果消息被非法用户修改,变成acpt(c'ip'hd'm')。接受方受到消息后,重新计算消息验证码m”=MD(c'ip'hd'scr),由于m”≠m',接受方可以知道消息已被扬篡改。
        2)使用nonce避免重放攻击:nonce是一个唯一的不重复整数,通常可用随机数来模拟。如果服务器或主机需要发送一条消息并期待回复,那么发送方在消息中附加nonce,接收方收到该消息后,取出nonce并附加到回复中。最后,发送方收到回复,检查回复中nonce是否和最近一次发出消息所使用nonce相同,如果相同则说明该回复消息不是由非法用户重放产生,可以信任。
        SARP协议实现了IP地址到硬件地址的安全映射,并且具备原ARP协议的两个重要特性:支持动态地址分配和探测失败目标。
        4 结束语
        随着硬件技术和并行技术的发展,计算机的计算能力迅速提高,对网络的攻击方式层出不穷,原来认为安全的加密方式有可能失效。另外,随着网络应用范围的不断扩大,使人们对网络依赖的程度增大,对网络的破坏造成的损失和混乱会比以往任何时候都大,这对网络信息安全保护提出了更高的要求,而网络安全技术必然会随着网络应用的发展而不断发展。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。