13 октября 2026
ID 337656
Построение цепочки процессов с помощью SQL-запроса
При расследовании инцидентов может возникнуть необходимость проанализировать последовательность запуска процессов на конечном устройстве и определить связь между родительским и дочерним процессами.
События создания процессов Windows с идентификатором 4688 содержат сведения о созданном процессе и его родительском процессе. С помощью SQL-запроса можно связать события создания процессов между собой и получить цепочку из трех уровней: GrandParent (верхний) → Parent (родительский) → Current (текущий).
Запрос связывает события создания процессов по идентификаторам процессов и формирует текстовое представление полученной цепочки в поле ProcessTree.
В результате можно получить следующие сведения:
- имя конечного устройства;
- учетную запись и имя пользователя;
- идентификаторы и имена процессов верхнего, родительского и текущего уровней;
- последовательность запуска процессов в поле
ProcessTree.
Чтобы построить цепочку процессов:
- В веб-интерфейсе перейдите в раздел События.
- С помощью конструктора запросов или вручную в поле вводе укажите следующий запрос:
SELECT
b.DeviceHostName AS HostName,
b.SourceAccountID AS AccountID,
b.SourceUserName AS UserName,
a.DeviceCustomString3 AS GrandParentProcessID,
a.SourceProcessName AS GrandParentProcessName,
a.DeviceCustomString5 AS ParentProcessID,
a.DestinationProcessName AS ParentProcessName,
b.DeviceCustomString5 AS ProcessID,
b.DestinationProcessName AS ProcessName,
CONCAT(
a.SourceProcessName,
' -> ',
a.DestinationProcessName,
' -> ',
b.DestinationProcessName
) AS ProcessTree
FROM `events` AS a
INNER JOIN (
SELECT *
FROM `events`
WHERE DeviceEventClassID = '4688'
) AS b
ON a.DeviceCustomString5 = b.DeviceCustomString3
WHERE a.DeviceEventClassID = '4688';
- В верхней части окна откройте раскрывающийся список временного периода и укажите нужный диапазон времени для поиска событий.
- Нажмите на кнопку Выполнить запрос.
После выполнения запроса в рабочей области отобразится таблица с результатами.
- Если вы хотите использовать SQL-запрос повторно, сохраните его, выполнив следующие действия:
- Сохраните созданный запрос, нажав на значок дискеты
. - В открывшемся окне укажите название, например
Цепочка процессов (4688). - Выберите папку, в которой нужно сохранить этот запрос.
- Нажмите на кнопку Сохранить.
Сохраненный запрос можно найти, нажав на значок закладки
.
- Сохраните созданный запрос, нажав на значок дискеты
После выполнения запроса убедитесь, что:
- В результатах отображаются события создания процессов с
DeviceEventClassID = '4688'. - Значение поля
ParentProcessIDсоответствует идентификатору родительского процесса. - Значение поля
ProcessIDсоответствует идентификатору текущего процесса. - Поле
ProcessTreeсодержит последовательность из трех связанных процессов. - Сведения о хосте и пользователе соответствуют исходным событиям.
В результате выполнения запроса вы получите связанную последовательность процессов, которую можно использовать для анализа взаимосвязей между процессами на конечном устройстве.