安全扫描浅谈

发表于:2007-07-01来源:作者:点击数: 标签:
安全扫描就是对计算机系统或者其它网络设备进行安全相关的检测,以找出安全隐患和可被黑客利用的漏洞。显然,安全扫描软件是把双刃剑,黑客利用它入侵系统,而系统管理员掌握它以后又可以有效的防范黑客入侵。因此,安全扫描是保证系统和 网络安全 必不可少


安全扫描就是对计算机系统或者其它网络设备进行安全相关的检测,以找出安全隐患和可被黑客利用的漏洞。显然,安全扫描软件是把双刃剑,黑客利用它入侵系统,而系统管理员掌握它以后又可以有效的防范黑客入侵。因此,安全扫描是保证系统和网络安全必不可少的手段,必须仔细研究利用。

安全扫描通常采用两种策略,第一种是被动式策略,第二种是主动式策略。所谓被动式策略就是基于主机之上,对系统中不合适的设置,脆弱的口令以及其他同安全规则抵触的对象进行检查;而主动式策略是基于网络的,它通过执行一些脚本文件模拟对系统进行攻击的行为并记录系统的反应,从而发现其中的漏洞。利用被动式策略扫描称为系统安全扫描,利用主动式策略扫描称为网络安全扫描。

一、目前安全扫描主要涉及的检测技术

相信读者已经对安全扫描有了一个初步的认识,这里进一步介绍安全扫描的四种检测技术:

① 基于应用的检测技术,它采用被动的,非破坏性的办法检查应用软件包的设置,发现安全漏洞。

② 基于主机的检测技术,它采用被动的,非破坏性的办法对系统进行检测。通常,它涉及到系统的内核,文件的属性,操作系统的补丁等问题。这种技术还包括口令解密,把一些简单的口令剔除。因此,这种技术可以非常准确的定位系统的问题,发现系统的漏洞。它的缺点是与平台相关,升级复杂。

③ 基于目标的漏洞检测技术,它采用被动的,非破坏性的办法检查系统属性和文件属性,如数据库,注册号等。通过消息文摘算法,对文件的加密数进行检验。这种技术的实现是运行在一个闭环上,不断地处理文件,系统目标,系统目标属性,然后产生检验数,把这些检验数同原来的检验数相比较。一旦发现改变就通知管理员。

④ 基于网络的检测技术,它采用积极的,非破坏性的办法来检验系统是否有可能被攻击崩溃。它利用了一系列的脚本模拟对系统进行攻击的行为,然后对结果进行分析。它还针对已知的网络漏洞进行检验。网络检测技术常被用来进行穿透实验和安全审记。这种技术可以发现一系列平台的漏洞,也容易安装。但是,它可能会影响网络的性能

优秀的安全扫描产品应该是综合了以上4种方法的优点,最大限度的增强漏洞识别的精度。

二、安全扫描在企业部署安全策略中处于重要地位

从前面的介绍可以看出安全扫描在维护计算机安全方面起到的重要作用,但仅仅装备安全扫描软件是不够的。

现有的信息安全产品中主要包括以下几个部分(安全扫描属于评估部分):防火墙,反病毒,加强的用户认证,访问控制和认证,加密,评估,记录报告和预警,安全固化的用户认证,认证,物理安全。这样,在部署安全策略时,有许多其它的安全基础设施要考虑进来,如防火墙,病毒扫描器,认证与识别产品,访问控制产品,加密产品,虚拟专用网等等。如何管理这些设备,是安全扫描系统和入侵侦测软件(入侵侦测软件往往包含在安全扫描系统中)的职责。通过监视事件日志,系统受到攻击后的行为和这些设备的信号,作出反应。这样,安全扫描系统就把这些设备有机地结合在一起。因此,而安全扫描是一个完整的安全解决方案中的一个关键部分,在企业部署安全策略中处于非常重要的地位。

大家可能已经注意到防火墙和安全扫描的同时存在,这是因为防火墙是不够的。防火墙充当了外部网和内部网的一个屏障,但是并不是所有的外部访问都是通过防火墙的。比如,一个未经认证的调制解调器把内部网连到了外部网,就对系统的安全构成了威胁。此外,安全威胁往往并不全来自外部,很大一部分来自内部。另外,防火墙本身也很有可能被黑客攻破。

结合了入侵侦测功能后,安全扫描系统具有以下功能:① 协调了其它的安全设备;② 使枯燥的系统安全信息易于理解,告诉了你系统发生的事情;③ 跟踪用户进入,在系统中的行为和离开的信息;④ 可以报告和识别文件的改动;⑤ 纠正系统的错误设置;⑥ 识别正在受到的攻击;⑦ 减轻系统管理员搜索最近黑客行为的负担;⑧ 使得安全管理可由普通用户来负责;⑨ 为制定安全规则提供依据。不过必须注意,安全扫描系统不是万能的。首先,它不能弥补由于认证机制薄弱带来的问题,不能弥补由于协议本身的问题;此外,它也不能处理所有的数据包攻击,当网络繁忙时它也分析不了所有的数据流;当受到攻击后要进行调查,离不开安全专家的参与。

三、网络安全和系统安全主要薄弱环节

要正确部署安全策略、有针对性的使用安全扫描产品,有必要了解一下安全的主要薄弱环节在哪里。下面提到的三个问题是产生安全漏洞的主要原因:

① 软件自身安全性差。很多软件在设计时忽略或者很少考虑安全性问题,考虑了安全性的软件产品也往往因为开发人员缺乏安全培训、没有安全经验而造成了安全漏洞。这样产生的安全漏洞分为两类:第一类,是由于操作系统本省设计缺陷带来的安全漏洞,这类漏洞将被运行在该系统上的应用程序所继承;第二类是应用软件程序的安全漏洞。第二类漏洞更为常见,更需要得到广泛的关注。

② 安全策略不当。保证系统安全不是仅仅使用个别安全工具就能做到的,需要在对网络进行总体分析的前提下制定安全策略,并且用一系列的安全软件来实现一个完整的安全解决方案。常见的错误例子是使用了防火墙而忽略了扫描系统,或者相反。

③ 人员缺乏安全意识。前面阐述的一切都是在技术层面上对网络安全进行分析和讨论,所有这一切都需要人来完成。保证系统的安全,仅靠安全软件是不够的,同时要注重安全管理人才的培养,提高安全防范意识,最终做到安全有效的防范。而当前人员安全意识的培养还远远不够,在现在的网络环境中,绝大多数漏洞存在的原因在于管理员对系统进行了错误的配置,或者没有及时的升级系统软件到最新的版本。

四、安全扫描技术的发展趋势

安全扫描软件从最初的专门为UNIX系统编写的一些只具有简单功能的小程序,发展到现在,已经出现了多个运行在各种操作系统平台上的、具有复杂功能的商业程序。今后的发展趋势,我们认为有以下几点:

① 使用插件(plugin)或者叫做功能模块技术。每个插件都封装一个或者多个漏洞的测试手段,主扫描程序通过调用插件的方法来执行扫描。仅仅是添加新的插件就可以使软件增加新功能,扫描更多漏洞。在插件编写规范公布的情况下,用户或者第三方公司甚至可以自己编写插件来扩充软件的功能。同时这种技术使软件的升级维护都变得相对简单,并具有非常强的扩展性。

② 使用专用脚本语言。这其实就是一种更高级的插件技术,用户可以使用专用脚本语言来扩充软件功能。这些脚本语言语法通常比较简单易学,往往用十几行代码就可以定制一个简单的测试,为软件添加新的测试项。脚本语言的使用,简化了编写新插件的编程工作,使扩充软件功能的工作变得更加容易,也更加有趣。
③ 由安全扫描程序到安全评估专家系统。最早的安全扫描程序只是简单的把各个扫描测试项的执行结果罗列出来,直接提供给测试者而不对信息进行任何分析处理。而当前较成熟的扫描系统都能够将对单个主机的扫描结果整理,形成报表,能够并对具体漏洞提出一些解决方法,但对网络的状况缺乏一个整体的评估,对网络安全没有系统的解决方案。未来的安全扫描系统,应该不但能够扫描安全漏洞,还能够智能化的协助网络信息系统管理人员评估本网络的安全状况,给出安全建议,成为一个安全评估专家系统。

五、用户选择安全扫描产品应注意的问题

谈到这里,也许有些计算机安全管理人员开始考虑购买一套安全扫描系统,那么,购买此类产品需要考虑哪些方面呢?我们认为以下几点是要注意的:

① 升级问题。由于当今应用软件功能日趋复杂化、软件公司在编写软件时很少考虑安全性等等多种原因,网络软件漏洞层出不穷,这使优秀的安全扫描系统必须有良好的可扩充性和迅速升级的能力。因此,在选择产品时,首先要注意产品是否能直接从因特网升级、升级方法是否能够被非专业人员掌握,同时要注意产品制造者有没有足够的技术力量来保证对新出现漏洞作出迅速的反应。

② 可扩充性。对具有比较深厚的网络知识,并且希望自己扩充产品功能的用户来说,应用了功能模块或插件技术的产品应该是首选。

③ 全面的解决方案。前面已经指出,网络安全管理需要多种安全产品来实现,仅仅使用安全扫描系统是难以保证网络的安全的。选择安全扫描系统,要考虑产品制造商能否提供包括防火墙、网络监控系统等完整产品线的全面的解决方案。

④ 人员培训。前面已经分析过,网络安全中人是薄弱的一环,许多安全因素是与网络用户密切相关的,提高本网络现有用户、特别是网络管理员的安全意识对提高网络安全性能具有非同寻常的意义。因此,在选择安全扫描产品时,要考虑制造商有无能力提供安全技术培训。

有关安全扫描的知识就谈到这里,希望能够有助于读者增加安全知识、提高安全意识,在大家的共同的努力下,加强我国的网络安全建设。

原文转自:http://www.ltesting.net