计算机网络安全与防护
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.2 远程攻击的防范

网络技术在不断发展,远程攻击和防范正如矛与盾,两者的较量也许永远不会结束。防范远程攻击,不但要在技术层面上做好工作,而且要在管理层面上采取相应的措施。

3.2.1 防范远程攻击的管理措施

1. 使用系统最高的安全级别

在选择网络操作系统时,要求其提供最高安全等级。本书第2章介绍过“橘皮书”的有关内容,“橘皮书”使计算机系统的安全性评估有了一个标准。美国国家计算机安全中心于1987年出版了《可信网络指南》,该书从网络安全的角度出发,解释了准则中的观点,使得该书与《可信计算机系统的评价准则》一起成为网络安全等级标准的重要文献。

网络操作系统的安全等级是网络安全的根基,如根基不好则网络安全先天不足,在此之上的很多努力将无从谈起。例如,有的网络采用的UNIX系统,安全级别太低,只有C1级,而网络系统安全起码要求C2级。

因此,高安全等级的系统是防范远程攻击的首选。

2. 加强内部管理

为了对付内部产生的黑客行为,要在安全管理方面采取措施。

(1)必须慎重选择网络系统管理人员,对新职员的背景进行调查,网络管理要害岗位人员调动时要采取相应的防护措施(如及时更换系统口令)。

(2)确保每个职员都了解安全管理制度,如掌握正确设置较复杂口令的要求,分清各岗位的职责,有关岗位之间要能互相制约。

(3)企业与员工签订著作权转让合同,使有关文件资料、软件著作权和其他附属资产权归企业所有,以避免日后无法用法律保护企业利益不受内部员工非法侵害。

(4)将部门内电子邮件资料及Internet网址划分保密等级。

(5)定期改变口令,使自己遭受黑客攻击的风险降低。一旦发现自己的口令不能进入计算机系统,应立即向系统管理员报告,由管理员来检查原因。系统管理员也应定期运行一些破译口令的工具来尝试,若有用户的口令密码被破译出来,说明这些用户的密码过于简单或有规律可循,应尽快通知他们及时更正密码。

(6)加强技术管理,可以通过加强用户登录的安全性、使用用户自定义的桌面配置和实施用户安全策略来实现。

3. 修补系统漏洞

必须认识到任何系统都是有漏洞存在的,网络管理员应当及时堵上已知的漏洞并及时发现未知的漏洞。

首先,必须认真设置网络操作系统,并定期检查以防被黑客钻了空子。例如:

(1)为系统管理员和备份操作员建立特殊账户,使黑客难以猜出系统管理员和备份操作员的账户。

(2)关闭系统管理员远程访问能力,只允许系统管理员直接访问控制台。

(3)未经许可不得重装系统,因为重装系统会覆盖原来的系统设置,获取系统级特权。

(4)避免系统在注册对话框中显示最近一次注册用户名。

(5)注意设置好默认值,系统管理特权绝不使用默认,对关键目录,应将其默认值权限设为“只读”。

(6)合理配置FTP(文件传输协议),确保必须验证所有的FTP申请。

其次,可以使用检测工具发现漏洞。采取攻击型的安全检测手段,可以作为网络系统的最后一道安全防线。可以采用一些网络安全检测工具,以攻击方式而不是防卫方式对网络进行测试性侵入,找出现行网络中的弱点,提醒管理员如何堵住这些漏洞。此外,系统管理员要经常访问黑客站点和网络安全站点,以获取最新的漏洞信息。

3.2.2 防范远程攻击的技术措施

防范远程攻击的主要技术措施有防火墙、数据加密、入侵检测技术等。

1. 防火墙技术

防火墙被用来保护计算机网络免受非授权人员的骚扰与黑客的入侵。这些防火墙尤如一道护栏隔在被保护的内部网与不安全的非信任网络之间,如图3.5所示。

图3.5 防火墙的结构

防火墙可以是非常简单的过滤器,也可能是精心配置的网关,但它们的原理是一样的,都是监测并过滤所有内部网和外部网之间的信息交换,防火墙保护着内部网络敏感的数据不被偷窃和破坏,并记录内外通信的有关状态信息日志,如通信发生的时间和进行的操作等。新一代的防火墙甚至可以阻止内部人员将敏感数据向外传输。防火墙通常是运行在一台单独计算机之上的一个特别的服务软件,它可以识别并屏蔽非法的请求。例如,一台WWW代理(Proxy)服务器,使用者的Web访问请求都间接地由它进行处理,这台服务器会验证请求发出者的身份、请求的目的地和请求内容。如果一切符合要求的话,这个请求会被送到目标WWW服务器上。当目标WWW服务器处理完这个请求后并不会直接把结果发送给请求者,它会把结果送到代理服务器,代理服务器会按照规定检查这个结果是否违反了安全规则。当这一切检查都通过后,结果才会真正地送到请求者的手里。

总之,防火墙是增加计算机网络安全的手段之一,只要网络应用存在,防火墙就有其存在的价值。

2. 数据加密技术

数据在网络上传输时很容易被黑客以各种方法截获,这样就很容易造成一些机密信息泄露,给整个网络的安全造成隐患。因此数据加密作为一项基本技术已经成为所有通信安全的基石,数据在加密以后即使被黑客截获也不会造成机密泄露的问题。要实现数据加密技术,可以在通信的三个不同层次上实现:链路加密、节点加密和端到端加密。

数据加密是以各种各样的加密算法来具体实现的,它以很小的代价提供很强的安全保护。在多数情况下,数据加密是保证信息机密性的唯一方法。据不完全统计,到目前为止,已经公开发表的各种加密算法有几百种。通常把用来加密数据的另一类数据叫做密钥,如果按照收发双方密钥是否相同来分类,可以将加密算法分为常规密码算法和公钥密码算法。

常规密码体制中,收发双方采用相同的密钥,加密密钥和解密密钥是相同或等价的。这种密码体制的优点是有很强的保密强度,加密算法简便、高效,密钥简短,破译极其困难,能经受住时间的检验和攻击,但其密钥必须通过安全的途径传送。密钥的管理成为系统安全的最重要的因素。比较著名的常规密码算法有美国的DES密码及其变形、欧洲的IDEA密码、以代换密码和转轮密码为代表的古典密码等。在常规密码中影响最大的是DES密码。

公钥密码体制的收信方和发信方使用不同的密钥,而且几乎不可能从加密密钥推导出解密密钥。它的优点是可以适应网络的开放性要求,且密钥的管理问题也比较简单,尤其是可以方便地实现数字签名和验证。不足之处是其算法复杂,加密数据的速率较慢。比较常用的公钥密码算法有RSA、背包密码、McEliece密码、Diffe-Hellman、零知识证明的算法、椭圆曲线、ElGamal算法等。最有影响的公钥密码算法是RSA,它能抵抗到目前为止的所有密码攻击。

在实际应用中,人们通常将常规密码和公钥密码结合起来使用,例如用DES或IDEA来加密信息,而用RSA来传递会话密钥。

加密技术是远程攻击防范的最有效的技术之一,一个加密网络不但可以防止非授权用户的搭线窃听和入网,而且也是对付恶意软件的有效方法之一。

3. 入侵检测技术

目前的黑客资料和入侵工具充斥网络,攻击成功的案例也越来越多,仅仅是被动地进行防御已难以保证网络的安全。入侵检测是一种防范远程攻击的重要技术手段,它能够对潜在的入侵动作做出记录,并且能够预测攻击的后果。入侵检测的功能是用实践性的方法扫描分析网络系统,检查报告系统存在的弱点和漏洞,建议采取补救措施和安全策略。

入侵检测系统(IDS,Intrusion Detection System)就是这种能对潜在的入侵行为做出记录和预测的智能化、自动化的软件或硬件系统。按照检测功能的不同,入侵检测系统分为网络入侵检测系统(NIDS)、系统完整性校验系统(SIV)、日志文件分析系统(LFM)、欺骗系统(DS)等几种。

网络入侵检测系统通过对网络中传输的数据包进行分析,从而发现可能的恶意攻击企图。典型的例子是在不同的端口检查大量的TCP连接请求,以此来发现TCP端口扫描的攻击企图。网络入侵检测系统既可以运行在仅仅监视自己端口的主机上,也可以运行在监视整个网络状态的处于混杂模式的Sniffer主机上。

系统完整性校验系统用来校验系统文件,查看系统是否已经被黑客攻破且更改了系统原文件并留下了后门。系统完整性校验系统不仅可以校验文件的完整性,还可以对其他组件(如Windows注册表)进行校验。为了能够更好地找到潜在的入侵迹象,这类软件往往需要使用者有系统的最高权限。不足之处是这类软件一般没有实时报警功能,因此无法保证检测的可靠性。

日志文件分析系统通过分析网络服务产生的日志文件来获得潜在的恶意攻击企图。和网络入侵检测系统类似,这类软件寻找日志中的暗示攻击企图的模式来发现攻击行为。一般是通过分析HTTP服务器日志文件寻找黑客扫描CGI漏洞的行为。

欺骗系统通过模拟一些著名漏洞并提供虚假服务来欺骗入侵者以达到追踪入侵者的目的,一般称为蜜罐(Honey Pot)。如果对付经验不是特别丰富的黑客,可以完全不使用任何软件就可以达到欺骗目的。例如,重命名Windows上的Administrator账号,然后设立一个没有任何权限的虚假账号让黑客来攻击,一旦中计,攻击者的行为就会被记录下来。

尽管入侵检测系统在防范远程攻击中起着无法替代的作用,然而它也不能完全冻结黑客的入侵。随着科技的进步,黑客进行攻击的手段越来越多,也越来越巧妙,因此入侵检测系统也必须不断地“学习”和完善更新。