VolMemLyzer3 Feature Extraction Report

Memory forensics · quantitative schema · downstream analytics

520 features that turn Volatility artifacts into a reusable memory-image representation.

This report documents VolMemLyzer's feature-extraction layer separately from its analyst-facing triage rules. The feature schema preserves image-level measurements for statistical analysis and machine-learning pipelines while keeping the underlying forensic artifacts available for explanation and review.

Behaviour-Centric Cybersecurity CenterCanonical schemaSystem / Performance / Analysis Report
520documented extracted features
51forensic feature groups
72extractor functions in the tree
56registered plugin definitions
1canonical schema: FEATURES.md

Separation of concerns

Rules prioritize evidence. Features preserve measurements.

Analyst-facing rules

Ask whether an object satisfies an investigative hypothesis and should be surfaced for review. They use explicit conditions, evidence families and bounded scoring.

Open the separate rule report

Feature extraction

Asks what measurable property of the memory image should be preserved for downstream statistics or modelling. A feature value is not automatically a detection.

Feature pipeline

Cached forensic artifacts become an image-level feature vector.

Memory imagecase input
Volatility artifactsstructured plugin output
Dependency graphextractors wait for required context
Normalizationplugin-specific parsing
Aggregationimage-level measurements
Feature rowCSV / JSON / analytics
The feature layer can reuse an already collected case.
That lets downstream experiments operate on the same forensic evidence without turning every model or statistics change into another memory-image run.

Schema landscape

51 groups describe different forensic surfaces.

The circle below encodes all 520 documented features by group size. Hover for counts; click a segment to filter the searchable catalog to that group. The largest groups are also ranked at right.

Largest groups

The ring shows schema breadth, not security importance. A larger group simply exposes more measurements.

Coverage domains

The schema spans user-mode, kernel, persistence and execution context.

Processes & execution

pslist, psscan, pstree, psxview, command lines, privileges and environment-derived measurements.

Memory mappings

VAD structure, private executable memory and malfind-derived aggregates.

Modules & drivers

Loaded modules, module scans, drivers, callbacks, IRP and kernel-oriented state.

Network

Connection/socket state, address/port distributions and image-level network summaries.

Registry & persistence

Registry, Amcache, services, execution-history and related persistent-state measurements.

Object & system state

Handles, pools, mutants, symlinks, timers, windows/stations and other structural measurements.

Interactive catalog

Search the canonical 520-feature schema.

The table below is populated directly from FEATURES.md when loaded. Group names come from its section headings, while feature semantics come from the Markdown tables. This page is a view of the canonical schema, not a parallel copy.

Loading canonical feature schema…
FeatureGroupTypeDomainUnitDescription / interpretation
Loading…

Direct links such as #registry, #vadinfo or #handles filter the catalog automatically. If a local browser blocks the live fetch, use the canonical schema; GitHub Pages can load it normally.

How to read a feature

A measurement needs type, domain, unit and aggregation context.

Name

amcache.nonMicrosoftRatio

Stable schema identifier.

Mathematical meaning

Type, expected domain and unit distinguish counts, ratios, timestamps, entropy and memory-size measurements.

Interpretation

Many values require a host-class baseline. “Higher” or “rarer” is not automatically “malicious.”

Feature extraction is not malware classification.
The schema records repeatable quantitative properties of the memory image. A separate validated method is required to turn those measurements into a classifier or statistical conclusion.

Missing data

Unavailable is different from zero.

Measured zero

The relevant artifact was successfully produced and the extractor measured a zero-valued quantity.

Measurement unavailable

The upstream plugin failed or did not produce usable evidence. VolMemLyzer records the failed plugin rather than silently converting absence into a benign value.

This distinction is essential for statistical validity. Treating collection failure as a real zero contaminates both descriptive analysis and model training.

Downstream integration

Deep links let other projects reference the schema without re-explaining it.

ConceptStable target
Complete feature systemfeatures.html
Registry featuresfeatures.html#registry
VAD featuresfeatures.html#vadinfo
Handle featuresfeatures.html#handles
Network featuresfeatures.html#netscan
Analysis rulesindex.html#rules
Schedulerindex.html#scheduler

This is the pattern MemTriage should use: explain what MemTriage does, then link here when the reader wants the extraction schema or VolMemLyzer execution details.

Reproducibility

The interactive page should never become the source of truth.

Feature definitions remain version-controlled in FEATURES.md; extractor implementations remain in the VolMemLyzer source tree. The browser report exists to make the schema searchable, visual and linkable.