使用PowerShell扫描

Windows PowerShell是一个用于系统管理和自动化的命令行shell和脚本语言。正如PowerShell 2.0的那样,您可以使用Windows远程管理来运行一个或多个远程计算机上的命令。通过使用PowerShell和Windows远程管理与扫描,您可以扫描,好像在本地登录到每台计算机。PowerShell支持对于SCAP 1.2中的某些策略检查至关重要,并且更有效地返回一些其他检查的数据。

为了在PowerShell中使用Windows远程管理,你必须在你扫描的所有机器上启用它。如果您有大量的Windows资产要扫描,那么通过Windows域上的组策略启用它可能会更有效。

尽管可以通过HTTP通过PowerShell使用Windows远程管理,但使用HTTPS服务要安全得多。为了利用HTTPS协议,需要正确配置WinRM服务。这可以通过阅读下面的文章来实现:

https://support.microsoft.com/en-us/help/2019527/how-to-configure-winrm-for-https

为了使用带有PowerShell的Windows Remote Management进行扫描,扫描模板必须具有5985 (HTTP)或5986 (HTTPS)端口。DISA、CIS、USGCB策略扫描模板默认包含该端口;对于其他人,您需要手动添加它。

将端口添加到扫描模板中。

  1. 去吧政府页面并选择管理模板.选择您正在使用的扫描模板。在服务发现选项卡中,添加5985或5986到了额外的港口TCP扫描部分。

您还需要指定适当的服务和凭据。

如果要在配置新站点时添加凭据,请单击创建网站按钮首页页。

如果要为现有站点添加凭据,请单击该站点的编辑图标网站表上的首页页。

  1. 选择身份验证
  2. 点击添加凭证
  3. 添加凭证如有必要,表单,输入新的凭据集的名称和描述。
  4. 点击账户添加凭证
  5. 选择Microsoft Windows / Samba (SMB / CIFS)服务。
  6. 输入服务的域、用户名和密码。
  7. 完成配置凭据时,单击创建如果它是一个新的集合保存如果它是先前创建的集合。

有关其他可选步骤,请参阅以下主题:

如果启用了正确的端口,应用程序将自动使用PowerShell,如果指定了正确的Microsoft Windows / Samba(SMB / CIFS)凭据。

如果您启用了PowerShell,但不希望将其用于扫描,则可能需要定义一个不包含端口5985的自定义端口列表。

要禁用访问端口:

  1. 去吧政府页面并选择管理模板
  2. 选择您使用的扫描模板。
  3. 服务发现标签,在TCP扫描,因为扫描的港口, 选择自定义(只使用“附加端口”)
  4. 额外的港口,指定不包含端口5985的端口列表。