Есть ли в Windows какой-либо файл журнала, в котором отслеживаются все EXE-вызовы, или можно ли включить такой журнал? Будет ли это содержать аргументы / параметры этих вызовов?
Спасибо
Это можно сделать с помощью политики создания процесса аудита, которая включена либо в групповой политике, если вы находитесь в среде домена, либо в локальной политике на отдельной рабочей станции. Этот параметр находится в Конфигурация компьютера> Политики> Параметры Windows> Параметры безопасности> Расширенная конфигурация аудита> Подробное отслеживание
Каждый раз при запуске процесса в журнал событий Windows записывается событие с идентификатором 4688.
Более поздние версии Windows и Windows server (8.1, 2012 R2 и выше) также будут записывать аргументы командной строки, если вы включите второй параметр политики под названием «Включить командную строку в события создания процесса».
Вам следует взглянуть на инструмент Sysinternals под названием Sysmon.
Системный монитор (Sysmon) - это системная служба Windows и драйвер устройства, который, будучи установленным в системе, остается резидентным при перезагрузках системы для отслеживания и регистрации активности системы в журнале событий Windows. Он предоставляет подробную информацию о создании процессов, сетевых подключениях и изменениях времени создания файлов.
Sysmon включает в себя следующие возможности:
Logs process creation with full command line for both current and parent processes.
Я написал программу на C ++, которая делает именно это. Это простая программа. Пседо-код программы:
start foreach arg {write write arg} вызвать исходную программу. end переместите исходную программу в другое место (исполняемый файл .original.exe). Измените свою программу на имя оригинала (исполняемый файл .exe)
бадда-бинг.
Возможно, у меня все еще есть код, но это, вероятно, так же легко сделать самому.
PS - csharp для этого не работает.