配置资产发现
资产发现配置包括三个选项:
- 确定目标资产是否存在
- 收集关于已发现资产的信息
- 报告任何具有未经授权MAC地址的资产
如果在自定义扫描模板中选择不配置资产发现,则扫描将以服务发现开始。
确定目标资产是否存在
在包含大量资产(很难跟踪)的环境中,确定目标资产是否处于活动状态是很有用的。从扫描作业中过滤掉无用资产有助于减少扫描时间和资源消耗。
有三种方法可以联系资产:
- ICMP echo请求(也称为“ping”)
- ARP ping(本地网络)
- TCP包
- UDP数据包
潜在的缺点是,防火墙或其他保护设备可能会阻止发现连接请求,导致目标资产看起来已死,即使它们是活的。如果网络上有防火墙,它可能会阻止请求,这要么是因为它被配置为阻止任何符合特定条件的数据包访问网络,要么是因为它将任何扫描都视为潜在的攻击。在这两种情况下,应用程序都会报告资产死扫描日志。这可能会降低扫描的整体准确性。请注意在何处部署扫描引擎以及扫描引擎如何与防火墙交互。看到使您的环境“有利于扫描”.
使用一种以上的发现方法可以促进更准确的结果。如果应用程序不能验证资产是否使用一种方法,那么它将恢复到另一种方法。
Web审计和Internet DMZ审计模板不包括这些发现方法中的任何一个。
外围网络通常有非常激进的防火墙规则,这削弱了资产发现的有效性。因此,对于这些类型的扫描,让应用程序“假设”目标资产是活动的,并继续进行扫描的下一个阶段,即服务发现,会更有效。这个方法花费时间,因为应用程序检查所有目标资产上的端口,不管它们是否处于活动状态。其好处是准确性,因为它可以检查所有可能的目标。
缺省情况下,扫描引擎在设备发现过程中使用ARP和ICMP请求(也称为ping)来查找资产。这种方法有几个缺点。防火墙可能会丢弃ping信号,这要么是因为它被配置为阻止任何符合特定条件的数据包访问网络,要么是因为它认为任何扫描都是潜在的攻击。在这两种情况下,应用程序推断设备不存在,并报告为死扫描日志。另一方面,防火墙可能被配置为发送代理ARP响应,这可能导致不存在的资产看起来是活的。
同时选择TCP协议和UDP协议发现设备,会导致应用程序发送的报文比使用一种协议发现设备发送的报文更多,占用更多的网络带宽。
您可以选择TCP和/或UDP作为定位活动主机的附加或备选选项。使用这些协议,应用程序试图通过打开连接来验证资产是否在线。防火墙通常配置为允许端口80上的流量,因为它是缺省的HTTP端口,支持Web服务。如果端口80上没有注册任何内容,目标资产将向Scan Engine发送一个“端口关闭”响应,或者没有响应。这至少可以确定资产是在线的,并且可以进行端口扫描。在这种情况下,应用程序报告资产活着在扫描日志。
如果选择TCP或UDP进行设备发现,请确保指定80之外的端口,具体取决于目标资产上运行的服务和操作系统。您可以查看默认扫描模板(如Discovery scan和Discovery scan (aggressive))上的TCP和UDP端口设置,以了解常用的端口号。
在获取目标资产响应方面,TCP比UDP更可靠。它也被比UDP更多的服务使用。您可能希望使用UDP作为补充协议,因为目标设备也更有可能阻止更常见的TCP和ICMP包。
在使用TCP包进行设备发现时,必须记住Scan Engine将设备的任何响应都视为其活跃度的证明。这可能会导致扫描结果中出现不存在的目标,因为中间设备(例如防火墙、路由器等)向扫描引擎发送TCP重置响应。如果您的环境中存在这个问题,您可以选择不将TCP重置响应视为活动资产。选择此选项的风险是,您可能会错过已配置为仅提供重置响应的设备。
如果在站点配置中将扫描目标作为主机名列出,则应用程序尝试DNS解析。如果主机名不能解析,则考虑它未解决的,就扫描的目的而言,相当于死.
UDP是一种不太可靠的资产发现协议,因为它没有结合TCP的握手方法来保证数据的完整性和顺序。不像TCP,如果UDP端口没有响应通信尝试,它通常被认为是开放的。
微调扫描与活动资产的验证
资产发现可以有效地提高准确性。此外,禁用资产发现功能实际上可以增加扫描时间。应用程序仅在验证资产是活动的情况下才扫描资产。否则,它会继续前进。例如,如果它可以首先验证稀疏类C网络上有50台主机,它就可以消除不必要的端口扫描。
启用ICMP并配置中间的防火墙以允许应用程序和目标网络之间交换ICMP echo请求和应答包是一个好主意。
确保TCP也为资产发现启用,特别是在您的内部网络中有严格的防火墙规则的情况下。启用UDP可能是过度的,考虑到UDP端口的可靠性问题。要使用UDP端口进行判断调用,请将完整性(准确性)的值与时间的值进行权衡。
如果您没有选择任何发现方法,则扫描假定所有目标资产都是活动的,并立即开始服务发现。
用于资产发现的端口
如果应用程序使用TCP或UDP方式发现资产,则会将请求报文发送到指定的端口。如果应用程序接触一个端口并收到端口打开的响应,它将报告该主机处于“活动状态”并继续扫描它。
PCI审计模板包括用于发现的额外TCP端口。使用PCI扫描,关键是不要错过任何活资产。
验证活动资产的配置步骤
- 去扫描模板配置-资产发现页面。
- 选择其中一种或多种方式定位当前主机。
- 如果选择TCP或UDP,请为每个选项输入一个或多个端口号。应用程序将发送TCP或UDP数据包到这些端口。
- 根据需要配置任何其他模板设置。完成扫描模板配置后,单击保存.
收集关于已发现资产的信息
在进行漏洞检查之前,可以收集已发现资产和扫描网络的部分信息。所有这些发现设置都是可选的。
找到网络上的其他资产
应用程序可以通过查询DNS服务器和WINS服务器来查找其他可能被扫描的网络资产。
微软开发了Windows Internet Name Service (WINS),用于nt3.5的局域网管理器环境中的名称解析。应用程序可以查询这个广播协议来定位Windows工作站和服务器的名称。WINS通常不是必需的。它最初是作为一个系统数据库应用程序开发的,以支持NETBIOS名称到IP地址的转换。
如果启用发现其他网络资产选项,应用程序将发现并询问所有支持资产的DNS和WINS服务器的IP地址。它将把这些资产包括在扫描系统的列表中。
收集Whois信息
Whois不与内部RFC1918地址一起工作。
Whois是一种互联网服务,它获取有关IP地址的信息,比如拥有IP地址的实体名称。如果Whois服务器在网络中不可用,则不需要对发现的每个资产询问Whois服务器,可以提高扫描引擎的性能。
TCP / IP协议栈指纹
该应用程序通过一组称为IP指纹的方法来识别关于已发现资产的尽可能多的细节。通过扫描资产的IP堆栈,它可以识别有关资产的硬件、操作系统,也许还有系统上运行的应用程序的指标。IP指纹的设置影响性能三角的精度边。
重试设置定义应用程序将重复尝试IP堆栈指纹的次数。默认重试值为0。每个资产的IP指纹时间最长为1分钟。如果第一次无法识别IP堆栈,可能就不值得再花更多时间进行第二次尝试。但是,您可以将其设置为重试IP指纹任意次数。
无论您是否启用IP指纹,应用程序都会使用其他指纹方法,例如分析端口扫描的业务数据。例如,通过发现目标资产上的Internet Information Services (IIS),它可以确定该资产是Windows Web服务器。
确定性值的范围在0.0到1.0之间,反映了对资产进行指纹识别的确定性程度。如果某个指纹小于最小确定值,应用程序将丢弃该资产的IP指纹信息。与与资产发现相关的性能设置一样,这些设置是根据最佳实践仔细定义的,这就是为什么它们是相同的。
收集已发现资产信息的配置步骤:
- 去扫描模板配置-资产发现页面。
- 如果需要,请选中复选框以发现网络上的其他资产,并将它们包含在扫描中。
- 如果需要,选择收集Whois信息的选项。
- 如果需要,选择TCP/IP协议栈指纹。
- 如果您启用了指纹选项,请输入重试值,这是第一次尝试失败时对指纹IP堆栈重复尝试的次数。
- 如果您启用了指纹选项,请输入最小确定性级别。如果某个指纹低于最小确定性水平,则该指纹将从扫描结果中丢弃。
- 根据需要配置任何其他模板设置。完成扫描模板配置后,单击保存.
报告未经授权的MAC地址
您可以配置扫描以报告未经授权的MAC地址作为漏洞。媒体访问控制(MAC)地址是唯一标识网络中每个节点的硬件地址。
在IEEE 802网络中,OSI参考模型的数据链路控制(DLC)层被分为两个子层:逻辑链路控制(LLC)层和媒体访问控制(MAC)层。MAC层直接与网络媒体接口。每种不同类型的网络媒体都需要不同的MAC层。在不符合IEEE 802标准但符合OSI参考模型的网络中,节点地址称为数据链路控制(DLC)地址。
在安全的环境中,可能需要确保只有某些机器可以连接到网络。此外,必须具备某些条件才能成功检测到未授权的MAC地址:
- 必须在管理相应网段的路由器或交换机上启用SNMP。
- 应用程序必须能够在SNMP服务上为控制适当网段的路由器或交换机执行经过身份验证的扫描。看到启用SNMP服务的认证扫描.
- 应用程序必须有一个可信任的MAC地址列表,在扫描期间根据该列表检查所定位的资产集。看到创建授权MAC地址列表.
- 扫描模板必须启用MAC地址上报功能。看到开启扫描模板中的MAC地址上报功能.
- 执行扫描的扫描引擎必须与被扫描的系统位于同一段。
启用SNMP服务的认证扫描
通过以下步骤,应用程序可以通过认证扫描方式获取MAC地址。
- 点击编辑上为其创建新扫描模板的站点的首页控制台界面。控制台显示网站配置该网站的面板。
- 去凭证页面,点击添加凭证.控制台显示一个新的登录盒子。
- 为控制适当网段的路由器或交换机的SNMP服务输入登录信息。这将允许应用程序使用ARP请求从路由器检索MAC地址。
- 如果需要,请测试证书。配置凭据的详细信息请参见配置扫描凭证.
- 单击Save。新的登录信息将出现在凭证页面。
- 单击保存选项卡保存对站点配置的更改。
创建授权MAC地址列表
创建可信MAC地址列表,请执行以下步骤:
- 使用文本编辑器,创建一个列出可信任MAC地址的文件。应用程序不会将这些地址报告为违反可信MAC地址漏洞。您可以为文件指定任何有效的名称,例如
macwhitelistfile.txt
. - 将文件保存在主机上用于安全控制台的应用程序目录中。Windows安装的默认路径为:
C:程序文件\ [installation_directory] \ plugins \ java \ \ NetworkScanners \ 1 \ \ [file_name]
Linux下的默认位置是:/ opt / [installation_directory] / java / 1 / NetworkScanners / 1 /(文件名)
开启扫描模板中的MAC地址上报功能
开启扫描模板中未授权MAC地址上报功能。操作步骤
- 去扫描模板配置-资产发现页面。
- 选择报告未授权MAC地址的选项。
- 输入列出受信任Mac地址的文件的文件名。
- 请注意,没有必要包含整个文件路径。只需要文件名。
- 根据需要配置任何其他模板设置。完成扫描模板配置后,单击保存.
设置好受信任MAC文件和扫描程序值后,应用程序将执行受信任MAC漏洞测试。为了做到这一点,它首先向目标资产发出直接的ARP请求,以获取其MAC地址。它还可以从控制该段的路由器或交换机中检索ARP表。然后,它使用SNMP从资产中检索MAC地址,并使用其NetBIOS名称查询资产,以检索其MAC地址。