mirror of
https://github.com/volatilityfoundation/volatility3.git
synced 2026-09-06 09:47:38 +02:00
add sanity check in Linux find_aslr to skip unrelocated init_task
This commit is contained in:
@@ -156,6 +156,18 @@ class LinuxIntelStacker(interfaces.automagic.StackerLayerInterface):
|
||||
and init_task.state.cast("unsigned int") != 0
|
||||
):
|
||||
continue
|
||||
elif init_task.active_mm.cast("long unsigned int") == module.get_symbol(
|
||||
"init_mm"
|
||||
).address and init_task.tasks.next.cast(
|
||||
"long unsigned int"
|
||||
) == init_task.tasks.prev.cast(
|
||||
"long unsigned int"
|
||||
):
|
||||
# The idle task steals `mm` from previously running task, i.e.,
|
||||
# `init_mm` is only used as long as no CPU has ever been idle.
|
||||
# This catches cases where we found a fragment of the
|
||||
# unrelocated ELF file instead of the running kernel.
|
||||
continue
|
||||
|
||||
# This we get for free
|
||||
aslr_shift = (
|
||||
|
||||
Reference in New Issue
Block a user