1IPSecVPN的安全性分析
IPSecVPN在安全方面的优势有:1)ESP使用了当前流行的密码学算法DES-CBC对保护的IP数据进行加密解密,使用HMAC-MD5-160和HMAC-SHA1-120认证算法,数据加密强度足够高,尤其适合对安全性要求很高的用户选择使用;2)IPSec的密钥管理功能非常好。由于ESP协议把加密与协议本身分开处理,因此加密算法有更多选择,为进一步提高IPSecVPN的安全性提供了可能;3)在隧道模式下,IPSec对IP数据报的封装方式还可以防止偷听者分析源和目标之间的通信量。在隧道模式下,IPSec对原来的IP数据报进行封装和加密,再加上了新的IP头,如果ESP用在网关中,外层的未加密IP头包含网关的IP地址,而内层加密了IP头包含的才是真实的源地址和目标地址。偷听者截获的也至多是网关的地址,从而保护了通信双方的真正IP地址安全;4)IPSecVPN在VPN交换机上,通过支持所有领先的通道协议、数据加密、过滤/防火墙、通过RADIUS、LDAP和SecurID实现授权等多种方式保证安全。安全是相对的,绝对安全只是一种理想。尽管采取了较好的加密算法和认证协议,但IPSec技术的产品并不一定意味着安全。与其他安全产品和安全协议一样,IPSec也可能被攻击和受到危害。即使有完善的密码算法,足够的密码强度,层出不穷的主动攻击仍有可能攻破建立起来的安全通道。1)实现方式攻击。实现方式攻击是IPSec安全系统中最常见的攻击方式,这种攻击方式并不仅仅存在于IPSec协议中,在PPTP协议中也存在这种攻击方法。通信的双方通过安全联盟(SA)建立新的通信,但当一方建议使用一种加密/鉴别算法,而另一方建议使用另一种加密/鉴别算法时,如何协调使用双方建议的算法,则由厂商决定如何实现这些选择,但这种强制性选择会降低安全性;2)剪贴攻击和短块攻击。剪贴攻击的攻击方法是骗取接收端的信任,使接收端解密敏感数据,并将这些数据泄露给攻击者。阻止攻击方对密文数据的修改是防止此类攻击的方法。短块攻击是针对一种特定情况,即当传输的最后报文块包含一个1字节长的明文,并且该报文块的剩余部分由随机数填充的情况下,就有可能遭受短块攻击;3)利用ESP漏洞攻击。远程攻击者利用IPSec的封装安全负载(ESP)出现的漏洞,伪造包含已知源、目的地址和序列号码的、非常短的ESP包,蒙混过关,发送给IPSec实现处理时使内核出现错误,从而实施拒绝服务攻击;4)安全的证书授权(CertificateAuthorityCA)非常必要。安全联盟密钥管理协议(ISAKMP)标准并没有没有指出采用何种类型的CA,也没有说明证书类型的标识和证书交换,甚至没有明确特定的数字签名算法。如果接收端使用了一个不安全的CA,或者把自己作为CA,如果攻击者破坏了CA,将来所有的通信都是会受到安全方面的威胁;5)密钥管理协议(IKE)中的不同步问题,也会造成安全性的降低。在IPSec的IKE说明中,会话的终止无法让发送方和接受方同时知道,双方不能同时停止动作,如果接收端停止会话,可是发送端还会发送数据,此时如何阻止接收端接收这些数据就显得很关键了。尽管IPSec还存在不少问题,但它支持多种数据加密方式和身份认证方式,技术成熟,安全性得到实践证明,它仍然是作为站点到站点的VPN事实上的标准。
2SSLVPN安全性分析
SSLVPN使用的是SSL协议,该协议对应用层是独立的,高层协议都可以透明地运行在SSL协议上。SSL的基本目标是实现两个应用实体之间安全可靠的通信。用握手协议定义了对称密钥之后,所有通信都被加密传送。SSL数据加密的安全性由加密算法来保证,由于可供采用的加密算法不止一种,并且算法本身也有相当好的抗解密能力,所以在连接上的保密性是可以信赖的。报文传输期间,由于是利用安全散列函数进行数据完整性检验,因此SSL提供的连接的可靠性得到了足够保证。SSLVPN采用SSL协议通信端口443作为远程主机与SSLVPN网关之间的传输通道,这个通信端口一般是作为Web服务器对外的数据传输通道,因此,不需要在防火墙上作任何修改,也不会因为对不同应用系统的需求而修改防火墙上的设定,如果所有后台系统都通过SSLVPN的保护,那么防火墙只开启一个443端口就可以了,大大降低了端口开放过多带来的安全隐患。
3IPSecVPN与SSLVPN安全性比较
IPSecVPN是在网络层建立虚拟安全通道,而SSLVPN则是在应用层建立虚拟安全通道,两者的实现目标是一致的,但由于技术实现上的区别,从而导致应用方式不同,不同的应用方式相应带来不同的非安全因素,这些非安全因素带来的对通道的安全威胁程度也是不尽相同的。加密算法。SSL和IPSec都支持大部分的算法标准,有所区别的是IPSec还支持AES,SSL不支持AES,但TLS(TransportLayerSecurity,传输层安全标准,是对SSL协议的改进)支持。IPSec的每一个连接都由安全会话控制着,使用IPSecVPN,只要使客户端软件和网关的参数设置一样,就可以在连接中采用特殊的密码算法。而使用SSLVPN时,需要更改参数设置的是浏览器,但不是所有的浏览器都支持所有的密码算法。在这一方面IPSecVPN显然略胜一筹。认证。SSLVPN和IPSecVPN都支持双向验证。IPSec客户端可以预先设置特定的服务器证书,或者只接受企业规定的用户名/密码。SSLVPN所采用的认证方式不同,当服务器发来新的证书时,它会提示用户,由用户自己选择接受或拒绝这个证书。虽然服务器证书可以预先安装到浏览器上,但是这样做SSL不需要安装、配置客户端的优势就不明显了。IPSecVPN要求客户端安装相应软件并进行配置,使用数字证书或是一组预共享密钥来做认证,并与双方设备的网络参数、策略设置和设备的IP地址等都有直接的关系,所以对于普通远程连接是相当安全的。相反,SSLVPN用户可以随意地在公共场所登录远程网络,黑客可能会利用客户端浏览器留下的Cookie信息通过SSL建立的隧道攻击内网。针对这一点,现在SSLVPN产品都支持超时断开功能,在一定时间内没有VPN流量,则VPN连接自动断开,比如,深信服的SSLVPN产品还会有一个人性化的提示,以供选择停止还是继续。在VPN断开以后,自动清理Cookie,从而消除这方面的安全隐患。所以在认证方面,两者没有太大差距。防攻击。若远程用户以IPSecVPN的方式与公司内网建立连接,企业内部网络所连接的应用系统,黑客都可以侦测得到,这就给黑客攻击提供了机会。当然,既然知道了问题所在,自然不会坐以待毙,邮政系统的做法就是在内部应用系统设置安全防御,进入VPN以后,在进入各个应用系统之前,还需要相应的安全登录步骤。即便黑客进入VPN网络,短时间内也只能在里面瞎转悠,如果在VPN网关或者应用系统网关上设置无流量超时退出,那么即便VPN被攻破,仍然可以保证内部应用系统的安全。SSLVPN在应用层上建立连接后,直接开启应用系统,这样侦测出内部网络的应用系统的几率就会降低,而且受威胁的也仅是所联机的这个应用系统,攻击机会相对较少。病毒。首先来看SSLVPN的防病毒优势。若采用IPSecVPN联机,若远程客户端电脑受到病毒感染,病毒就有机会感染到企业内部网络所连接的每台电脑,而对于SSLVPN连接,病毒传播仅局限于被访问的主机,而且是针对该主机应用系统类型的病毒才有可能感染到这台主机,这使得病毒通过SSLVPN连接感染内网的可能性大大减少。其次,来看IPSecVPN的优势。因为IPSecVPN在每一台接入电脑上都安装了客户端程序,仅从这一点,安全性就比随意接入的SSLVPN要高,再者,IPSecVPN客户端的每次登录都要求特定的用户名文件和密码,这些用户名文件都有专门机构统一管理,如果密码强度足够,安全性能自然更有保障。
4结论
基于SSL技术构建的VPN是新兴的一个热点,主要面向大量用户提供有限访问,为他们提供一种简单的安全接入方式。IPSec是目前构建VPN的主要的、成熟的技术,成为主流标准,IPSecVPN提供了网络层的接入和保密,可以为所有的应用提供安全访问,在实现站点到站点的安全连接方面的作用是不可替代的。面对网络安全的各个方面,不可能有一种解决方案能解决所有安全问题,IPSecVPN主要用于保护内部网络,而SSLVPN主要用于实现远程客户通过浏览器实现的应用安全,两者更多的是功能上的互补,而非完全的对立。因此,邮政选择IPSec和SSL融合一体的VPN产品显然是正确的。在使用的过程建筑工程论文中,采取哪种安全防范措施,需根据具体的应用情况区别应对。
作者:孙惠萍 单位:宿州市邮政局