Skip to content

Running Processes and Modules

Evidence: Running Processes and Modules
Description: Collect running processes and modules list
Category: System
Platform: windows
Short Name: pri
Is Parsed: Yes
Sent to Investigation Hub: Yes
Collect File(s): No

Windows processes are instances of executing programs. Each process has its own virtual memory space, security context, and system resources. Understanding running processes is fundamental to incident response and threat hunting.

The Process Environment Block (PEB) contains important process information including command line arguments, loaded modules, and environment variables. Windows maintains detailed information about each process including creation time, parent-child relationships, and security identifiers.

This collector gathers structured data about running processes and modules.

FieldDescriptionExample
ProcessIDProcess identifier1234
ParentIDParent process identifier5678
SessionIDSession identifier1
ObjectKernel object address0xFFFF8A8012345678
PEBProcess Environment Block address0x000000007FFD0000
BaseAddressBase address of the process image0x00007FF6ABC00000
CreationTimeProcess creation timestamp2023-10-15T14:30:00
Is32BitWhether process is 32-bitTRUE/FALSE
SIDSecurity identifierS-1-5-21-…
UsernameUser account nameDOMAIN\user
NameProcess namechrome.exe
CommandLineFull command line”C:\Program Files\Chrome\chrome.exe” —type=renderer
ProcessPathFull path to executableC:\Program Files\Chrome\chrome.exe
BasePriorityProcess base priority8
IsVirtualProcessWhether process is virtualFALSE
ProcessRowIDForeign key to process1
DllPathPath to loaded moduleC:\Windows\System32\kernel32.dll
DllBaseBase address where DLL is loaded0x00007FFE12340000
EntryPointDLL entry point address0x00007FFE12341000
SizeOfImageSize of the loaded image524288
LoadCountModule load count1
ProcessRowIDForeign key to process1
ThreadIDThread identifier9876
Win32StartAddressWin32 start address0x00007FF6ABC12340
StartAddressKernel start address0x00007FF6ABC12340
CreateTimeThread creation timestamp2023-10-15T14:30:05
StackBaseStack base address0x0000001234560000
StackLimitStack limit address0x0000001234520000
StateThread state5
WaitReasonReason for waiting0
BasePriorityThread base priority8
PriorityCurrent priority8
ProcessRowIDForeign key to process1
HandleHandle value0x1234
HandleTypeType of objectFile
HandleNameName or path of object\Device\HarddiskVolume3\Windows\System32\kernel32.dll
HandleAccessAccess rights0x12019F
HandleAttributesHandle attributes0
HandleObjectKernel object address0xFFFF8A8012345678
ProcessRowIDForeign key to process1

This collector uses a kernel driver to enumerate running processes and gather detailed information including:

  • Process list from kernel
  • Detailed process information via IOCTL calls
  • Module enumeration from PEB
  • Thread enumeration
  • Handle enumeration
  • Command line parsing to extract file paths

Process information is fundamental for incident response and threat hunting. Investigators use this data to identify malicious processes, detect process injection, analyze parent-child relationships, identify suspicious command lines, track loaded DLLs, detect thread injection, enumerate open handles to files and registry keys, and establish process execution timelines. This evidence is particularly valuable for detecting living-off-the-land attacks, fileless malware, and process manipulation techniques.