赵华
(山西焦煤集团西山煤电集团公司医保中心山西太原030053)
随着互联网的发展,大型数据库管理信息系统的普及,以及智能终端(比如iPhone或iPad)的广泛应用,网路化的办公环境和无线手机电子商务应用变得普及,甚至已经成为日常生活的一部分。在这个大背景下,如何保证网络安全已经成为日新月异的研究课题。
网络的安全研究有很多的组成部分,其中主要的几个部分包含网络安全的目标、攻击与防御、加解密算法、数据安全验证以及网络接入安全。一个安全的网络系统必须提供数据的机密性,数据的可鉴别性、数据的完整性、数据新鲜性、数据的向前保密性以及数据向后保密性。为了达到这些目标,新近开发的对称加密、不对称加密算法、数字签名技术、和消息认证技术成为支持网络安全的基石。然而,若干的网络攻击也应运而生。如何保证网络安全并没有一个放之四海而皆准的方案,解决方案需要对具体问题进行具体分析与论证。
网络安全是有着及其广泛的组成部分[1,2]。典型的网络安全系统的目标包含数据的机密性、数据的可鉴别性、数据的完整性、数据新鲜性、数据的向前保密性以及数据向后保密性,这些网络系统安全目标并非相互独立,而是有这互相关联的密切关系。
①数据机密性:保证传输数据信息不被非法窃取,并且信息智能被授权实体获得,其他未授权实体不能通过窃听或者读取内存等手段获取信息[3]。由于现代计算机网络的数据接入已经被3G或者WiFi网络统治,被部署在开放的环境中[4],所以应采取端到端的加密方式阻止攻击者获取信息内容成为当代最为流行的先进的数据机密性保证方式,并且在一个安全的网络系统中,这些密匙只有特定的授权实体才能拥有,一般的网络参与者不能获得其他参与者的密钥;
②数据可鉴别性:由于攻击者能够仿造虚假信息注入网络,所以接受方必须要确定数据的来源。数据鉴别一般可以分为单一通信和广播通信,单一通信是指发送者与接受者意义对应,其数据认证通过附带有共享密匙的消息认证码(MAC)进行。而对数据的鉴别不仅仅应用于计算机网络中,也用于控制网络的电网之中[5],在这些关系国计民生的系统中,有着对于数据接收到的报文的真伪性进行逐一鉴定的严格要求;
③数据的完整性:数据信息在传输过程中,无论信息是被有意还是无意的更改,都能被接受者发现。而在现代无线网络传输中,偷听节点可以被安置在任何一个不被轻易发现的地方,使得数据泄漏甚至窜改变得异常容易。网络安全系统应使得节点能够在确定信息不完整后,执行相应的处理机制,比如申请发送节点重传,或者应用高级的纠错码进行容错处理[6];
④数据新鲜性:保证数据在其失效范围内被传输给相应实体,表示数据时最新产生的。这点在物联网,机器与机器通信,以及无线传感器网络尤为重要。在这些系统中,数据的准确性和实时性都及其重要。如果数据完整且无错的传输到接受端,但是中间经历的延时太长,那么数据也将是无用的。在这些系统中,通常采用时间同步或序列号机制防止重放攻击和消息中转攻击;
⑤数据的向前保密性:在计算机网络、移动电话网、无线物联网或传感器网络中,任何离开通信区域的节点或已完成的完整会话的不能够获取之后这个网络所产生的数据信息。这样整个系统保证了参与者节点(简称节点,下同)的新鲜性,而且一个不活跃的节点将被踢出这个网络服务范围,使得某些偷听攻击的可能性减小;
⑥数据向后保密性:在一个网络中,任何刚加入的节点或已完成的认证的用户不能够获取之前网络所产生的数据信息,这就保证了网络服务对历史客户的数据安全性。
安全威胁是指对某一资源的机密性、完整性或合法使用所造成的危害。安全攻击是安全威胁的具体实施形式,是指采用某种方法或技术故意躲开安全形同的安全策略的行为。安全威胁可以分为故意的威胁和无意的威胁,故意的威胁是指采用某种技术或者方法破坏网络的行为,无意的威胁是指非人为因素造成的威胁。故意的威胁有2种形式:主动攻击和被动攻击。主动攻击试图改变系统资源,而被动攻击试图获取或者利用系统的信息,但是不会影响系统的资源。
主动攻击采用的主要方式有以下几个:
①窃取破译:主要是以不正当手段获取口令和密钥,或者对加密信息与加密机制进行破译或者篡改,这是对加密型的攻击;
②未授权访问:指未经授权的实体访问了网络信息,并可能篡改信息的情况;
③修改:在未经授权的情况下访问数据,并且对数据做了修改,这是对完整性的攻击;
④重放:捕获数据包,等待一段时间后从新传送,攻击者记录下任何保持不变的认证信息,接着重放前面发送的正确信息,以此骗过认证系统;
⑤拒绝服务(Denial of Service,DoS):妨碍和阻止通信设备的正常使用和管理。这种攻击有详细的目标。DoS攻击的方式有很多种,利用合理的服务请求来占用过多的服务资源,致使服务超载,无法响应其他的请求。
被动攻击的主要方式有以下几个:
①消息内容泄露:偷听他人的数据包,以窃取数据包中可能包含的机密和私有信息;
②流量分析:分析网络的传输流,目的是要从中标记处一些对攻击者有用的信息,比如传输的频率、通信双方的标识和数据包的大小。
主动攻击能够检测出来,因此可以采用检测的方法来对付主动攻击。由于很难绝对预防主动攻击,所以在任何情况需要对所有的通信设备和路径进行完全的保护。相反,被动攻击不会对数据进行改动,因而很难被检测出来。处理被动攻击的重点是预防而不是检测。
加密技术是对信息进行编码和解码的技术,编码是把原来可读信息(又称明文)译成代码形式(又称密文),其逆过程就是解码(解密)。加密技术的要点是加密算法[7],加密算法可以分为对称加密和不对称加密算法。
对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、计算量小、加密速度快和加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。
不对称加密算法使用2把完全不同但又是完全匹配的一对钥匙—公钥和私钥[5],和原来的对称密码不同,原来双方使用同一个密码,除了自己保存外,如果跟别人通讯,则要求对方也有同样的密码,就存在密码泄漏的可能。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。公钥和私钥是相对的,二者本身并没有规定哪一个必须是公钥或私钥。由于不对称算法拥有2个密钥,因而特别适用于分布式系统中的数据加密。
数字签名技术(Digital Signature)是不对称加密算法的典型应用。数字签名就是通过一个单向函数对要传送的报文进行处理得到的用以认证报文来源,并核实报文是否发生变化的一个字母数字串。首先发信者在发信前使用哈希算法求出待发信息的数字摘要,然后用私钥对这个数字摘要,而不是待发信息本身进行加密而形成一段信息,这段信息称为数字签名。发信时将这个数字签名信息附在待发信息后面,一起发送过去。收信者收到信息后,一方面用发信者的公钥对数字签名解密,得到一个信息摘要;另一方面把收到的信息本身用哈希算法求出另一个信息摘要,再把2个摘要相比较,看看二者是否相同。根据哈希函数的特性,可以让简短的摘要来“代表”信息本身,如果2个摘要完全符合,证明信息是完整的;如果不符合,就说明信息被人篡改了。在数字签名应用中,发送者的公钥可以很方便地得到,但他的私钥则需要严格保密。
为了避免网络在运行过程中被监听通信、冒充节点或者提供虚假信息,必须对通信的内容进行加密和认证,已确保通信内容不被窃取和篡改。网络安全认证研究重点有:
①数据机密性问题:在通信和储存的过程中要保证所有敏感数据的机密性,不能让攻击者在截获屋里信号后获取通信内容,并且也不能让攻击者在捕获物理节点后获取其上所储存的敏感数据;
②消息认证问题:节点在接受到来自其他节点的消息时,能够确认此数据包确实来自源节点,而不是恶意节点冒充的;
③身份认证问题:当节点接收到一个用户发出的数据请求是,能够确认此数据包确实是授权用户发出的;
④数据完整性问题:节点或用户在接收到数据包后,能够确认数据包是否完整,是否已被攻击者篡改或者在传输中出错;
⑤数据新鲜性问题:任何数据本身是具有时效性的,节点应具有判断数据包是否是原数据发送者最新产生并发送的能力。造成数据新鲜性问题通常有2种原因:一是由于网络动态特定而导致的数据包发送时序出错甚至是丢包问题的产生,二是由于恶意节点的重新攻击而引起的;
⑥系统鲁棒性问题:各种新生的服务应用对网络的适应性和存活性有着较高的要求,即使某些节点因为攻击而失效,其影响应该被控制在最小范围内,并且节点少数的失效或者被俘获并不会导致整个网络的瘫痪。
无线手机只能手机和笔记本作为新式网络接入的代表,已经广泛应用于整个信息系统中,而这些新型的接入网络对网络安全带来了新的约束和挑战。
①部署区域的开放性:网络一般被部署在使用者无法达到的区域,所以非常有可能受到环境的影响而失效;
②节点部署的随机性:节点往往被随机的布置在监控区域,任何节点的位置是无法预知的。同时任何两个节点之间的位置关系也是随机的;
③无线信号的开放性:节点间通信信号是暴露在物理空间中,具有广播特性,任何设备只要调制就可干扰和破坏信号。
总而言之,计算机的安全问题除了它自身的问题之外还涉及很多方面,如:技术、管理和使用等。网络安全是一个综合性的课题,一般情况来讲,一种技术并不是万能的,只能解决某一个方面的问题。因此,需要有完善的系统开发过程、严密的网络安全风险分析、严谨的系统测试、综合的防御技术实施、谨慎的保密政策、科学的安全策略。综合应用才可以确保信息的完整性和正确性,这也是现代计算机网络安全领域发展的要求。
[1]CHEN Zhen,HAN Fu-ye,CAO Jun-wei,et al.Cloud Computing-based Forensic Analysisfor Collaborative Network Security Management System[J].Tsinghua Science and Technology,2013,18(1):40-50.
[2]BERA P,SANTOSH K.DASGUPTA G,P.Integrated Security Analysis Framework for An Enterprise Network-A Formal Approach[J].IET Information Security,2010,4(4):283-300.
[3]CHASAKID,WOLFT.Attacksand Defensesin the Data Plane of Networks[J].IEEETransactionson Dependable and Secure Computing,2012,9(6):798-810.
[4]张美平,许力,沈金波.无线多媒体传感器网络共享密钥发现协议设计与实现[J].微计算机应用,2009(7):12-20
[5]VAIDYA B,MAKRAKISD,MOUFTAH H T.Authentication and Authorization Mechanismsfor Substation Automation in Smart Grid Network[J].IEEENetwork,2013,27(1):5-11.
[6]郑国强,李建东.无线传感器网络MAC协议研究进展[J].自动化学报,2008,34(3):43-45.
[7]CALOYANNIDEM.A.Encryption Wars:Early Battles[J].IEEESpectrum,2000,37(4):37-43.