event_simpleName=ProcessRollup2 Falcon sensor event

ProcessRollup2: CrowdStrike Falcon Process Event, Fields and Queries

Published

One process start on a host — the executable in ImageFileName, its CommandLine, the parent process and the user's SID — with TargetProcessId as the ID that ties the process to everything it did afterwards.

Fields that matter in an investigation

FieldWhat it tells you
1ImageFileName Panther FDR schema · Splunk data source · CrowdStrike queries Full path of the executable. On Windows it is a kernel device path such as \Device\HarddiskVolume2\Windows\System32\cmd.exe, so match the end of the path, never a drive letter.
2CommandLine Panther FDR schema · Splunk data source · CrowdStrike queries The command line the process started with. Encoded PowerShell, download cradles and misused system tools show up here. It can be empty.
ParentBaseFileName Panther FDR schema · Splunk data source · CrowdStrike queries File name of the parent process. Word, Excel, Outlook or a browser starting cmd.exe, powershell.exe or wscript.exe is the classic trace of a malicious document or link.
ParentProcessId Panther FDR schema · Splunk data source · CrowdStrike queries Falcon's ID of the parent process — the TargetProcessId of the parent's own ProcessRollup2. Join on it to walk up the tree.
TargetProcessId Panther FDR schema · Splunk data source · CrowdStrike queries Falcon's unique ID for this process. Events the process causes later (connections, DNS lookups, file writes) carry the same value as ContextProcessId.
RawProcessId Panther FDR schema · Splunk data source · CrowdStrike queries The operating system's PID. Windows reuses PIDs, so join on TargetProcessId instead.
UserSid Panther FDR schema · Splunk data source · CrowdStrike queries SID of the account the process ran as (Windows). S-1-5-18 is SYSTEM; domain and local accounts start with S-1-5-21.
8UserName Panther FDR schema · CrowdStrike queries Account name where present. A CrowdStrike query notes it is not in ProcessRollup2 records delivered through Falcon Data Replicator; UserIdentity events map aid and UserSid to the name.
9SHA256HashData Panther FDR schema · Splunk data source · CrowdStrike queries SHA-256 of the executable. Look it up in threat intelligence and count the hosts it ran on to find rare binaries.
IntegrityLevel Panther FDR schema · Splunk data source Windows integrity level as a number — 4096 Low, 8192 Medium, 12288 High, 16384 System in CrowdStrike's decoding. A shell at High or System under a user application deserves a look.
ZoneIdentifier Panther FDR schema · CrowdStrike queries Mark of the Web zone of the executable, when present — 3 is Internet. A program started from a file downloaded from the internet.
ProcessStartTime Panther FDR schema · Splunk data source · CrowdStrike queries When the process started, in Unix epoch seconds. Multiply by 1000 before formatting it as a time in Falcon's query language.
13aid Panther FDR schema · Splunk data source · CrowdStrike queries Sensor ID of the host. ComputerName is added in Falcon's event search; in exported data, map aid to a host name with the aid master data.
All 66 documented ProcessRollup2 fields, besides the generic sensor fields
  • ApplicationUserModelIdPanther FDR schema
  • AuthenticationIdPanther FDR schema · Splunk data source
  • AuthenticodeHashDataSplunk data source
  • BaseFileNamePanther FDR schema
  • CallStackModuleNamesPanther FDR schema
  • CallStackModuleNamesVersionPanther FDR schema
  • CommandLinePanther FDR schema · Splunk data source · CrowdStrike queries
  • CreateProcessTypePanther FDR schema
  • CsaProcessDataCollectionInstanceIdPanther FDR schema
  • DesktopPanther FDR schema
  • EffectiveTransmissionClassSplunk data source
  • EventOriginSplunk data source
  • GIDPanther FDR schema
  • GrandParentPanther FDR schema
  • GrandParentBaseFileNameCrowdStrike queries
  • HostUrlPanther FDR schema
  • ImageFileNamePanther FDR schema · Splunk data source · CrowdStrike queries
  • ImageSubsystemPanther FDR schema · Splunk data source
  • IntegrityLevelPanther FDR schema · Splunk data source
  • LinkNamePanther FDR schema
  • MD5HashDataPanther FDR schema · Splunk data source · CrowdStrike queries
  • MachOSubTypePanther FDR schema
  • OciContainerIdPanther FDR schema
  • OriginalCommandLinePanther FDR schema
  • ParentAuthenticationIdPanther FDR schema · Splunk data source
  • ParentBaseFileNamePanther FDR schema · Splunk data source · CrowdStrike queries
  • ParentProcessIdPanther FDR schema · Splunk data source · CrowdStrike queries
  • ProcessCreateFlagsPanther FDR schema · Splunk data source
  • ProcessEndTimePanther FDR schema · Splunk data source
  • ProcessGroupIdPanther FDR schema
  • ProcessParameterFlagsPanther FDR schema · Splunk data source
  • ProcessStartTimePanther FDR schema · Splunk data source · CrowdStrike queries
  • ProcessSxsFlagsPanther FDR schema · Splunk data source
  • RGIDPanther FDR schema
  • RUIDPanther FDR schema
  • RawProcessIdPanther FDR schema · Splunk data source · CrowdStrike queries
  • ReferrerUrlPanther FDR schema
  • RpcClientProcessIdPanther FDR schema
  • SHA1HashDataPanther FDR schema · Splunk data source
  • SHA256HashDataPanther FDR schema · Splunk data source · CrowdStrike queries
  • SVGIDPanther FDR schema
  • SVUIDPanther FDR schema
  • SessionIdPanther FDR schema · Splunk data source
  • SessionProcessIdPanther FDR schema
  • ShortFilePathCrowdStrike queries
  • ShowWindowFlagsPanther FDR schema · CrowdStrike queries
  • SignInfoFlagsSplunk data source · CrowdStrike queries
  • SourceAndroidComponentNamePanther FDR schema
  • SourceProcessIdPanther FDR schema · Splunk data source
  • SourceThreadIdPanther FDR schema · Splunk data source
  • TagsPanther FDR schema · Splunk data source
  • TargetAndroidComponentNamePanther FDR schema
  • TargetAndroidComponentTypePanther FDR schema
  • TokenTypePanther FDR schema · Splunk data source
  • TtyNamePanther FDR schema
  • UIDPanther FDR schema
  • UserNamePanther FDR schema · CrowdStrike queries
  • UserSidPanther FDR schema · Splunk data source · CrowdStrike queries
  • WindowFlagsPanther FDR schema · Splunk data source · CrowdStrike queries
  • WindowStartingHeightPanther FDR schema
  • WindowStartingPositionHorizontalPanther FDR schema
  • WindowStartingPositionVerticalPanther FDR schema
  • WindowStartingWidthPanther FDR schema
  • WindowStationPanther FDR schema
  • WindowTitlePanther FDR schema
  • ZoneIdentifierPanther FDR schema · CrowdStrike queries

Panther's generic schema for all Falcon Data Replicator events adds the sensor and context fields (not every event type fills each one): ComputerName, ConfigBuild, ConfigStateHash, ContextProcessId, ContextThreadId, ContextTimeStamp, Entitlements, FileName, FilePath, InContext, TargetProcessId, TreeId, aid, aip, cid, event_platform, event_simpleName, id, name, timestamp.

What the numbers mean

These fields hold numbers that the Falcon console turns into words. The tables are CrowdStrike's own, from the decoding transforms in its public LogScale content repository, shown as published.

IntegrityLevel source ↗︎

0 Untrusted
4096 Low
8192 Medium
12288 High
16384 System
20480 Protected

ZoneIdentifier source ↗︎

0 Local machine
1 Local intranet
2 Trusted sites
3 Internet
4 Restricted sites

What the record looks like

{
"timestamp": "1705312801000",
"event_simpleName": "ProcessRollup2",
"cid": "abc123def456",
"event_platform": "Win",
"aid": "sensor001",
"ComputerName": "DESKTOP-ALICE",
"UserName": "alice",
"ImageFileName": "\\Device\\HarddiskVolume2\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
"CommandLine": "\"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe\" --no-first-run",
"MD5HashData": "d41d8cd98f00b204e9800998ecf8427e",
"aip": "10.0.0.10"
}

Numbered lines are the fields in the table.

A synthetic record from LogTriage's test corpus, in the shape Falcon Data Replicator writes; every build of this site checks that it uses only fields documented for the event. Real records carry more fields.

What it records

ProcessRollup2 is the event the Falcon sensor writes for a process it saw start, on Windows, macOS and Linux alike. The record names the executable in ImageFileName, the full CommandLine, the parent in ParentBaseFileName and ParentProcessId, the account in UserSid, and hashes of the file (SHA256HashData, MD5HashData). Windows records add the token’s IntegrityLevel and TokenType, the logon session in AuthenticationId, and — when the file came from the internet — its Mark of the Web zone in ZoneIdentifier.

Three IDs matter for joining. TargetProcessId is Falcon’s own identifier for this process, unique on the host; events the process causes later carry it as ContextProcessId. ParentProcessId is the parent’s TargetProcessId. RawProcessId is the operating system’s PID, which Windows reuses, so it is only good for display. aid names the sensor, and with it the host. In Falcon Data Replicator data the record has neither the user’s name nor the host’s: CrowdStrike’s own ProcessRollup2 curation query notes this and adds the name from UserIdentity events by aid and UserSid.

Two details trip up first queries. Windows paths are kernel device paths (\Device\HarddiskVolume2\...), not drive letters. And several fields are numbers that Falcon’s console decodes for you: IntegrityLevel (8192 is Medium, 12288 High, 16384 System), ZoneIdentifier (3 is Internet) and TokenType (2 is an impersonation token). In Splunk, the add-on for Falcon Data Replicator adds decoded _meaning fields such as IntegrityLevel_meaning. In some situations — a process found already running rather than seen starting, for example — Falcon writes a SyntheticProcessRollup2 whose flags say why.

When it matters

Most intrusions run a process somewhere, so this is the event to search first:

  • Office, mail or a browser starting a shell. ParentBaseFileName of winword.exe, excel.exe, outlook.exe or a browser with cmd.exe, powershell.exe, wscript.exe or mshta.exe as the child is how most malicious documents and links show up (MITRE ATT&CK T1204.002).
  • Encoded or obfuscated PowerShell. A CommandLine with -enc, -EncodedCommand or a long base64 string hides what runs (T1059.001). The Sigma rule for this event flags it; the PowerShell decoder shows the hidden command.
  • Discovery bursts. whoami, net, systeminfo, quser and ipconfig in quick succession from one user is someone learning the network; CrowdStrike publishes a query that counts these commands per user.
  • Rare binaries. A SHA256HashData seen on one host in the whole estate, especially from a user’s Downloads or Temp folder or with ZoneIdentifier 3, is worth checking.

How to investigate

  1. Find the process: filter by ImageFileName (end of path), CommandLine or SHA256HashData, and note aid, TargetProcessId and ProcessStartTime.
  2. Walk up the tree: the parent is the ProcessRollup2 on the same aid whose TargetProcessId equals this ParentProcessId — the key CrowdStrike’s parent/child join uses. Stop at the logon (explorer.exe, a service host or a remote session).
  3. Follow its activity: NetworkConnectIP4 and DnsRequest events on the same aid with ContextProcessId equal to the TargetProcessId, as in CrowdStrike’s process-and-connection query.
  4. Scope it: count hosts and users that ran the same hash or command line.

Shells and script hosts started by Office applications, in Falcon’s event search:

#event_simpleName=ProcessRollup2 event_platform=Win
| ParentBaseFileName=/^(winword|excel|powerpnt|outlook)\.exe$/i
| ImageFileName=/\\(cmd|powershell|pwsh|wscript|cscript|mshta|rundll32)\.exe$/i
| groupBy([aid, ComputerName, ParentBaseFileName, ImageFileName, CommandLine], function=count(as=Executions), limit=max)
| sort(Executions, order=desc)

Encoded PowerShell, with how many hosts ran each command line:

#event_simpleName=ProcessRollup2 event_platform=Win ImageFileName=/\\powershell\.exe$/i
| CommandLine=/\s-(e|enc|encodedcommand)\s/i
| groupBy([CommandLine], function=[count(aid, distinct=true, as=Hosts), count(aid, as=Executions)], limit=max)
| sort(Executions, order=desc)

The same search over Falcon Data Replicator data in Splunk (add your index):

sourcetype="crowdstrike:events:sensor" event_simpleName=ProcessRollup2 event_platform=Win ParentBaseFileName IN ("winword.exe", "excel.exe", "outlook.exe")
| regex ImageFileName="(?i)\\\\(cmd|powershell|wscript|mshta)\.exe$"
| stats count AS Executions, values(CommandLine) AS CommandLines by aid, UserSid, ParentBaseFileName, ImageFileName
| sort - Executions

If you have an export in front of you, the free log analyzer reads Falcon Data Replicator files in the browser and flags suspicious command lines and LSASS access; the CrowdStrike field reference covers the export format.

Where these facts come from

CrowdStrike's event dictionary sits behind the Falcon console login, so the field list above is assembled from public sources that agree with one another, and checked on every build:

A field counts as documented when Panther or Splunk lists it for this event, or when at least two of CrowdStrike's query files read it from this event alone. The explanations are LogTriage's own.

Related events

Detect it

MITRE ATT&CK: T1059.001T1204.002

Frequently Asked Questions

What is ProcessRollup2 in CrowdStrike?
It is the Falcon sensor's process event, often shortened to PR2. The sensor writes one for each process it sees start, with the executable path, the command line, the parent process, the user and the file's hashes. It is the event most Falcon hunting queries start from, because nearly every other event can be tied back to the process that caused it.
Why does ImageFileName start with \Device\HarddiskVolume?
Falcon records the path the Windows kernel uses, which names the volume device instead of a drive letter, so C:\Windows\System32\cmd.exe appears as something like \Device\HarddiskVolume2\Windows\System32\cmd.exe. The volume number differs between machines. Match the end of the path with a regular expression, as CrowdStrike's own queries do, for example ImageFileName=/\\cmd\.exe$/i.
How do I find the process that started a ProcessRollup2 process?
ParentBaseFileName gives the parent's file name directly. For the full parent record, search ProcessRollup2 events on the same aid whose TargetProcessId equals this event's ParentProcessId. CrowdStrike's published join for parent and child processes uses exactly that key, and repeating it walks the tree up to the logon session.
Why is UserName missing from ProcessRollup2 in my Falcon Data Replicator data?
The record identifies the user by UserSid. Falcon's event search fills in a name, but a CrowdStrike query notes that the name is not in ProcessRollup2 records delivered through Falcon Data Replicator. Join UserIdentity events, which carry UserSid and UserName for each account that logged on, on aid and UserSid.
How do I see what a process did after it started?
Take the event's aid and TargetProcessId and search other events for the same aid with ContextProcessId equal to that value. NetworkConnectIP4 shows its connections and DnsRequest its lookups. CrowdStrike's own queries copy both fields into one name and use selfJoinFilter to keep only processes that have both kinds of event.

Find every ProcessRollup2 in your own Falcon export

Load a Falcon Data Replicator or event-stream export into the free browser analyzer: suspicious command lines, LSASS access, logon failures, reverse-shell ports and Falcon's own detections are flagged, with event names linked to their pages here. Nothing is uploaded.

Investigating something right now? LogTriage checks every address in the file against threat intelligence and writes the incident report: 10 analyses a month free. The incident pack adds the in-depth AI analysis and files up to 100 MB: 25 analyses for $19, one payment, no subscription. Pricing