From cybersecurity-skills
Conducts memory forensics with Volatility 3: acquires RAM dumps from Windows/Linux, analyzes processes, DLLs, malware, injections, networks, and credentials for incident response.
npx claudepluginhub mukul975/anthropic-cybersecurity-skills --plugin cybersecurity-skillsThis skill uses the workspace's default tool permissions.
- An endpoint has been contained during an active incident and volatile evidence must be preserved
Applies Acme Corporation brand guidelines including colors, fonts, layouts, and messaging to generated PowerPoint, Excel, and PDF documents.
Builds DCF models with sensitivity analysis, Monte Carlo simulations, and scenario planning for investment valuation and risk assessment.
Calculates profitability (ROE, margins), liquidity (current ratio), leverage, efficiency, and valuation (P/E, EV/EBITDA) ratios from financial statements in CSV, JSON, text, or Excel for investment analysis.
Do not use for analyzing disk images or file system artifacts; use disk forensics tools (Autopsy, FTK) for those tasks.
Capture RAM from the target system using a forensically sound method:
Windows (WinPmem):
winpmem_mini_x64.exe output.raw
Windows (Magnet RAM Capture):
MagnetRAMCapture.exe
# GUI-based, select output path, generates .raw file
Windows (DumpIt):
DumpIt.exe
# Creates memory dump in current directory automatically
Linux (AVML - Acquire Volatile Memory for Linux):
./avml output.lime
Document acquisition metadata:
Acquisition Record:
━━━━━━━━━━━━━━━━━
Target Host: WKSTN-042
RAM Size: 16 GB
Dump File: WKSTN-042_20251115_1445.raw
Dump Size: 16,843,612,160 bytes
SHA-256: a4b3c2d1e5f6...
Acquisition Tool: WinPmem 4.0
Acquired By: [Analyst Name]
Timestamp: 2025-11-15T14:45:00Z
Volatility 3 automatically identifies the OS, but verify:
# Get system information
vol -f WKSTN-042_20251115_1445.raw windows.info
# Output includes:
# OS: Windows 10 22H2 (Build 19045.3693)
# Kernel Base: 0xf8066c200000
# DTB: 0x1aa000
# Symbols: ntkrnlmp.pdb
Examine the process tree for suspicious activity:
# List all running processes
vol -f memory.raw windows.pslist
# Show process tree (parent-child relationships)
vol -f memory.raw windows.pstree
# Scan for hidden/unlinked processes (rootkit detection)
vol -f memory.raw windows.psscan
# Compare pslist vs psscan to find hidden processes
# Processes in psscan but NOT in pslist may be hidden by rootkits
Key indicators of compromise in process analysis:
svchost.exe running without -k parameter or with wrong parent (should be services.exe)csrss.exe or lsass.exe with abnormal parent processscvhost.exe, lssas.exe)outlook.exe, winword.exe, or excel.exelsass.exe, smss.exe)Extract active and recently closed network connections:
# List all network connections
vol -f memory.raw windows.netscan
# Focus output fields:
# Offset Proto LocalAddr LocalPort ForeignAddr ForeignPort State PID Owner
# 0xe10... TCPv4 10.1.5.42 49721 185.220.101.42 443 ESTAB 3847 update.exe
Cross-reference suspicious connections with the process tree to identify C2 communications. Look for:
svchost.exe or system processes to external IPsUse malfind to identify injected code and memory-resident malware:
# Detect injected code in processes
vol -f memory.raw windows.malfind
# Output shows:
# PID Process Start End Tag Protection Hexdump/Disassembly
# 3847 explorer.exe 0x2a10000 0x2a14000 VadS PAGE_EXECUTE_READWRITE
# MZ header detected - injected PE
# Dump suspicious process memory
vol -f memory.raw windows.memmap --pid 3847 --dump
# List DLLs loaded by a suspicious process
vol -f memory.raw windows.dlllist --pid 3847
# Scan memory with YARA rules
vol -f memory.raw windows.yarascan --yara-file malware_rules.yar
Recover sensitive data from memory:
# Dump registry hives from memory (for password hash extraction)
vol -f memory.raw windows.registry.hivelist
vol -f memory.raw windows.hashdump
# Extract command line history
vol -f memory.raw windows.cmdline
# List handles (files, registry keys, mutexes)
vol -f memory.raw windows.handles --pid 3847
# Extract clipboard contents
vol -f memory.raw windows.clipboard
# Dump cached files from memory
vol -f memory.raw windows.dumpfiles --pid 3847
Compile findings into a structured analysis report documenting all evidence extracted from memory:
| Term | Definition |
|---|---|
| Volatile Evidence | Data that exists only in RAM and is lost when a system is powered off; includes running processes, network connections, encryption keys |
| Process Injection | Technique where malware inserts code into a legitimate process's memory space to evade detection (malfind detects this) |
| EPROCESS | Windows kernel data structure representing a process; psscan searches for these structures even when unlinked from the active process list |
| VAD (Virtual Address Descriptor) | Windows kernel structure tracking memory regions allocated to a process; malfind examines VADs for executable but non-file-backed regions |
| Symbol Tables | OS-specific data structures that Volatility 3 uses to parse memory; downloaded automatically based on detected OS version |
| PAGE_EXECUTE_READWRITE | Memory protection flag indicating a region is readable, writable, and executable; common indicator of injected malicious code |
| Memory-Resident Malware | Malware that operates entirely in RAM without writing persistent files to disk, making it invisible to traditional disk-based antivirus |
Context: EDR detects suspicious named pipe activity but cannot identify the source. A memory dump is acquired from the suspect endpoint for analysis.
Approach:
windows.pstree to identify the process hierarchy and spot abnormal parent-child relationshipswindows.malfind to detect injected code regions, particularly in svchost.exe or rundll32.exewindows.netscan to identify C2 connections and correlate with the injected process PIDwindows.cmdline to identify any post-exploitation commands executedPitfalls:
MEMORY FORENSICS ANALYSIS REPORT
==================================
Incident: INC-2025-1547
Evidence File: WKSTN-042_20251115_1445.raw
SHA-256: a4b3c2d1e5f6...
OS Identified: Windows 10 22H2 (Build 19045)
Analysis Tool: Volatility 3.2.0
PROCESS ANOMALIES
PID Process Parent Anomaly
3847 update.exe powershell Suspicious executable in Temp directory
5102 svchost.exe explorer Wrong parent (expected services.exe)
--- [hidden] --- Found in psscan but not pslist
INJECTED CODE
PID Process Address Range Protection Finding
5102 svchost.exe 0x00A10000-0x00A14 PAGE_EXECUTE_READWRITE MZ header (PE injection)
NETWORK CONNECTIONS
PID Process Local Foreign State
3847 update.exe 10.1.5.42:49721 185.220.101.42:443 ESTABLISHED
5102 svchost.exe 10.1.5.42:51003 91.215.85.17:8443 ESTABLISHED
YARA MATCHES
Rule: CobaltStrike_Beacon_x64
Match PID: 5102 (svchost.exe)
Offset: 0x00A10240
EXTRACTED IOCS
Hashes: [SHA-256 of dumped injected code]
C2 IPs: 185.220.101.42, 91.215.85.17
C2 Domains: [extracted from beacon config]
Mutexes: Global\MSCTF.Shared.MUTEX.ZRQ