Как получить информацию о процессах и их модулях, не читая чужую память?

Для получения списка процессов можно использовать CreateToolhelp32Snapshot и функции Process32First/Next. Эти методы позволяют получить основные сведения о процессах без прямого чтения чужой памяти. Альтернативный подход, рассматриваемый в исходном коде Cheat Engine, предполагает использование структуры PROCESSENTRY32 для получения информации, включая ID процесса.
Как получить информацию о процессах и их модулях, не читая чужую память?
Изображение носит иллюстративный характер

Для доступа к информации о модулях, загруженных в процесс, можно использовать функции PhpEnumProcessModules/PhpEnumProcessModules32 из Process Hacker. Структура LDR_DATA_TABLE_ENTRY_PHNT содержит сведения о модуле, включая его адрес в памяти, размер и имя. Важно помнить, что имя модуля (UNICODE_STRING) находится по адресу в адресном пространстве другого процесса, и для его чтения нужно использовать NtReadVirtualMemory.

При попытке чтения памяти другого процесса, можно столкнуться с ограничениями доступа. Process Hacker использует собственный драйвер для обхода ограничений. Подключение к этому драйверу осуществляется через KphConnect, но этот метод не всегда успешен. В случае проблем с доступом, стоит сосредоточиться на других подходах или на работе с пользовательским интерфейсом.


Новое на сайте

19164Уязвимые обучающие приложения открывают доступ к облакам Fortune 500 для криптомайнинга 19163Почему ботнет SSHStalker успешно атакует Linux уязвимостями десятилетней давности? 19162Microsoft устранила шесть уязвимостей нулевого дня и анонсировала радикальные изменения в... 19161Эскалация цифровой угрозы: как IT-специалисты КНДР используют реальные личности для... 19160Скрытые потребности клиентов и преимущество наблюдения над опросами 19159Академическое фиаско Дороти Паркер в Лос-Анджелесе 19158Китайский шпионский фреймворк DKnife захватывает роутеры с 2019 года 19157Каким образом корейские детские хоры 1950-х годов превратили геополитику в музыку и... 19156Научная революция цвета в женской моде викторианской эпохи 19155Как новый сканер Microsoft обнаруживает «спящих агентов» в открытых моделях ИИ? 19154Как новая кампания DEADVAX использует файлы VHD для скрытой доставки трояна AsyncRAT? 19153Как новые китайские киберкампании взламывают госструктуры Юго-Восточной Азии? 19152Культ священного манго и закат эпохи хунвейбинов в маоистском Китае 19151Готовы ли вы к эре коэффициента адаптивности, когда IQ и EQ больше не гарантируют успех? 19150Иранская группировка RedKitten применяет сгенерированный нейросетями код для кибершпионажа
Ссылка