Поделиться через


Функция SeEtwWriteKMCveEvent (wdm.h)

Функция SeEtwWriteKMCveEvent — это функция трассировки для публикации событий при обнаружении уязвимости системы безопасности в драйверах режима ядра.

Синтаксис

NTSTATUS SeEtwWriteKMCveEvent(
  [in]           PCUNICODE_STRING CveId,
  [in, optional] PCUNICODE_STRING AdditionalDetails
);

Параметры

[in] CveId

Указатель на строку, в которой упоминается ИДЕНТИФИКАТОР CVE, связанный с уязвимостью, для которой вызывается это событие. Дополнительные сведения см. в разделе Technical Guidance for Handling the New CVE ID Syntax.

[in, optional] AdditionalDetails

Указатель на строку, предоставляющую дополнительные сведения, которые производитель событий может захотеть предоставить потребителю этого события.

Возвращаемое значение

SeEtwWriteKMCveEvent возвращает одно из следующих значений:

Код возврата Описание
STATUS_SUCCESS Драйвер успешно опубликован
ERROR_INVALID_PARAMETER Недопустимый указатель на переданный CVE-ID. События могут быть потеряны по ряду причин; например, если частота событий слишком высока или размер события больше размера буфера. В таких случаях счетчик EventsLost , член структуры EVENT_TRACE_PROPERTIES для соответствующего средства ведения журнала, обновляется с учетом количества событий, которые не были записаны.

Комментарии

Функция SeEtwWriteKMCveEvent публикует событие на основе CVE. Эта функция должна вызываться только в тех случаях, когда приложение обнаруживает попытку воспользоваться известной исправленной уязвимостью. В идеале этот вызов функции должен быть добавлен как часть самого исправления (обновления). Потребитель по умолчанию для этого события — EventLog-System. Чтобы включить другого потребителя, поставщик можно добавить в сеанс потребителя.

GUID поставщика: 85a62a0d-7e17-485f-9d4f-749a287193a6

Имя источника: Microsoft-Windows-Audit-CVE или CVE-Audit

Примеры

NTStatus status;
UNICODE_STRING CVEID;
UNICODE_STRING EventDetails;

…

RtlInitUnicodeString(&CVEID, L"CVE-2015-0000");
RtlInitUnicodeString(&EventDetails, L"Vulnerable request with data is logged in %temp%\abc.log");

status = SeEtwWriteKMCveEvent( &CVEID, &EventDetails);

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 10 и более поздних версиях Windows
Целевая платформа Windows
Header wdm.h
Библиотека Ntoskrnl.lib
DLL Ntoskrnl.exe