如何排查漏洞检测问题

Version 2

    说明

     

    LANDesk 漏洞检测有时会返回不正确的信息。一旦遇到这种情况,应查看vulscan日志,对应的规则检测结果会给你一些错误排查的信息。

     


    原因

     

    Vulscan 扫描过程


    当vulscan运行时,默认它将使用客户端代理安装中指定的扫描和修复设置。该设置会告诉vulsan扫描的内容,类型或者组。当然,这些内容都可通过命令行参数或者计划任务进行修改。

     

    一旦vulscan决定了哪些内容需要扫描,它将会从核心服务器请求相应的漏洞定义。这些漏洞定义以XML压缩文件的方式发送。其中包含了决定判断客户端机器是否对漏洞受影响的相关漏洞信息。Vulscan会检查文件版本,注册表键值及其他一些属性来判断该设备是否受某漏洞影响。

     

    漏洞定义


    漏洞定义是以压缩的XML文件形式传输的。每个漏洞定义的命名都取决于漏洞发布厂商。他们包括所有检测规则和相关联的补丁程序。比如MS10-036是微软Office共享代码的一个漏洞定义。因此它将影响从Microsoft Word 查看器和Office2007 企业版的一系列配置。任何一种配置都会有一种检测规则,让vulscan能够判断当前计算机的状态。需要注意的是,在控制台中显示的一个漏洞定义可能包含多个检测规则和修补程序。这些检测规则和修补程序都基于Adobe,Microsoft等漏洞厂商提供的信息而创建。

     

    通过检查文件版本,文件存在与否,注册表键值或者自定义脚本等漏洞定义来判断是否存在漏洞。一旦某台客户机被检测为受漏洞影响,并且确定了需要的补丁程序,扫描结果将被发送回核心服务器。

     

    有时LANDesk漏洞会与其他工具所有不同,更多信息请参看以下文档:

    Windows Update and LANDesk Have Different Severity Levels for Same Vulnerability

     


    解决方案

     

    错误排查


    若LANDesk检测结果不正确,你可以进行排查。通常的检测错误有:电脑不受影响被检测出受影响,或者未能检测出受影响的漏洞。

     

    Vulscan 日志


    漏洞检测排错最重要且最有效的资源是vulscan 日志. 关于如何详细解读vulscan日志,请参看文档: How to read a vulnerability scan (vulscan.log) log file

     

    找到正确的vulscan日志至关重要。在客户端机器上通过开始,运行,输入vulscan e 打开vulscan日志文件夹。

     

    其在电脑中的位置是:

     

    Windows XP, 2003

    • C:\Documents and Settings\All Users\Application Data\vulscan\

     

    Windows Vista, 2008, 7

    • C:\ProgramData\vulscan

     

    Vulscan日志被命名为vulscan.log,vulscan.1.log 直到vulscan.10.log。其中vulscan.log是最近生成的,按照时间往前推移分别为vulscan.1.log,vulscan.2.log直到最旧的日志vulscan.10.log。有时可以看到其他名字的vulscan日志出现在该文件夹下,这是由于多个vulscan请求在运行。这些临时性的日志通常命名为: vulscan.PID_XXXX.log 或 vulscan_instanceX.log

     

    最好确定所需日志的方法是查看日志开始部分的命令行:

     

    Command line: /repair "vulnerability=FIREFOX3v3.6.7" /agentbehavior=LDMS9_22 /taskid=23

     

    以上命令行是用ID为22的补丁和修复设置运行Firefox修复任务,该任务的ID为23.这种命令行可以帮你确认此日志是来自于哪个任务,或者是进行的何种扫描。如果此命令行为空则说明此次扫描为计划好的日常安全扫描。关于vulscan的命令参数,请参看Vulscan Switches for Windows Agents

     

    找到正确的vulscan日志后,对应查找有问题的漏洞。

     

    Processing vulnerability MS10-032

    Checking vulnerability MS10-032, rule index 0

    Should reboot before repairing windows2000-kb979559-x86-enu.-z7Svg.exe returned: 0

    VUL: 'MS10-032' not detected.  No affected platforms were found.

     

       Patch is NOT installed

    Checking vulnerability MS10-032, rule index 1

    Should reboot before repairing windowsxp-kb979559-x86-enu.-scWKg.exe returned: 0

    VUL: 'MS10-032' not detected.  No affected platforms were found.

     

       Patch is NOT installed

    Checking vulnerability MS10-032, rule index 2

    Should reboot before repairing windowsxp-kb979559-x86-enu.-scWKg.exe returned: 0

    VUL: 'MS10-032' not detected.  No affected platforms were found.

     

       Patch is NOT installed

    Checking vulnerability MS10-032, rule index 3

    Should reboot before repairing windowsserver2003.windowsxp-kb979559-x64-enu.-aqeyw.exe

    returned: 0

    VUL: 'MS10-032' not detected.  No affected platforms were found.

     

       Patch is NOT installed

    Checking vulnerability MS10-032, rule index 4

    File OSVERSION version within specified

    Prod Windows Server 2003 Service Pack 2 (ID:MS7756H1) verified OSVERSION,

    found: 5.2.3790.2

    File C:\WINDOWS\system32\win32k.sys version less than 5.2.3790.4702

    Should reboot before repairing windowsserver2003-kb979559-x86-enu._2kIiA.exe returned: 1

    VUL: 'MS10-032' DETECTED.  Reason 'File 'C:\WINDOWS\system32\win32k.sys' version

    is less than the minimum version specified.'.  Expected '5.2.3790.4702'.

    Found '5.2.3790.4571'. Patch required 'windowsserver2003-kb979559-x86-enu._2kIiA.exe'.

     

    以上是处理漏洞MS10-032的过程。一共有五条检测规则(编号0-4)。规则0-3由于操作系统版本不匹配故没有应用。规则4检测到受影响的操作系统Windows 2003 SP2。然后进一步检查wind32k.sys文件是否为正确版本。由于系统中的版本低于要求版本,该漏洞MS10-032被检测为受影响,并列出了所需的补丁程序(windowsserver2003-kb979559-x86-enu._2kIiA.exe)。

     

    此日志信息对任何检测失败问题都非常有用。

     

    未受影响机器被标识为已监测


    有很多原因会导致漏洞被误检测。比如有些补丁安装后,如果没有重启机器,相关的文件将不会正确更新。只有客户端重启且再次进行安全扫描之后,LANDesk才会认为该漏洞不存在。有时LANDesk也会误检测到受影响的软件已安装。

    • 要解决此问题,需要完成以下步骤:
    1. 重启客户端机器。
    2. 重新执行安全扫描,确保问题漏洞有包含在扫描过程中。
    3. 确认vulscan日志显示该漏洞扫描为已检测。查看检测原因,确认客户端是否真的符合原因描述。
    4. 如果日志显示漏洞被检测,但实际上不应该受影响,那么请和LANDesk售后联系开case,提供相关的vulscan日志及问题漏洞号等相关信息。我们可以判断是否是该漏洞的检测规则有问题。

     

    受影响机器未被检测到


    有时是第三方扫描工具提示机器需要某个补丁但LANDesk显示该机器不受影响。这有可能是由于检测规则不同造成的。一些工具会查找补丁安装信息以确认该补丁已完成安装。如果有更新的补丁安装过,替代了之前的一些安装文件,那么这就会被检测为受影响。LANDesk也会执行类似的补丁安装检测,但也会检查其他注册表或文件信息。这种检测规则的不同会导致与其他产品的检测结果不同。

    • 如果你认为LANDesk未能检测出一个存在的漏洞,请执行以下操作:
    1. 在控制台中找到该漏洞,双击打开属性页。
    2. 确认常规页-状态下拉框中显示为扫描。
    3. 描述页,点击更多信息打开IE描述页。
    4. 获取客户端的安全扫描日志,查看对应的漏洞扫描信息。
    5. 查看日志中漏洞检测规则和结果,与IE页中的描述相比较。特别注意是否有别的补丁替代该漏洞补丁。
    6. 如果你确定该客户电脑确实受此漏洞影响,而没有被LANDesk检测出来,那么请提供相关的vulscan日志和LANDesk售后联系开case,同时,告知哪条检测规则没有正常工作或者来自于补丁原厂商的一些技术文档等。LANDesk售后将会展开研究,对漏洞定义进行相应的更新。

     

     


    适用版本

    LANDesk Management Suite 8.8/9.0

     


    相关英文文档

    http://community.landesk.com/support/docs/DOC-12224