谈网络安全的防范措施(原创) - 网络、编程相关 - 纵然情已逝

(这条文章已经被阅读了 104 次) 时间:2001-11-23 04:26:09 来源:纵然情已逝 (romantic) 原创-IT


纵然情已逝/文

浅谈网络安全的防范措施(原创)

摘要:网络安全正在日益受到广大的计算机用户的关注,特别是“9.11“事件的影响让我们对网络的安全有了更深一层的认识。在网络时代,如何有效的打造自己安全的计算机网络,如何有效的保护自己的重要信息,本文将向您介绍有关网络安全的几个方面,并向您提供了一些有效的防范措施与建议。
关键词:网络安全,防范措施

在Internet上有一批熟谙网络技术的人,其中不乏网络天才,他们经常利用网络上现存的一些漏洞,想方设法进入他人的计算机系统。有些人只是为了一饱眼福,或纯粹出于个人兴趣,喜欢探人隐私,这些人通常不会造成危害。但也有一些人是存着不良动机侵入他人计算机系统的,通常会偷窥机密信息,或将其计算机系统捣毁。这部分人我们称其为Internet上的”黑客”。
如今Internet火爆全球,可令人头疼的问题也随之而来,那就是由于”黑客”在网上的活动极具危害性及破坏性,网络安全问题已成为网络管理员头等关心的大事,也是决定Internet命运的重要因素。实际上已经出现许多个体网络由于自身安全受到威胁,而不得不被迫暂退出Internet的事件。
然而从根本意义讲,绝对安全的计算机是根本不存在的,绝对安全的网络也是不可能的。只有存放在一个无人知哓的秘室里,而又不插电的计算机才可以称之为安全。只要使用,就或多或少存在着安全问题,只是程度不同而已。我们在探讨网络安全的时候,实际上是指一定程度的网络安全。而到底需要多大的安全性,却要完全依据实际需要及自身能力而定。网络安全性越高,同时也意味着对网络使用的不便。因此,网络管理员在考虑网络安全时必须两者兼顾。可以假定某台计算机达到绝对安全(即前面所述不插电计算机),可是不幸的是这些台计算机却没有人可以使用。
在了解了如上网络安全的基本概念后,下面介绍为谋求合理的网络安全,我们推荐给系统管理员及普通用户的几种防范措施。
一、防火墙技术
一个使用很广泛的网络安全技术就是防火墙技术,即在Internet和内部网络之间设一个防火墙。目前在全球连入Internet的计算机中约有1/3是处于防火墙保护之下。
那么什么是防火墙呢?顾名思义,防火墙是用来阻挡外部(Internet)火情影响内部网络(Internal network)的屏障。无论外部世界多么复杂、良莠不齐,经过防火墙的过滤,内部网络大可隔岸观火,不受火灾危害。
用专业一点儿的话来描述,防火墙的主要目的就是防止外部网络的未授权访问。如果某个网络决定设定防火墙,那么首先需要由网络决策人员及网络专家共同决定本网络的安全策略(Security Policy),即确定什么类型的信息允许通过防火墙,什么类型的信息不允许通过防火墙。防火墙的职责就是根据本单位的安全策略,对外部网络与内部网络交流的数据进行检查,符合的予以放行,不符合的拒之门外。另外,还要确定防火墙类型,即防火墙拓扑。
防火墙的技术实现通常是基于”包过滤”(Packet Filtering)。而进行包过滤的标准通常就是根据安全策略制定的。在防火墙产品中,包过滤的标准一般是靠网络管理员在防火墙设备的访问控制清单(Access Control List)中设定。访问控制一般是基于以下标准:
a、包的源地址
b、包的目的地址
c、连接请求的方向(连入或连出)
d、数据包协议(如TCP/IP,DECnet等等)
e、服务请求的类型(如FTP,WWW,Goper等等)
……
需要说明的是,如前言所述,网络的安全性通常是以网络服务的开放性、便利性、灵活性为代价的。对防火墙的设置也不例外,由于防火墙的隔断作用,一方面加强了内部网络的安全,一方面却使内部网络与外部网络(Internet)的信息系统交流受到阻碍,必须在防火墙上附加各种信息服务的代理软件来代理内部网络与外部人信息交流,这样不仅增大了网络管理开销,而且减慢了信息传递速率。
因此,一般而言,只有对个体网络安全有特别要求,而又需要和Internet联网和企业网、公司网,才建议使用防火墙。
另外,防火墙只能阻截来自外部网络的侵扰,而对于内部网络的安全还需要通过对内部网络的有效控制和管理来实现。
二、加密技术
网络安全的另一个非常重要的手段就是加密技术(Cryptography)。它的思想核心就是既然网络本身并不安全可靠,那么所有重要信息全部通过加密处理。
1、单匙技术。即无论加密还是解密都是用同一把钥匙(Secret Key)。这是比较传统的一种加密方法。发信人用某把钥匙将某重要信息加密,通过网络传给收信人,收信人再用同一把钥匙将加密后的信息解密。这种方法快捷简便,即使传输信息的网络不安全,被别人截走信息,加密后的信息也不易泄露。但这种方法也存在一个问题,即如果收信者和发信者不在同一地理位置,那么他们必须确保有一个安全渠道来传送加密钥匙。但是如果确实存在这样一个安全渠道(如通过信差、长途电话等等),他们又何必需要加密呢?(当然如果你只希望将个人保存的信息保密,而并不需要发送给某人,那么这种技术是最好的方法。)后来出现的双匙技术解决了这个难题。
2、双匙技术。即有两个相关互补的钥匙,一个称为公用钥匙(Public Key),另一个称为私人钥匙(Secret Key)。公用钥匙是大家被告知的,而私人钥匙只有每个人自己知道。发信者需用收信人的公用钥匙将重要信息加密,然后通过网络传给收信人。收信人再用自己的私人钥匙将其解密。除了私人钥匙的持有者,没有人,即使是发信者,能够将其解密。公用钥匙是公开的,可以通过网络告知发信人(即使网络不安全)。而只知道公用钥匙是无法导出私人钥匙的。这种技术的缺点就是速度较慢。因此,如果需要传送的信息量很大,比较明智的作法是采用单匙技术将信息加密,而解密的钥匙则再用双匙技术加密传给对方。现有软件可直接实现这些功能(如PGP:Pretty Good Privacy)。
加密技术主要有两个用途,一是加密信息,正如上面介绍的;另一个是信息数字署名,即发信者用自己的私人钥匙将信息加密,这就相当于在这条消息上署上了名。任何人只有用发信者的公用钥匙,才能解开这条消息。这一方面可以证明这条信息确实是此发信者发出的,而且事后未经过他人的改动(因为只有发信息者才知道自己的私人钥匙),另一方面也确保发信者对自己发出的消息负责, 消息一旦发出并署了名,他就无法再否认这一事实。
如果既需要保密又希望署名,则可以将上面介绍的两个步骤合并起来。即发信者先用自己的私人钥匙署名再用收信者的公用钥匙加密,再发给对方,反过来收信者只需要用自己的私人钥匙解密,再用发信者的公用钥匙验证签名。这个过程说起来有些繁琐,实际上很多软件都可以只用一条命令实现这些功能,非常简便易行。
目前,加密算法有多种,大多源于美国,但是大多受到美国出口管制法的限制。
三、Inetd /Xinted
CERT即计算机就急小分队(Computer Emergency Response Team)是由美国联邦政府资助专门研究计算机及网络安全的组织,它们随时提供最新发现的计算机及网络安全问题,并提供一些解决方法。
要获得CERT的信息,可发电子邮件到:
[email protected]
Inetd(Internet Service Daemon)是系统的超级服务器,它使得一台机器上可以同时运行几十个服务器。它以这些服务器的名义同时侦听这些服务器的口(Port)。以SNMP服务为例,当侦听到口161有信号时,它会自动启动SNMP服务器。当SNMP服务完成后,SNMP服务器会自动关掉,Inetd继续以Snmpd的名义侦听161口。
Xinetd(Extented Internet Service Daemon)是Inetd的替代版本,它除了能够实现Inetd的全部功能外,还提供了一系列安全措施:
(1)控制系统只能接受某些来自指定IP地址或节点名的连接请求。这可以用于杜绝一些来自有坏纪录的节点的连接请求。
(2)控制系统只接受授权用户的连接请求。
(3)控制系统只在合法时间内接受请求。
(4)控制系统记录接受或拒绝的连接请求。
通常可以记录如下信息:
A、远程节点地址
B、远程节点的UID(在某些服务中)
C、登录和退出的时间
……
Xinetd是可以从网络上免费获得的软件(anonymons fop,mystique.cs.colorad.edu),建议系统管理员采用Xinetd代替Inetd.

四、妥善的系统管理将网络的不安全性降至现有条件下的最低
目前,在Unix上发现的大多问题,都归因于一些编程漏洞及管理不善,如果每个网络及系统管理员都能注意到以下几点,即可在现有条件下,将网络安全风险降至最低:
(1)口令管理。目前发现的大多数漏洞,都是由于口令管理不善,使”黑客”得以趁虚而入。因此口令的有效管理是非常基本的,也是非常重要的。
①首先绝对杜绝不设口令的帐号存在。这可以通过查看/ect/passwd文件发现。
②缩短口令有效时间,使用户经常更换口令。
③采用新版本口令管理软件。新的口令管理软件在用户设定一些容易被猜中的口令时,会自动拒绝接受,并提示用户重新选择口令。例如用户不能使用自己的名字、生日日期等做口令,不能选用英语单词做口令,等等。
另外,在比较新的Unix系统,passwd文件中的第二项(存放口令密码)均用X代替,而将口令密码放在一个只有root才可读的/etc/shadow文件中,这就杜绝了”黑客”在获得passwd文件后,将口令解密的可能性,提倡用户使用复杂的口令,例如可以用一句话作为口令(passphase)。
(2)用户帐号管理。在为用户建立帐号时,应注意保证每个用户的UID是唯一的,应避免使用公用帐号,对于过期的帐号要及时封闭,对于长期不用的帐号要定期检查,必要时封闭。(因为这样的帐号通常是”黑客”袭击的目标,他们可以在上面大做手脚而很长时间内不被发现。)
(3)Inetd/Xinetd的妥善管理。Inetd是超级服务器,它使得一台机器上可以同时运行几十个服务器。它以这些服务器的名义同时侦听这些服务的口(port)。当有服务请求到来时,它会启动相应的服务器,通过其配置文件/ect/inetd.conf可以对其进行合理配置。
(4)谨慎使用r命令。r命令可以使用户在不需提供密码情况下执行远程操作。因此,在方便的同时,也带来潜在的安全问题。
Unix系统中,系统是通过查看/ect/hosts.equiv及$HOME/.rhosts文件来控制可以使用r命令的节点及用户。所以,这两个文件的正确设置是使用r命令安全的基本保障。”黑客”在侵入某个Unix系统后,最通常做的一件事就是修改在主目录下.rhosts的文件,以便为自己日后再次进入系统留下后路。因此,建议用户在怀疑自己的系统被闯入时,马上查看.rhosts文件,检查其最后一次修改日期及内容,注意文件中绝对不能出现”++”,否则网络上任何一个用户不需知道你的密码就能任意进入你的帐户。
另外,还要特别注意.rhosts文件中不能涉及一些特殊帐户(例如news,bbs等等),一些”黑客”就是通过这条途径进入帐户而又不留下自己的来龙去脉。
可以看出,.rhosts为外部侵入留下了潜在的危险,用户自己在设置时要格外小心,如果不是特别需要,建议在.rhosts文件中不设入口。
对于系统管理员,如果不特别需要,建议在/etc/hosts.equiv中不设入口。如果/ect/hosts.equiv中有入口,而用户个人为了安全起见,可以在.rhosts中加入”–“,而关闭所有的入口。
此外,建议在这两个文件中不要加注释行(以#开头),因为有些特权的”黑客”可以将其节点名设成#而获得进入你系统的权力!
(5)X管理。X的使用无疑使计算机网络锦上添花。它除了提供好的图形用户界面,还可以使用户通过网络在本机调用远程节点的X程序。同时,也正是由于它广泛应用,物美价廉的X终端(X terminal)才得以倍爱欢迎。
X产生的宗旨原本就是通过client/server模型,使用户的本地界面可以显示(服务)网络上任何他系统的X客户程序;反过来,本机X客户程序也可以在网络上任何其他系统上显示。X的设计本身就是针对并构架于计算机网络环境的。然而在它给广大用户带来方便的同时,也正是由于它网络属性带来了不可避免的网络安全问题。
许多用户在醉心于X的网络功能带来的便捷时,往往意识不到自己同时为计算机的安全打开了一个缺口。在我们工作间隙,有不少同事开玩笑,在朋友的计算机屏幕上送一个”大钟”(xclock)或某张明星照,然后再跑过去观看他的反应,这些毕竟是善意的。但如果是一些心怀不轨的人,那不是很危险吗!如果你没有将自己的X妥善管理好,那么除了你的屏幕也许会受到你不希望的干扰外,更严重的是你屏幕上的显示及你敲键动作都有可能被远地某个不怀好意的人监视到。对于一个敏感数据或信息。例如口令,如果在输入时被人偷窥到,那么你的系统就毫无安全性可言了!
虽然要保证绝对的安全是不可能的,但下面将推荐几项措施,以保障你的X系统基本安全。
①设置X访问控制(Access Control)。X提供了基于节点的访问控制的基本手段。
②保护Xterm。Xterm是模拟字符终端提供的用户窗口,用户可以在命令提示符下键入各种命令。为了防止他人偷窥你在Xterm输入的内容,Xterm专门提供了Xterm保护功能,即在Xterm的主菜单下(同时按Ctrl和第一个鼠标键)选”Secure Keyboard”一项,这时Xterm应底色变黑。如果没有变色,则很有可能某个人正在监视你的Xterm。一般建议用户在输入敏感信息时,设Xterm保护。
(6)加强信息服务器的安全措施。如果对外开放的信息服务器本身是不安全的,就相当于在系统的防护罩上开了一个漏洞,那么其他的安全工作做得再多,也会付诸东流。因此,系统管理员和信息服务器的管理人员必须细心注意服务器本身的安全设置,并随时更新版本。目前,几乎所有的信息服务器(如www)均提供了安全设置途径。
五、Ethernet Sniffer
Sniffer是如今众多的Internet闯入的一种主要途径。
与电话专线不同,计算机网络是共享信道,这就意味着网上的计算机可以接收到网上传输的发往其他节点的信息。以Ethernet为例,信息被发往同一线路的每个节点,但只有地址与信息头中的目的地址相符的计算机,才接收这个信息包,而其他的机器均放弃。但是如果某台机器可能接受所有信息,而不论这些信息是发给谁的,这台机器就可以称之为Sniffer。它可以是网络管理人员用于管理的监视器,也可能成为”黑客”用于侵犯的基地。由于帐号与口令在Ethernet上是以文本格式传输的,因此,一旦”黑客”有办法控制Sniffer,网络上的所有机器均处于危险中。
六、一些有益建议
最后是写给系统及网络管理员的一些建议:
可以预见,系统及各种服务以及应用软件的漏洞会越来越多地被发现,然后被修补,同时,会有许多新的漏洞出现,再修补,是个循环往复的过程。因此,系统及网络管理员应该:
①及时与生产厂家联系,安装各种Security Patch;
②密切注意CERT消息;
③参加网络安全讨论小组。

写稿日期:二○○一年十月二十八日