SeEtwWriteKMCveEvent, fonction (wdm.h)

La fonction SeEtwWriteKMCveEvent est une fonction de suivi permettant de publier des événements lorsqu’une tentative d’attaque de vulnérabilité de sécurité est détectée dans vos pilotes en mode noyau.

Syntaxe

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

Paramètres

[in] CveId

Pointeur vers une chaîne mentionnant l’ID CVE associé à la vulnérabilité pour laquelle cet événement est déclenché. Pour plus d’informations, consultez Guide technique pour la gestion de la nouvelle syntaxe d’ID CVE.

[in, optional] AdditionalDetails

Pointeur vers une chaîne donnant des détails supplémentaires que le producteur d’événements peut souhaiter fournir au consommateur de cet événement.

Valeur retournée

SeEtwWriteKMCveEvent retourne l’une des valeurs suivantes :

Code de retour Description
STATUS_SUCCESS Le pilote a été publié avec succès
ERROR_INVALID_PARAMETER Pointeur non valide vers CVE-ID passé. Les événements peuvent être perdus pour plusieurs raisons ; par exemple, si le taux d’événements est trop élevé ou si la taille de l’événement est supérieure à la taille de la mémoire tampon. Dans ce cas, le compteur EventsLost , membre de la structure EVENT_TRACE_PROPERTIES de l’enregistreur d’événements correspondant, est mis à jour avec le nombre d’événements qui n’ont pas été enregistrés.

Remarques

La fonction SeEtwWriteKMCveEvent publie un événement basé sur CVE. Cette fonction doit être appelée uniquement dans les scénarios où une tentative d’exploitation d’une vulnérabilité connue et corrigée est détectée par l’application. Dans l’idéal, cet appel de fonction doit être ajouté dans le cadre du correctif (mise à jour) lui-même. Le consommateur par défaut pour cet événement est EventLog-System. Pour activer un autre consommateur, le fournisseur peut être ajouté à la session consommateur.

GUID du fournisseur : 85a62a0d-7e17-485f-9d4f-749a287193a6

Nom de la source : Microsoft-Windows-Audit-CVE ou CVE-Audit

Exemples

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);

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows 10 et versions ultérieures de Windows
Plateforme cible Windows
En-tête wdm.h
Bibliothèque Ntoskrnl.lib
DLL Ntoskrnl.exe