14

Предыстория: В середине моей работы неожиданно появилось лицензионное соглашение на установку "Microsoft Mouse and Keyboard Center". Я хотел бы понять, какой процесс запустил установку, но, используя Process Explorer, я увидел, что он исчез, и мне удалось найти только его PID (см. Скриншот).

Вопрос:

Если вы используете Process Explorer, вы, возможно, знаете ситуацию, когда родительский процесс процесса больше не существует, и вы можете видеть только его PID:

Существуют ли какие-либо журналы Windows, содержащие связь PID с запущенным процессом, чтобы я мог узнать, какой процесс выполнялся под данным PID?

Предпочтительно меня интересуют сценарии, где я не ожидал этого, поэтому я не использовал Process Monitor для захвата событий в системе.

3 ответа3

11

Существуют ли какие-либо журналы Windows, содержащие связь PID с запущенным процессом?

По умолчанию таких логов нет. Однако вы можете включить отслеживание процессов в журнале событий безопасности Windows.

Заметки:


Как использовать события отслеживания процессов в журнале безопасности Windows

В Windows 2003/XP вы получаете эти события, просто включив политику аудита отслеживания процессов.

В Windows 7/2008+ необходимо включить создание процесса аудита и, при необходимости, подкатегории завершения процесса аудита, которые вы найдете в разделе «Расширенная настройка политики аудита» в объектах групповой политики.

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

Источник Как использовать события отслеживания процессов в журнале безопасности Windows


Как включить создание процесса аудита

  1. Запустите gpedit.msc

  2. Выберите "Настройки Windows"> "Настройки безопасности"> "Локальные политики"> "Политика аудита"

  3. Щелкните правой кнопкой мыши "Аудит отслеживания процессов" и выберите "Свойства"

  4. Проверьте "Успех" и нажмите "ОК"


Что такое отслеживание процессов аудита

Этот параметр безопасности определяет, будет ли ОС проверять связанные с процессом события, такие как создание процесса, завершение процесса, обработка дублирования и косвенный доступ к объектам.

Если этот параметр политики определен, администратор может указать, следует ли проверять только успехи, только неудачи, как успехи, так и неудачи, или вообще не проверять эти события (т.е. ни успехи, ни неудачи).

Если включен Аудит успеха, запись аудита создается каждый раз, когда ОС выполняет одно из этих действий, связанных с процессом.

Если аудит отказа включен, запись аудита создается каждый раз, когда ОС не может выполнить одно из этих действий.

По умолчанию: без аудита

Важное замечание: Для большего контроля над политиками аудита используйте параметры в узле Конфигурация расширенной политики аудита. Для получения дополнительной информации о конфигурации расширенной политики аудита см. Http://go.microsoft.com/fwlink/?LinkId=140969.

3

Единственный способ убедиться, что у вас должен быть включен аудит, чтобы отслеживать создание процессов.

Из программы "Локальная политика безопасности" (secpol.msc с экрана запуска, если у вас возникли проблемы с ее поиском), перейдите в «Настройки безопасности -> Локальные политики -> Политика аудита», затем включите "Отслеживание процесса аудита" для "Успех ".

Как только вы это сделаете, перейдите к средству просмотра событий и проверьте журнал событий "Secruity", там вы увидите записи "Audit Success" для каждого запуска или завершения процесса.

A process has exited.

Subject:
    Security ID:        SYSTEM
    Account Name:       SCOTT-PC$
    Account Domain:     WORKGROUP
    Logon ID:       0x3E7

Process Information:
    Process ID: 0x1338
    Process Name:   C:\Windows\System32\consent.exe
    Exit Status:    0x0

Вам нужно будет преобразовать искомый ID процесса из десятичного числа в шестнадцатеричное (3336 становится 0xD08). Самый простой способ конвертации - это калькулятор открытых окон, перейдите в режим "Программист", введите число в режиме "dec", затем нажмите в режиме "hex". Отображаемое число будет преобразовано в шестнадцатеричное для вас.

0

Если это одноразовая вещь и вы не хотите постоянно регистрировать свои процессы, я бы предложил использовать Microsoft Process Monitor (https://technet.microsoft.com/en-us/Library/bb896645.aspx). Его нужно запустить до появления популярного, но даже после того, как родительский процесс будет мертв, он соберет всю информацию, которую вы искали.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .