cscli scenarios install sigmahq/proc_creation_win_sysinternals_susp_psexec_paexec_flags
1type: trigger2name: sigmahq/proc_creation_win_sysinternals_susp_psexec_paexec_flags3description: |4 Detects unknown program using commandline flags usually used by tools such as PsExec and PAExec to start programs with SYSTEM Privileges5filter: |6 (evt.Meta.service == 'sysmon' && evt.Parsed.EventID == '1') && ((evt.Parsed.CommandLine contains ' -s cmd' || evt.Parsed.CommandLine contains ' /s cmd' || evt.Parsed.CommandLine contains ' –s cmd' || evt.Parsed.CommandLine contains ' —s cmd' || evt.Parsed.CommandLine contains ' ―s cmd' || evt.Parsed.CommandLine contains ' -s -i cmd' || evt.Parsed.CommandLine contains ' -s /i cmd' || evt.Parsed.CommandLine contains ' -s –i cmd' || evt.Parsed.CommandLine contains ' -s —i cmd' || evt.Parsed.CommandLine contains ' -s ―i cmd' || evt.Parsed.CommandLine contains ' /s -i cmd' || evt.Parsed.CommandLine contains ' /s /i cmd' || evt.Parsed.CommandLine contains ' /s –i cmd' || evt.Parsed.CommandLine contains ' /s —i cmd' || evt.Parsed.CommandLine contains ' /s ―i cmd' || evt.Parsed.CommandLine contains ' –s -i cmd' || evt.Parsed.CommandLine contains ' –s /i cmd' || evt.Parsed.CommandLine contains ' –s –i cmd' || evt.Parsed.CommandLine contains ' –s —i cmd' || evt.Parsed.CommandLine contains ' –s ―i cmd' || evt.Parsed.CommandLine contains ' —s -i cmd' || evt.Parsed.CommandLine contains ' —s /i cmd' || evt.Parsed.CommandLine contains ' —s –i cmd' || evt.Parsed.CommandLine contains ' —s —i cmd' || evt.Parsed.CommandLine contains ' —s ―i cmd' || evt.Parsed.CommandLine contains ' ―s -i cmd' || evt.Parsed.CommandLine contains ' ―s /i cmd' || evt.Parsed.CommandLine contains ' ―s –i cmd' || evt.Parsed.CommandLine contains ' ―s —i cmd' || evt.Parsed.CommandLine contains ' ―s ―i cmd' || evt.Parsed.CommandLine contains ' -i -s cmd' || evt.Parsed.CommandLine contains ' -i /s cmd' || evt.Parsed.CommandLine contains ' -i –s cmd' || evt.Parsed.CommandLine contains ' -i —s cmd' || evt.Parsed.CommandLine contains ' -i ―s cmd' || evt.Parsed.CommandLine contains ' /i -s cmd' || evt.Parsed.CommandLine contains ' /i /s cmd' || evt.Parsed.CommandLine contains ' /i –s cmd' || evt.Parsed.CommandLine contains ' /i —s cmd' || evt.Parsed.CommandLine contains ' /i ―s cmd' || evt.Parsed.CommandLine contains ' –i -s cmd' || evt.Parsed.CommandLine contains ' –i /s cmd' || evt.Parsed.CommandLine contains ' –i –s cmd' || evt.Parsed.CommandLine contains ' –i —s cmd' || evt.Parsed.CommandLine contains ' –i ―s cmd' || evt.Parsed.CommandLine contains ' —i -s cmd' || evt.Parsed.CommandLine contains ' —i /s cmd' || evt.Parsed.CommandLine contains ' —i –s cmd' || evt.Parsed.CommandLine contains ' —i —s cmd' || evt.Parsed.CommandLine contains ' —i ―s cmd' || evt.Parsed.CommandLine contains ' ―i -s cmd' || evt.Parsed.CommandLine contains ' ―i /s cmd' || evt.Parsed.CommandLine contains ' ―i –s cmd' || evt.Parsed.CommandLine contains ' ―i —s cmd' || evt.Parsed.CommandLine contains ' ―i ―s cmd' || evt.Parsed.CommandLine contains ' -s pwsh' || evt.Parsed.CommandLine contains ' /s pwsh' || evt.Parsed.CommandLine contains ' –s pwsh' || evt.Parsed.CommandLine contains ' —s pwsh' || evt.Parsed.CommandLine contains ' ―s pwsh' || evt.Parsed.CommandLine contains ' -s -i pwsh' || evt.Parsed.CommandLine contains ' -s /i pwsh' || evt.Parsed.CommandLine contains ' -s –i pwsh' || evt.Parsed.CommandLine contains ' -s —i pwsh' || evt.Parsed.CommandLine contains ' -s ―i pwsh' || evt.Parsed.CommandLine contains ' /s -i pwsh' || evt.Parsed.CommandLine contains ' /s /i pwsh' || evt.Parsed.CommandLine contains ' /s –i pwsh' || evt.Parsed.CommandLine contains ' /s —i pwsh' || evt.Parsed.CommandLine contains ' /s ―i pwsh' || evt.Parsed.CommandLine contains ' –s -i pwsh' || evt.Parsed.CommandLine contains ' –s /i pwsh' || evt.Parsed.CommandLine contains ' –s –i pwsh' || evt.Parsed.CommandLine contains ' –s —i pwsh' || evt.Parsed.CommandLine contains ' –s ―i pwsh' || evt.Parsed.CommandLine contains ' —s -i pwsh' || evt.Parsed.CommandLine contains ' —s /i pwsh' || evt.Parsed.CommandLine contains ' —s –i pwsh' || evt.Parsed.CommandLine contains ' —s —i pwsh' || evt.Parsed.CommandLine contains ' —s ―i pwsh' || evt.Parsed.CommandLine contains ' ―s -i pwsh' || evt.Parsed.CommandLine contains ' ―s /i pwsh' || evt.Parsed.CommandLine contains ' ―s –i pwsh' || evt.Parsed.CommandLine contains ' ―s —i pwsh' || evt.Parsed.CommandLine contains ' ―s ―i pwsh' || evt.Parsed.CommandLine contains ' -i -s pwsh' || evt.Parsed.CommandLine contains ' -i /s pwsh' || evt.Parsed.CommandLine contains ' -i –s pwsh' || evt.Parsed.CommandLine contains ' -i —s pwsh' || evt.Parsed.CommandLine contains ' -i ―s pwsh' || evt.Parsed.CommandLine contains ' /i -s pwsh' || evt.Parsed.CommandLine contains ' /i /s pwsh' || evt.Parsed.CommandLine contains ' /i –s pwsh' || evt.Parsed.CommandLine contains ' /i —s pwsh' || evt.Parsed.CommandLine contains ' /i ―s pwsh' || evt.Parsed.CommandLine contains ' –i -s pwsh' || evt.Parsed.CommandLine contains ' –i /s pwsh' || evt.Parsed.CommandLine contains ' –i –s pwsh' || evt.Parsed.CommandLine contains ' –i —s pwsh' || evt.Parsed.CommandLine contains ' –i ―s pwsh' || evt.Parsed.CommandLine contains ' —i -s pwsh' || evt.Parsed.CommandLine contains ' —i /s pwsh' || evt.Parsed.CommandLine contains ' —i –s pwsh' || evt.Parsed.CommandLine contains ' —i —s pwsh' || evt.Parsed.CommandLine contains ' —i ―s pwsh' || evt.Parsed.CommandLine contains ' ―i -s pwsh' || evt.Parsed.CommandLine contains ' ―i /s pwsh' || evt.Parsed.CommandLine contains ' ―i –s pwsh' || evt.Parsed.CommandLine contains ' ―i —s pwsh' || evt.Parsed.CommandLine contains ' ―i ―s pwsh' || evt.Parsed.CommandLine contains ' -s powershell' || evt.Parsed.CommandLine contains ' /s powershell' || evt.Parsed.CommandLine contains ' –s powershell' || evt.Parsed.CommandLine contains ' —s powershell' || evt.Parsed.CommandLine contains ' ―s powershell' || evt.Parsed.CommandLine contains ' -s -i powershell' || evt.Parsed.CommandLine contains ' -s /i powershell' || evt.Parsed.CommandLine contains ' -s –i powershell' || evt.Parsed.CommandLine contains ' -s —i powershell' || evt.Parsed.CommandLine contains ' -s ―i powershell' || evt.Parsed.CommandLine contains ' /s -i powershell' || evt.Parsed.CommandLine contains ' /s /i powershell' || evt.Parsed.CommandLine contains ' /s –i powershell' || evt.Parsed.CommandLine contains ' /s —i powershell' || evt.Parsed.CommandLine contains ' /s ―i powershell' || evt.Parsed.CommandLine contains ' –s -i powershell' || evt.Parsed.CommandLine contains ' –s /i powershell' || evt.Parsed.CommandLine contains ' –s –i powershell' || evt.Parsed.CommandLine contains ' –s —i powershell' || evt.Parsed.CommandLine contains ' –s ―i powershell' || evt.Parsed.CommandLine contains ' —s -i powershell' || evt.Parsed.CommandLine contains ' —s /i powershell' || evt.Parsed.CommandLine contains ' —s –i powershell' || evt.Parsed.CommandLine contains ' —s —i powershell' || evt.Parsed.CommandLine contains ' —s ―i powershell' || evt.Parsed.CommandLine contains ' ―s -i powershell' || evt.Parsed.CommandLine contains ' ―s /i powershell' || evt.Parsed.CommandLine contains ' ―s –i powershell' || evt.Parsed.CommandLine contains ' ―s —i powershell' || evt.Parsed.CommandLine contains ' ―s ―i powershell' || evt.Parsed.CommandLine contains ' -i -s powershell' || evt.Parsed.CommandLine contains ' -i /s powershell' || evt.Parsed.CommandLine contains ' -i –s powershell' || evt.Parsed.CommandLine contains ' -i —s powershell' || evt.Parsed.CommandLine contains ' -i ―s powershell' || evt.Parsed.CommandLine contains ' /i -s powershell' || evt.Parsed.CommandLine contains ' /i /s powershell' || evt.Parsed.CommandLine contains ' /i –s powershell' || evt.Parsed.CommandLine contains ' /i —s powershell' || evt.Parsed.CommandLine contains ' /i ―s powershell' || evt.Parsed.CommandLine contains ' –i -s powershell' || evt.Parsed.CommandLine contains ' –i /s powershell' || evt.Parsed.CommandLine contains ' –i –s powershell' || evt.Parsed.CommandLine contains ' –i —s powershell' || evt.Parsed.CommandLine contains ' –i ―s powershell' || evt.Parsed.CommandLine contains ' —i -s powershell' || evt.Parsed.CommandLine contains ' —i /s powershell' || evt.Parsed.CommandLine contains ' —i –s powershell' || evt.Parsed.CommandLine contains ' —i —s powershell' || evt.Parsed.CommandLine contains ' —i ―s powershell' || evt.Parsed.CommandLine contains ' ―i -s powershell' || evt.Parsed.CommandLine contains ' ―i /s powershell' || evt.Parsed.CommandLine contains ' ―i –s powershell' || evt.Parsed.CommandLine contains ' ―i —s powershell' || evt.Parsed.CommandLine contains ' ―i ―s powershell') && not (evt.Parsed.CommandLine contains 'paexec' || evt.Parsed.CommandLine contains 'PsExec' || evt.Parsed.CommandLine contains 'accepteula'))7blackhole: 2m8#status: test9labels:10 service: windows11 confidence: 112 spoofable: 013 classification:14 - attack.t1587.0011516 label: "Potential Privilege Escalation To LOCAL SYSTEM"17 behavior : "windows:audit"18 remediation: false1920scope:21 type: ParentProcessId22 expression: evt.Parsed.ParentProcessId2324