f5254f3b5e
* Initial commit * Date bump
119 lines
3.2 KiB
TOML
119 lines
3.2 KiB
TOML
[metadata]
|
|
creation_date = "2023/07/12"
|
|
integration = ["windows"]
|
|
maturity = "production"
|
|
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
|
min_stack_version = "8.3.0"
|
|
updated_date = "2024/03/08"
|
|
|
|
[rule]
|
|
author = ["Elastic"]
|
|
description = """
|
|
Identifies the use of Cmdlets and methods related to remote execution activities using WinRM. Attackers can abuse WinRM
|
|
to perform lateral movement using built-in tools.
|
|
"""
|
|
from = "now-119m"
|
|
interval = "60m"
|
|
index = ["winlogbeat-*", "logs-windows.powershell*"]
|
|
language = "kuery"
|
|
license = "Elastic License v2"
|
|
name = "PowerShell Script with Password Policy Discovery Capabilities"
|
|
risk_score = 21
|
|
rule_id = "fe25d5bc-01fa-494a-95ff-535c29cc4c96"
|
|
setup = """## Setup
|
|
|
|
The 'PowerShell Script Block Logging' logging policy must be enabled.
|
|
Steps to implement the logging policy with Advanced Audit Configuration:
|
|
|
|
```
|
|
Computer Configuration >
|
|
Administrative Templates >
|
|
Windows PowerShell >
|
|
Turn on PowerShell Script Block Logging (Enable)
|
|
```
|
|
|
|
Steps to implement the logging policy via registry:
|
|
|
|
```
|
|
reg add "hklm\\SOFTWARE\\Policies\\Microsoft\\Windows\\PowerShell\\ScriptBlockLogging" /v EnableScriptBlockLogging /t REG_DWORD /d 1
|
|
```
|
|
"""
|
|
severity = "low"
|
|
tags = ["Domain: Endpoint", "OS: Windows", "Use Case: Threat Detection", "Tactic: Discovery", "Tactic: Execution", "Data Source: PowerShell Logs", "Rule Type: BBR"]
|
|
timestamp_override = "event.ingested"
|
|
type = "query"
|
|
building_block_type = "default"
|
|
|
|
query = '''
|
|
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"
|
|
'''
|
|
|
|
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1201"
|
|
name = "Password Policy Discovery"
|
|
reference = "https://attack.mitre.org/techniques/T1201/"
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0007"
|
|
name = "Discovery"
|
|
reference = "https://attack.mitre.org/tactics/TA0007/"
|
|
|
|
|
|
[[rule.threat]]
|
|
framework = "MITRE ATT&CK"
|
|
[[rule.threat.technique]]
|
|
id = "T1059"
|
|
name = "Command and Scripting Interpreter"
|
|
reference = "https://attack.mitre.org/techniques/T1059/"
|
|
[[rule.threat.technique.subtechnique]]
|
|
id = "T1059.001"
|
|
name = "PowerShell"
|
|
reference = "https://attack.mitre.org/techniques/T1059/001/"
|
|
|
|
|
|
|
|
[rule.threat.tactic]
|
|
id = "TA0002"
|
|
name = "Execution"
|
|
reference = "https://attack.mitre.org/tactics/TA0002/"
|
|
|