← Return to Matrix Index
// DIAGNOSTIC INSPECTION MODULEEVENT_ID::4104
Switch to Plain View ↗
ADVERTISEMENT / SPONSORED RESERVATION (728x90)
#4104
CriticalSuccess AuditPowerShell

Script Block Logging: Full script block execution captured

// EVENT DEFINITION:

PowerShell Script Block Logging recorded the complete, un-obfuscated code block of an executing script.

// DETAILED TELEMETRY & CONTEXT:

Event ID 4104 (`Microsoft-Windows-PowerShell/Operational`) is the single most valuable event for hunting PowerShell attacks. When enabled, PowerShell automatically captures and logs the full text of every script block (`ScriptBlockText`), including scripts executed from memory, base64 payloads after de-obfuscation (`-EncodedCommand`), and interactive commands. Even when not explicitly enabled via GPO, PowerShell 5.1+ automatically logs `4104` events whenever it detects suspicious API calls or keywords (`Script Block Auto-Log`).

[ ! ]Failure Reason / Root Cause Analysis
Execution of PowerShell script block (`ScriptBlock ID` & `ScriptBlockText` captured).
Operational Metadata & Applicability
MITRE ATT&CK Framework Alignment
T1059.001
Command and Scripting Interpreter: PowerShellTactic: Execution
T1027
Obfuscated Files or InformationTactic: Defense Evasion
Mitigation Playbook & Recommended SOC Actions
  • Analyze `ScriptBlockText` for suspicious indicators (`Mimikatz`, `IEX`, `Net.WebClient`, `System.Reflection.Assembly`, `VirtualAlloc`, `AmsiScanBuffer`).
  • Ensure Script Block Logging (`Turn on PowerShell Script Block Logging`) is enforced via Group Policy across all endpoints.
Representative Windows Event XML Schema
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Security-Auditing" Guid="{54849625-5478-4994-A5BA-3E3B0328C30D}" />
    <EventID>4104</EventID>
    <Version>0</Version>
    <Level>0</Level>
    <Task>12544</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8020000000000000</Keywords>
    <TimeCreated SystemTime="2026-07-17T09:54:44.250Z" />
    <EventRecordID>1048576</EventRecordID>
    <Correlation />
    <Execution ProcessID="612" ThreadID="1024" />
    <Channel>Security</Channel>
    <Computer>DC01.enterprise.internal</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="SubjectUserSid">S-1-5-18</Data>
    <Data Name="SubjectUserName">SYSTEM</Data>
    <Data Name="SubjectDomainName">NT AUTHORITY</Data>
    <Data Name="SubjectLogonId">0x3e7</Data>
    <!-- Event telemetry fields specific to Script Block Logging: Full script block execution captured -->
  </EventData>
</Event>
Correlated / Related Security Event IDs
Need to export or view this event without styling/layout wrappers?
Open Simple Plain Detail Page →
ADVERTISEMENT / SPONSORED RESERVATION (728x90)