Запусти диспетчер задач зайди во вкладку процессы->вид включи опцию отображать PID-идентификатор процесса,а в колонке имя образа название твоего файла.Ты не написал как ты хочешь получить имя файла програмно или средствами ОС.
мда, но например, если это нужно сделать сразу после вызова ZwCreateProcess(Ex), (если она перехвачена то бишь) то Peb->Ldr нулевой. В этом случае можно воспользоваться SectionHandle, А вот как получить путь из CreateProcessNotifyProc? в этот момент Peb->Ldr все еще нулевой, а как по eProcess добраться до SectionHandle?
n0name я, так думаю, что не всегда нужно следовать догмам. Возможно надо искать какие-то альтернативные решения. Например: глава 15, от Four-F, навела меня на мысль, что так кейлогер или снифер клавиатуры писать не следует. Гораздо проще переопределить "MajorFunction[IRP_MJ_READ]". Получить "IRP" далее, переопределить "CompletionRoutine" в нем, затем пометить пакет определенным образом и отправить пакет драйверу к которому он следовал. При завершении жизненного цикла пакета, будет вызвотна "CompletionRoutine" моего драйвера. Далее, в "CompletionRoutine" моего драйвера востанавливаем "IRP" пакет (так как он выглядел до изменений), забираем из него коды нажатых клавишь и отправляем пакет далее. Очень странно, но такой драйвер даже сниферит "USB" клавиатуры в отличии от главы 15.
причём здесь 15 глава? Способов написания логгеров куча. а вот получения пути процесса без использования Peb'a не сказал бы что так уж много, точнее я знаю один, который и описан в 14 главе. Если можешь предложить другой, такой же простой, то с удовольствием почитаю. А насчёт догм, поговорку про велосипед напомнить?
n0name может я ошибаюсь, но я считаю, что этот форум и существует для поиска новых решений. Если бы у меня было готовое решение, я опубликовал бы его сразу.
а зачем искать новые решения, если и старые вполне работоспособны? может еще написать работу с NTFS вручную, ибо NtCreateFile старо и неинтересно?
ZwQueryInformationProcess приведет к тому же самому peb'у а вообще правильней получать имена через секцию.