🔏
RootGuard
HomeSOC OperationsIncident ResponseWindows ForensicsLinux ForensicsKQL Investigations
  • Welcome
    • RootGuard
      • Who Am I?
        • Professional Profile
  • Resources Hub
    • Blogs
      • Articles
        • Safeguarding SMEs: The Strategic Importance of a Security Operations Center (SOC)
      • Posts
        • Roadmap to Becoming a Cybersecurity Specialist
        • Starting a Career in Cybersecurity
        • A Guide to Landing Your First Cybersecurity Analyst Role
        • Moving from Intermediate to Expert Incident Responder
  • SOC Operations
    • Introduction
      • Development Resources
        • SOC Analysts Roadmap
        • Becoming A SOC Analyst
        • SOC Analysts Prep Interview Questions
    • Essential Skills
      • Critical Windows EventIDs to Monitor
    • Junior Analyst Skills
      • Splunk Use Cases
      • KQL Use Cases
        • Reconnaissance (TA0043)
        • Initial Access (TA0001)
        • Execution (TA0002)
        • Persistence (TA0003)
        • Privilege Escalation (TA0004)
        • Defence Evasion (TA0005)
        • Credential Access (TA0006)
        • Discovery (TA0007)
        • Lateral Movement (TA0008)
        • Collection (TA0009)
        • Command and Control (TA0011)
        • Exfiltration (TA0010)
        • Impact (TA0040)
      • Investigating Common Attacks
        • Domain Dominance Attacks - Detection & Analysis
        • Investigating a Suspected AD FS Distributed Key Management (DKM) Attack
        • Authentication From Suspicious DeviceName
        • Identifying Interactive or RemoteInteractive Session From Service Account
        • Identifying Split or Part Archive File Transfers
        • Detect Potential Cleartext Credentials in Command Line
        • Detecting Command Line Interpreters Launched via Scheduled Tasks
        • Detecting Files Containing Potentially Sensitive Data
        • Detecting DeviceNetworkEvents From Windows Processes and Domains by TLD
        • Detecting Silent cmd.exe Execution With Redirected STDERR & STDOUT
        • Detecting Low Prevalence DLL Loaded From Process In User Downloads Directory
        • Detecting Virtual Drive Mounted From Archive
        • Identify Execution of Script From User's Downloads Folder
        • Identify Potential RDP Tunneled Sessions
        • Identify Instances of PowerShell Invoke-WebRequest, IWR or Net.WebClient
        • Identify Processes Launched by PowerShell Remoting (WSMProvHost.exe)
        • Detect DeviceNetworkEvents for LOLBAS with Download or Upload Functions
        • Detect Execution of PSEXESVC via Remote Systems
        • Identify Suspicious String in Service Creation ImagePath
        • Identify File with Double Extensions
        • Detect Potential Cleartext Credentials in Commandline
        • Detect When Large Number of Files Downloaded From OneDrive or SharePoint
        • Identify and Investigate Phishing Attacks with KQL
      • PowerShell for SecOps
        • Powershell Remoting
        • Reconnaissance Discovery
        • Initial Access Discovery
        • Execution Discovery
        • Persistence Discovery
        • Privilege Escalation Discovery
        • Defence Evasion Discovery
        • Credential Access Discovery
        • Discovery
        • Lateral Movement Discovery
        • Collection Discovery
        • Command & Control (C2) Discovery
        • Exfiltration Discovery
        • Impact Discovery
      • Packet Analysis (pcap)
        • Tcpdump
        • Tcpdump (Intermediate)
        • Tshark
        • Ngrep
      • Investigating Suspicious Emails Using KQL
    • Intermediate and Advanced Skills
      • Investigate Using MITRE ATT&CK Methodology
        • Reconnaissance (TA0043) Techniques
        • Resource Development (TA0042) Techniques
        • Initial Access (TA0001) Techniques
        • Command Execution (TA0002) Techniques
        • Persistence (TA0003) Techniques
        • Privilege Escalation (TA0004) Techniques
        • Defence Evasion (TA0005) Techniques
        • Credential Access (TA0006) Techniques
        • Discovery (TA0007) Techniques
        • Lateral Movement (TA0008) Techniques
        • Collection (TA0009) Techniques
        • Command and Control (C2) (TA0011) Techniques
        • Exfiltration (TA0010) Techniques
        • Impact (TA0040) Techniques
    • Vulnerability Management
    • Malware Analysis
  • DFIR
    • Incident Response
      • Incident Triage
        • Triage Types and Processes
        • PowerShell for Detection and Analysis
          • Malware or Compromise Investigation
          • Lateral Movement Discovery
        • Registry Analysis
        • Sysinternals Intrusion Analysis
        • PowerShell Intrusion Analysis
        • Velociraptor Intrusion Analysis
        • Zimmerman Tools Intrusion Analysis
      • KAPE Artifacts Analysis
      • Velociraptor Artifacts Analysis
      • Using The Unified Kill Chain Model to Analyse Individual Cyber Attacks
        • Phase 1 - Gaining an Initial Foothold
          • Gaining Access to the Network
          • Establishing a Foothold
          • Network Discovery
      • Response Strategies
        • Privilege Escalation Assessment
        • Command and Control Assessment
        • Command Execution Assessment
        • Defence Evasion Assessment
        • Detection Assessment
        • Discovery Assessment
        • Exfiltration Assessment
        • Initial Access Assessment
        • Initial Impact Assessment Techniques
        • Lateral Movement Assessment
        • Persistence Assessment
    • Windows Forensics
      • Evidence of Execution
      • Window Artifact Analysis
        • Account Usage
        • User Activity Tracking (Event Logs)
        • Program Execution
        • File and Folder Opening
        • File Download
        • Browser Usage
        • Deleted File or File Knowledge
        • External Device & USB Usage
    • Linux Forensics
      • Linux Commandline Basics
      • Host Compromise Assessment
    • KQL for Defender & Sentinel
      • MDO (Office)
      • MDI (Identity)
      • MDE (Endpoint)
    • Memory Forensics
      • Memory Forensics (Volatility 3)
    • Playbooks
      • First Responder DFIR Playbook
        • Device Isolation
        • Evidence Collection
          • Acquire Triage Image Using KAPE
          • Acquire Triage Data Using Velociraptor
          • Acquire Triage Data Using Powershell
          • Acquire Triage Memory Image
          • Acquire Image Using FTK
          • AXIOM Cyber Data Collection
        • Windows Forensic Artefacts
          • Application Execution
          • File & Folder Knowledge
          • External Device Usage
          • Network Activity
          • Windows Event Logs
        • Initial Analysis
          • Memory Analysis (Vol 3)
          • Axiom Cyber Examiner
  • Detection Engineering
    • AD Attack Detections & Mitigations
      • Kerberoasting
      • Authentication Server Response (AS-REP) Roasting
      • Password Spraying
      • MachineAccountQuota Compromise
      • Unconstrained Delegation
      • Password in Group Policy Preferences (GPP) Compromise
      • Active Directory Certificate Services (AD CS) Compromise
      • Golden Certificate
      • DCSync
      • Dumping ntds.dit
      • Golden Ticket
      • Silver Ticket
      • Golden Security Assertion Markup Language (SAML)
      • Microsoft Entra Connect Compromise
      • One-way Domain Trust Bypass
      • Security Identifier (SID) History Compromise
      • Skeleton Key
      • Active Directory Security Controls
      • Active Directory Events for Detecting Compromise
    • Attack Triage Playbooks (KQL Triage)
      • Windows Malware Detection Playbook
      • Linux Host Intrusion Detection Playbook (CLI)
      • Linux Intrusion Detection Playbook
      • Large-Scale Compromise Detection Playbook
      • Ransomware Detection Playbook
      • Phishing Email Compromise Detection Playbook
      • Scam Detection Playbook
      • Customer Phishing Detection Playbook
      • Insider Abuse Detection Playbook
      • Information Leakage Detection Playbook
      • Social Engineering Detection Playbook
      • Malicious Network Behaviour Detection Playbook
      • Windows Intrusion Detection Playbook
      • Vulnerability Detection Playbook
      • Business Email Compromise Detection Playbook
    • Process Execution (KQL Triage)
    • Threat Hunting
      • Hunting Ransomware Indicators
      • Hunting With KQL
        • Detecting Malware Infection (MITRE ATT&CK: T1566, T1059)
        • Discovery Activities (MITRE ATT&CK: T1016, T1083, T1046)
        • Credential Theft (MITRE ATT&CK: T1003, T1078)
        • Lateral Movement (MITRE ATT&CK: T1076, T1021)
        • Data Theft (MITRE ATT&CK: T1041, T1071)
        • Detecting CommandLine Executions (MITRE ATT&CK: T1059)
        • Windows Security Logs (Identity and Logon Activities)
      • Hunting With Splunk
Powered by GitBook
On this page
Edit on GitHub
  1. Detection Engineering
  2. Threat Hunting
  3. Hunting With KQL

Detecting CommandLine Executions (MITRE ATT&CK: T1059)

Note: Sometimes, you may have to customise the queries to your environment. Also, queries will only work if the data is available.

Execution of Actor Tools and Command-line Activities (MITRE ATT&CK: T1059)

Overview:

Command-line interfaces (CLI) are often abused by adversaries to execute malicious tools and commands. Monitoring these activities is crucial for detecting malicious behaviour.

25 Example Queries for Execution of Actor Tools and Command-line Detection:

  1. Detect PowerShell Execution with Encoded Commands Encoded PowerShell commands often indicate obfuscation used in attacks.

DeviceProcessEvents | where FileName == "powershell.exe" and ProcessCommandLine has "encodedCommand" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Execution of Scripts via CMD (Batch Files) Batch files may be used to automate malicious commands.

DeviceProcessEvents | where FileName == "cmd.exe" and ProcessCommandLine has ".bat" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Execution of Python Scripts for Malicious Activities Python scripts may be used to execute malicious code.

DeviceProcessEvents | where FileName == "python.exe" or ProcessCommandLine has ".py" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Execution of System Binaries Used by Attackers (LOLBins) Attackers often abuse legitimate system binaries (LOLBins) like msiexec, certutil, etc.

DeviceProcessEvents | where FileName in ("msiexec.exe", "certutil.exe", "rundll32.exe") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Execution of VBS Scripts for Malicious Activity VBS scripts can be used to execute malicious code, download payloads, etc.

DeviceProcessEvents | where FileName == "wscript.exe" and ProcessCommandLine has ".vbs" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of PowerShell to Bypass Execution Policies Malicious PowerShell scripts often bypass execution policies.

DeviceProcessEvents | where FileName == "powershell.exe" and ProcessCommandLine has "-ExecutionPolicy Bypass" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Use of CertUtil for Malicious File Downloads CertUtil is often abused to download and decode malicious payloads.

DeviceProcessEvents | where FileName == "certutil.exe" and ProcessCommandLine has "download" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Use of MSHTA for Script Execution (Malicious Activity) MSHTA is commonly abused to execute malicious HTML applications.

DeviceProcessEvents | where FileName == "mshta.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of CMD for Remote Command Execution CMD may be used to execute commands on remote systems using tools like PsExec.

DeviceProcessEvents | where FileName == "cmd.exe" and ProcessCommandLine has_any ("psexec", "wmic", "mstsc") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Use of PowerShell for Downloading and Executing Scripts PowerShell can be used to download and execute malicious scripts.

DeviceProcessEvents | where FileName == "powershell.exe" and ProcessCommandLine has_any ("download", "Invoke-WebRequest") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Execution of Python Tools Used by Attackers (e.g., Empire) Python-based post-exploitation tools like Empire are often used by attackers.

DeviceProcessEvents | where FileName == "python.exe" and ProcessCommandLine has_any ("empire", "exploit") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of PowerShell for Process Injection Techniques PowerShell scripts may be used to inject malicious code into legitimate processes.

DeviceProcessEvents | where FileName == "powershell.exe" and ProcessCommandLine has_any ("Invoke-ReflectivePEInjection", "Invoke-Mimikatz") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor the Use of VSSAdmin for Shadow Copy Deletion VSSAdmin may be used to delete shadow copies, typically seen in ransomware attacks.

DeviceProcessEvents | where FileName == "vssadmin.exe" and ProcessCommandLine has "delete shadows" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Use of 7-Zip or WinRAR for Data Compression Before Exfiltration Attackers may compress data before exfiltration to minimize detection.

DeviceProcessEvents | where FileName in ("7z.exe", "winrar.exe") and ProcessCommandLine has "compress" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of Bitsadmin for File Downloads Bitsadmin is often abused to download or transfer malicious files.

DeviceProcessEvents | where FileName == "bitsadmin.exe" and ProcessCommandLine has "transfer" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor the Use of Command-line Tools for User Enumeration Commands like net user and net localgroup may be used to enumerate accounts.

DeviceProcessEvents | where FileName == "net.exe" and ProcessCommandLine has_any ("user", "localgroup") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Use of Network Scanning Tools (e.g., Nmap) Network scanning tools may be used by attackers to discover systems and services.

DeviceProcessEvents | where FileName == "nmap.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of WMI for Remote Code Execution WMI is often used to execute commands on remote systems.

DeviceProcessEvents | where FileName == "wmic.exe" and ProcessCommandLine has_any ("process call create", "os get") | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Use of Netstat for Network Discovery Netstat is used to list active network connections, which can be abused for discovery.

DeviceProcessEvents | where FileName == "netstat.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Execution of SQL Tools for Database Discovery (e.g., SQLCMD) SQL tools may be used by attackers to query databases and extract information.

DeviceProcessEvents | where FileName == "sqlcmd.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of Regsvr32 for Malicious DLL Execution Regsvr32 can be used to execute DLLs and load malicious code.

DeviceProcessEvents | where FileName == "regsvr32.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Execution of VBScript Files for Malicious Activity VBScript files may be used to download, execute, or perform malicious actions.

DeviceProcessEvents | where FileName == "wscript.exe" and ProcessCommandLine has ".vbs" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Track Use of Network Monitoring Tools for Reconnaissance (e.g., Wireshark) Network monitoring tools may be used to capture and analyze network traffic for reconnaissance.

DeviceProcessEvents | where FileName == "wireshark.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Detect Use of Task Scheduler for Remote Command Execution (Schtasks.exe) Schtasks may be used to schedule and execute tasks on remote systems.

DeviceProcessEvents | where FileName == "schtasks.exe" and ProcessCommandLine has "create" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
  1. Monitor Use of Remote Desktop Services for Command Execution Remote Desktop Services (mstsc.exe) may be used for lateral movement and command execution.

DeviceProcessEvents | where FileName == "mstsc.exe" | summarize count() by DeviceName, InitiatingProcessAccountName, ProcessCommandLine
PreviousData Theft (MITRE ATT&CK: T1041, T1071)NextWindows Security Logs (Identity and Logon Activities)

Last updated 4 months ago