Skip to content
Security
Skill

/conducting-memory-forensics-with-volatility

Performs memory forensics analysis using Volatility 3 to extract evidence

From plugin
cybersecurity-skills
36k200 skills

Claude Code

$ npx -y skills add mukul975/Anthropic-Cybersecurity-Skills --skill conducting-memory-forensics-with-volatility --agent claude-code

SKILL.md

conducting-memory-forensics-with-volatility.SKILL.md
name: conducting-memory-forensics-with-volatility
description: 'Performs memory forensics analysis using Volatility 3 to extract evidence
  of malware execution, process injection, network connections, and credential theft
  from RAM dumps captured during incident response. Covers memory acquisition, process
  analysis, DLL inspection, and malware detection. Activates for requests involving
  memory forensics, RAM analysis, Volatility framework, memory dump investigation,
  volatile evidence analysis, or live memory acquisition.

  '
domain: cybersecurity
subdomain: incident-response
tags:
- memory-forensics
- volatility
- RAM-analysis
- process-injection
- DFIR
mitre_attack:
- T1055
- T1003.001
- T1014
- T1059.001
- T1620
version: 1.0.0
author: mahipal
license: Apache-2.0
nist_csf:
- RS.MA-01
- RS.MA-02
- RS.AN-03
- RC.RP-01

Conducting Memory Forensics with Volatility

When to Use

  • An endpoint has been contained during an active incident and volatile evidence must be preserved
  • EDR alerts suggest process injection or fileless malware that only exists in memory
  • Encryption keys need to be recovered from a ransomware-infected system before shutdown
  • Credential theft (Mimikatz, LSASS dumping) is suspected and evidence must be confirmed
  • A rootkit or kernel-level compromise is suspected and disk-based analysis is insufficient

**Do not use** for analyzing disk images or file system artifacts; use disk forensics tools (Autopsy, FTK) for those tasks.

Prerequisites

  • Memory acquisition tool deployed or available: WinPmem, Magnet RAM Capture, DumpIt, or AVML (Linux)
  • Volatility 3 installed with Python 3.8+ and required symbol tables
  • Sufficient storage for memory dumps (equal to system RAM size, typically 8-64 GB)
  • YARA rules for malware detection in memory (Florian Roth's signature-base, custom rules)
  • Reference baseline of normal processes and DLLs for the OS version being analyzed
  • Chain of custody documentation for evidence handling

Workflow

Step 1: Acquire Memory Image

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

Step 2: Identify the Operating System and Profile

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

Step 3: Analyze Running Processes

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 process
  • Processes with misspelled names (`scvhost.exe`, `lssas.exe`)
  • Unusual processes spawned by `outlook.exe`, `winword.exe`, or `excel.exe`
  • Multiple instances of processes that should be singletons (`lsass.exe`, `smss.exe`)

Step 4: Investigate Network Connections

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:

  • Connections to external IPs from unexpected processes
  • High port numbers connecting to port 443/80 from non-browser processes
  • Connections from `svchost.exe` or system processes to external IPs

Step 5: Detect Process Injection and Malware

Use 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

Step 6: Extract Credentials and Artifacts

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

Step 7: Generate Forensic Report

Co

Read more
@mukul975
Ships withcybersecurity-skills

817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) · agentskills.io standard · Works with Claude Code, GitHub Copilot, Codex CLI, Cursor, Gemini CLI & 20+ platforms · 29 security domains · Apache 2.0

Stars on GitHub

Momentum

stars in total
35.9k
Star history of mukul975/Anthropic-Cybersecurity-Skills on GitHub, a chart by star-history.com

Other skills on cybersecurity-skills.

More skills from other plugins.

api-security

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication,…

@zhaoxuya520@zhaoxuya520Install Skill
nemoclaw-user-guide

nemoclaw-user-guide

Find official NemoClaw documentation for installation, configuration, operation, or troubleshooting. Also handles requested docs…

nemoclaw10d23k
@nvidia@nvidiaInstall Skill
ai-sdk-5

ai-sdk-5

Vercel AI SDK patterns for the installed major (ui/package.json: `ai` 6.x, `@ai-sdk/react` 3.x). The skill name is historical;…

prowlertoday15k
@prowler-cloud@prowler-cloudInstall Skill

Questions about conducting-memory-forensics-with-volatility.

Which coding agents can use conducting-memory-forensics-with-volatility?
conducting-memory-forensics-with-volatility installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.