Documentation Index
Fetch the complete documentation index at: https://mintlify.com/HavocFramework/Havoc/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Theproc command provides comprehensive process management functionality including enumeration, creation, termination, and memory analysis of processes on the target system.
Syntax
Subcommands
list
Enumerate all running processes on the target system.grep
Search for processes by name.The process name to search for (case-insensitive, supports partial matches)
kill
Terminate a process by PID.The process identifier of the process to terminate
create
Start a new process in suspended or running state.Process creation state:
normal- Start process in running statesuspended- Start process in suspended state (useful for injection)
Full path to the executable to launch
Command-line arguments to pass to the process
module
List loaded modules (DLLs) from a specified process.Process identifier to enumerate modules from
memory
Query process memory pages with specified protection flags.Process identifier to query memory from
Memory protection flag to filter by:
PAGE_NOACCESS- No accessPAGE_READONLY- Read-onlyPAGE_READWRITE- Read and writePAGE_WRITECOPY- Copy-on-writePAGE_EXECUTE- Execute onlyPAGE_EXECUTE_READ- Execute and readPAGE_EXECUTE_READWRITE- Execute, read, and writePAGE_EXECUTE_WRITECOPY- Execute and copy-on-writePAGE_GUARD- Guard page
Examples
List All Processes
Search for Specific Process
Create Suspended Process for Injection
List Modules in Process
Find Executable Memory Regions
Kill Process
OPSEC Considerations
Process Enumeration
- Process listing may trigger ETW events
- Some EDR solutions monitor process enumeration APIs
- Consider using
proc grepfor targeted searches instead of full enumeration
Process Creation
- Suspended State
- Normal State
Creating processes in suspended state:
- Advantage: Allows injection before process initialization
- Risk: Suspended processes may appear suspicious to monitoring tools
- Use Case: Process injection and hollowing techniques
Memory Scanning
- Querying process memory can trigger:
OpenProcessmonitoring- Memory access alerts in EDR
- Anti-debugging protections
- Use sparingly and only when necessary
Process Termination
- Killing protected processes may fail or trigger alerts
- Some processes are critical and terminating them may cause system instability
- Consider the impact on system stability before killing processes
Use Cases
Pre-Injection Reconnaissance
Detecting Injected Code
Clean Process Creation
Advanced Usage
PPID Spoofing
Combine withproc ppidspoof command to set a specific parent process:
Notes
- Process listing requires
SeDebugPrivilegefor full visibility - Some processes may be protected and inaccessible
- Memory queries may fail for protected processes (PPL/PPL-Antimalware)
- Always verify process architecture before injection to avoid crashes
- Suspended processes must be resumed or terminated to avoid resource leaks
