PowerShell Script with Screen Capture Capability
Description
Detects PowerShell scripts that can take screenshots, which is a common feature in post-exploitation kits and remote access tools (RATs).
Query · eql
api where process.Ext.api.name == "AmsiScanBuffer" and
(process.name in~ ("powershell.exe") or process.Ext.api.parameters.app_name == "PowerShell") and
process.Ext.api.parameters.buffer : "*.CopyFromScreen(*" and
process.Ext.api.parameters.buffer : ("*System.Drawing*", "*Drawing.Graphics*") and
not process.Ext.api.parameters.content_name : ("?:\\Program Files (x86)\\*", "?:\\Program Files\\*", "H:\\Scripts\\*") and
not process.command_line : "*D:\\Teamboard_Backup\\Teamboard_*" and
not process.parent.executable : ("C:\\Program Files\\Microsoft VS Code\\Code.exe",
"C:\\Program Files\\RepairTech\\Syncro\\Syncro.Service.Runner.exe",
"C:\\Program Files\\RepairTech\\Syncro\\Syncro.App.Runner.exe") and
not process.Ext.api.parameters.buffer like "# WPF Color Picker with global Ctrl+LeftClick capture*"