речь идет о драйвере ядра Windows и управлении памятью.
Мне действительно любопытно, есть ли функция (или даже какой-либо неудобный подход) для получения (или итерации) всех выделений памяти для определенного тега пула ?? Они выделяются с использованием ExAllocatePoolWithTag (тип, размер, тег) ...
Есть функции ядра, использующие определенный Pool-Tag, теперь мне нужно найти все выделения, сделанные с использованием этого Tag?
Я относительно уверен, что это невозможно (по соображениям безопасности), но мне все еще нужно подтверждение об этом.
Ура,
Будет
<ч />
Обновить:
(о комментариях к WinDbg ниже)
kd> !poolfind ObFl
Scanning large pool allocation table for Tag: ObFl (fffffa8002290000 : fffffa8002350000)
Searching NonPaged pool (fffffa8001772000 : ffffffe000000000) for Tag: ObFl
... Таким образом, это означает, что мы должны найти общий способ найти «таблицу распределения пула» или границы невыгружаемого пула (если требуется). Звучит многообещающе.
<ч />
Update2:
Существует несколько экспортов ntoskrnl: nt! PoolBigPageTable nt! PoolBigPageTableSize nt! PoolBigPageTableHash, которые мне нужно проверить ....