如果你的网络计算机数量多到管理员自己已经不清楚每台主机使用的是什么操作系统,哪些打了最新的安全补丁,哪些没有打的话就表明你已经需要购买一款扫描器产品了。当前市场上的扫描器产品有很多,选择一台适合你的扫描器产品需要注意很多方面的问题。
扫描器的首要工作目标是尽可能准确的发现网络主机的安全漏洞,协助管理员进行漏洞修补;次要目标是评估网络的安全等级和变化趋势,指导企业制定安全预算和安全战略。
上述目标决定了评估扫描器产品需要从以下方面进行:
n 实用性;
n 漏洞探测能力;
n 扫描结果处理能力;
扫描器需要许多的辅助功能来实现漏洞的准确扫描和报表生成;同时扫描器自身的许多使用特性、协助用户进行风险评估和安全管理等也能提升产品的使用价值。实用性反映了产品的操作接口和使用特性,是产品的第一印象。
评估扫描器的实用性主要考查系统的下列几项:
n 管理特性
n 使用特性
n 扫描辅助特性
n 评估特性
管理特性主要从以下几方面考查:
如果你的网络比较大,有多个管理员进行管理时就需要看产品是否支持多用户管理,用户是否有权限划分;同时有的扫描器提供了资产管理功能,使得你在扫描的同时能收集到网络资产信息,并允许你手工修改和补充;有的扫描器甚至能根据资产信息在报表中给出有漏洞的主机是谁维护的、物理位置在哪里等,使得漏洞的修补能快速落实。
其中使用特性可从以下几方面考查:
通常硬件扫描器的部署和使用比软件产品简单,扫描速度也快很多,但价格要贵一些。国内厂商自己的扫描器产品通常为中文界面,国外的产品或OEM的产品通常为英文界面,如果选择中文的产品还需要看语言描述是否易懂,有时一些翻译过来的界面文字由于译员对安全知识的生疏翻译得很生硬,难以阅读。
扫描辅助特性主要从以下几方面考查:
有的产品不能输入域名进行扫描,有的不能同时指定多个网段,有的不能扫描虚拟主机,有的不能指定口令文件进行简单口令猜测,在选购扫描器产品时都需要了解清楚;如果你希望应用一些高级功能的话还需要看扫描策略的定制项目有哪些,是否能指定只扫描存活的主机,是否能指定端口扫描范围等;如果你的行业有特殊要求,比如扫描时要求向被扫描主机发通知告知正在对他进行扫描的话就需要选择有扫描探测通知能力的扫描器,而且还要看该功能是否能被禁用和启用。
扫描器在扫描漏洞的同时应该能给出网络的风险状态和主机的风险状态,不能给出状态的扫描器不具备分析能力,通常不建议你购买;对于能给出风险情况的扫描器还需要考查一下如下几点:
n 漏洞脆弱性判定标准
n 主机风险判定算法
n 网络风险判定算法
也就是看产品的相关算法是否公开、是否科学合理。
扫描器的工作性质决定了其最重要的能力是漏洞的探测能力,但探测能力属于扫描器的内在核心,不是很容易在第一次接触产品时就能比较出来,需要继续细化,并在选购前多打听和了解。
在漏洞探测方面的评测项如下:
n 漏洞库的可持续性
n 扫描漏洞分布的全面性
n 扫描的准确性
n 扫描速度和效率
可持续性主要评测产品的升级能力,扫描器工作原理类似杀毒软件,当出现新的漏洞时需要升级产品漏洞库,只有这样扫描器才能具备扫描新漏洞的能力。这要求产品具备升级能力,同时厂商具备国际漏洞的跟踪或发现漏洞的能力。如果买了一家不具备稳定升级支持能力公司的产品,那么新漏洞出来时产品就会过时,失去产品的价值。
可持续性可以通过考查厂商的规模、研究能力、持续的漏洞跟踪能力获得。建议选购产品时选择一家资深安全公司的产品,比如看这个厂商是否有公开的漏洞库、是否发现过重大安全漏洞、是否在国际上有影响力等,以此鉴别该公司的实力。同时也需要查看该产品以前的升级记录,通常连接到其公司网站,看一下上一年度的升级包发布情况,建议你不要选择那些一年只能发布几次、十几次升级包的产品。
全面性主要考查扫描器扫描对象覆盖的范围是否能够满足你的网络,比如操作系统、数据库、应用软件、网络设备等是否满足你的网络。
漏洞数目上目前国际上几个大的安全厂商的产品漏洞库都在1200-1400间;覆盖面上有的产品可能对数据库扫描强一些,有的在某类操作系统上强些,你需要根据自己网络的状况进行选择;有个值得注意的现象是国外的扫描器产品和OEM国外的产品对国产系统软件的支持极少,比如华为的路由器、国产的木马程序等。
一个好的产品除完成漏洞扫描外,通常还能获取非常多的目标Profile能力,如补丁列表、用户名信息、进程列表、路由表等。可以通过查看扫描器产品这些信息是否有分类,并按照合理的格式展现来判断该产品的扫描全面性。
准确性主要评测如下图所示的角度:
准确性直接决定了扫描器的扫描结果是否有参考价值,但除非你自己对漏洞知识有较多的了解,否则很难判断。一个侧面的评价是看报表中是否能看到每台主机的操作系统、操作系统是否准确、每个端口是否列出了服务的名称,这些信息能够判断系统的识别和端口的识别是否准确,还不能看出漏洞识别的漏报和误报情况。
误报可以通过观察较大规模的扫描结果,看是否有属于UNIX的漏洞在Windows主机上出现之类来大致了解;也能通过查看扫描到的Profile信息是否完备,来作为漏洞识别的一个侧面反应。
扫描性能分两个方面:
n 扫描负荷
n 扫描速度
快速的发现漏洞有利于快速的采取措施,尤其是对于大的网络,这就要求在保证扫描准确的前提下扫描速度要快,通常硬件产品的速度都比软件的好,各个产品扫描速度上的差距很大。扫描负荷指能一次指定扫描范围的能力,很多扫描器在指定扫描几个C类 地址后就反应很慢,甚至扫描结果无法查看,而另一些扫描器能够允许一次下达一个B类地址,并能完成扫描和出具报表。这两点对大网络很重要,但对小网络重要性要低一些,都需要针对用户的网络实际来选择,通常好的产品价格都会高些。
扫描器的工作性质决定了扫描结果处理能力在扫描器中的重要地位。安全管理人员需要根据报表获得主机漏洞信息和修复建议,通过漏洞查看哪些主机存在何种漏洞来确定补丁计划;领导也需要知道企业的安全状况和变化趋势以制定安全战略。
需要考查产品报表内容是否易懂、美观、修复建议是否有参考价值、按照修复建议是否能很容易的修补漏洞等。对于大的网络,如果需要多个扫描器共同部署,还需要看产品是否支持分布式部署,能不能通过一个扫描器查看到其他扫描器上的扫描结果,并作整体分析。扫描器作为信息安全建设链路底层的产品,通常需要给其他安全产品提供底层数据,这就要求产品允许进行二次开发及产品间的联动,如果你现在有这个需求或正在规划的前景中有此需求就需要注意产品是否有此功能。扫描报告的数据分析角度通常来自于漏洞库的分类,很多产品只有单一的分类原则,不能提供多视角的分类,这样你就不能灵活查找如“Oralce有漏洞的主机有哪些?”之类的操作,选择产品时要看产品支持多少个视角的分类,总共有多少的分类。