Enumerating Process Memory Tools Flashcards

1
Q

Virtual Address Descriptors (VADs)

A

VADs are structures defined by Windows to track reserved or committed, virtually contiguous collections of pages. For example, if a page is 4KB and a process commits 10 pages at the same time, a VAD is created in kernel memory that describes the 40KB range of memory. If the region contains a memory-mapped file, the VAD also stores information about the file’s path.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Working Set List

A

A process’ working set describes the collection of recently accessed pages in virtual memory that are present in physical memory (no swapped to disk). It can come in handy for debugging purposes or for cross-referencing with other sources of process memory. Working sets never contain references to nonpageable memory or large pages. (Not used much in forensics)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

PFN database

A

Windows uses the PFN database to track the state of each page in physical memory, which can give you a unique view of how memory is being used because page tables, VADs, and working sets all focus on virtual memory.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

VAD Tree

A

A process’ VAD tree describes the layout of its memory segments at a slightly higher level than the page tables.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

CommitCharge

A

Specifies the number of pages committed in the region described by the VAD node. The reason we care about this field is because historically when code injecting malware sets up the target process’ address space to receive the malicious code, it commits all pages up front–it doesn’t reserver them and then go back and commit them later (although it could).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Page Tables

A

MISSING

How well did you know this?
1
Not at all
2
3
4
5
Perfectly