具有密码策略发现功能的 PowerShell 脚本

编辑

具有密码策略发现功能的 PowerShell 脚本

编辑

识别使用与 WinRM 相关的远程执行活动的 Cmdlet 和方法。攻击者可以滥用 WinRM 来使用内置工具执行横向移动。

规则类型: 查询

规则索引:

  • winlogbeat-*
  • logs-windows.powershell*

严重性: 低

风险评分: 21

运行频率: 60 分钟

搜索索引起始时间: now-119m (日期数学格式, 另请参阅 额外回溯时间)

每次执行的最大警报数: 100

参考: 无

标签:

  • 域: 端点
  • 操作系统: Windows
  • 使用场景: 威胁检测
  • 战术: 发现
  • 战术: 执行
  • 数据源: PowerShell 日志
  • 规则类型: BBR

版本: 107

规则作者:

  • Elastic

规则许可: Elastic License v2

设置

编辑

设置

必须启用PowerShell 脚本块日志记录日志策略。 使用高级审核配置实现日志策略的步骤

Computer Configuration >
Administrative Templates >
Windows PowerShell >
Turn on PowerShell Script Block Logging (Enable)

通过注册表实现日志策略的步骤

reg add "hklm\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging" /v EnableScriptBlockLogging /t REG_DWORD /d 1

规则查询

编辑
event.category: "process" and host.os.type:windows and
(
  powershell.file.script_block_text: (
    "Get-ADDefaultDomainPasswordPolicy" or
    "Get-ADFineGrainedPasswordPolicy" or
    "Get-ADUserResultantPasswordPolicy" or
    "Get-DomainPolicy" or
    "Get-GPPPassword" or
    "Get-PassPol"
  )
  or
  powershell.file.script_block_text: (
    ("defaultNamingContext" or "ActiveDirectory.DirectoryContext" or "ActiveDirectory.DirectorySearcher") and
    (
      (
        ".MinLengthPassword" or
        ".MinPasswordAge" or
        ".MaxPasswordAge"
      ) or
      (
        "minPwdAge" or
        "maxPwdAge" or
        "minPwdLength"
      ) or
      (
        "msDS-PasswordSettings"
      )
    )
  )
) and not powershell.file.script_block_text : (
    "sentinelbreakpoints" and "Set-PSBreakpoint" and "PowerSploitIndicators"
  )
  and not
  (
    powershell.file.script_block_text : ("43c15630-959c-49e4-a977-758c5cc93408" and "CmdletsToExport" and "ActiveDirectory.Types.ps1xml")
  )
  and not user.id : "S-1-5-18"

框架: MITRE ATT&CKTM