Condividi tramite


Firme digitali per i moduli kernel nei sistemi che eseguono Windows Vista

 

Microsoft Corporation

Aggiornamento giugno 2007

Si applica a:
   Windows Vista
   Windows Server 2008

Riepilogo: Per Microsoft Windows Vista e versioni successive della famiglia di sistemi operativi Windows, il software in modalità kernel deve avere una firma digitale per il caricamento nei sistemi computer basati su x64. Informazioni su come gestire il processo di firma per il software in modalità kernel per Windows Vista. (22 pagine stampate).

La versione corrente di questo documento viene mantenuta sul Web all'indirizzo: https://www.microsoft.com/whdc/system/platform/64bit/kmsigning.mspx.

Contenuto

Introduzione
   Firme digitali come procedura consigliata
   Opzioni di firma del codice in modalità kernel
Processo di firma del codice in modalità kernel
   Come ottenere un certificato di pubblicazione software (SPC)
   Creazione di un file con estensione cat firmato
   Aggiunta di una firma incorporata a un file di immagine del driver
Come disabilitare l'imposizione della firma durante lo sviluppo
Come usare la firma di test
   Abilitazione della risoluzione dei problemi di firma dei test
   Rilevamento degli errori di caricamento del driver
   Abilitazione degli eventi di log del sistema di diagnostica dell'integrità del codice
   Opzioni di debug della verifica del driver
Risorse

Introduzione

Sia per gli utenti consumer che per gli utenti aziendali di Windows in tutto il mondo, la protezione dei dati personali e aziendali rimane un problema principale. Microsoft si impegna a implementare nuovi modi per limitare la diffusione di software dannoso. Le firme digitali per il software in modalità kernel rappresentano un modo importante per garantire la sicurezza nei sistemi informatici.

Le firme digitali consentono all'amministratore o all'utente finale che installa software basato su Windows di sapere se un editore legittimo ha fornito il pacchetto software. Quando gli utenti scelgono di inviare Segnalazione errori Windows dati a Microsoft dopo un errore o un altro errore, Microsoft può analizzare i dati per conoscere il software degli editori in esecuzione nel sistema al momento dell'errore. Gli editori software possono quindi usare le informazioni fornite da Microsoft per trovare e risolvere i problemi nel software.

Windows Vista si basa sulle firme digitali sul codice in modalità kernel per aumentare la sicurezza e la stabilità della piattaforma Microsoft Windows e abilitare nuove esperienze dei clienti con contenuti Premium di nuova generazione:

  • I driver devono essere firmati per i dispositivi che trasmetteno contenuto protetto. Sono inclusi i driver audio che usano i comandi DIP (Protected User Mode Audio) e PROTECTED Audio Path (PAP) e i driver di dispositivo video che gestiscono i comandi di protezione con percorso video protetto (PVP-OPM).
  • Il software in modalità kernel non firmato non verrà caricato e non verrà eseguito nei sistemi basati su x64.

Nota: Anche gli utenti con privilegi di amministratore non possono caricare codice in modalità kernel non firmato nei sistemi basati su x64. Questo vale per qualsiasi modulo software caricato in modalità kernel, inclusi driver di dispositivo, driver di filtro e servizi kernel.

L'ambito dei nuovi criteri di firma del codice in modalità kernel è molto ampio. Per gli sviluppatori che pubblicano software in modalità kernel, questo criterio ha gli effetti seguenti:

  • Per qualsiasi componente in modalità kernel che non è già firmato, gli editori devono ottenere un certificato di pubblicazione software (SPC) e usare SPC per firmare tutto il software in modalità kernel a 64 bit che verrà eseguito in sistemi computer basati su x64 che eseguono Windows Vista. Sono inclusi il software dei servizi in modalità kernel.

  • Gli editori che forniscono driver di dispositivo a 64 bit o altri software in modalità kernel già firmati tramite il programma logo di Windows avranno i cataloghi driver firmati con una firma WHQL (Windows Hardware Quality Labs). Per testare completamente il pacchetto driver prima dell'invio a WHQL, firmare il catalogo driver usando un SPC.

  • Nel caso speciale dei driver di avvio, è anche necessario usare un SPC per incorporare firmare il file di immagine binaria del driver per ottenere prestazioni ottimali di avvio del sistema.

    Nota Si dice che un driver venga avviato se viene caricato dal caricatore del sistema operativo Windows Vista. I driver di avvio possono essere identificati come segue: il driver INF specifica il tipo di avvio come "Start=0" o un servizio kernel è configurato con serviceType come driver kernel o driver del file system e StartMode come "avvio".

I criteri di firma del codice in modalità kernel obbligatori si applicano a tutti i software in modalità kernel nei sistemi basati su x64 che eseguono Windows Vista. Tuttavia, Microsoft incoraggia gli editori a firmare digitalmente tutto il software, inclusi i driver di dispositivo per piattaforme a 32 bit e a 64 bit. Windows Vista esegue la verifica della firma in modalità kernel nei sistemi x86 per supportare il contenuto multimediale protetto. Tuttavia, le firme del driver in modalità kernel non sono obbligatorie per i sistemi a 32 bit.

Questo documento descrive come gestire il processo di firma per il codice in modalità kernel per Windows Vista, tra cui come ottenere un certificato di pubblicazione software (SPC), linee guida per la protezione delle chiavi e come firmare un pacchetto driver usando gli strumenti forniti in Windows Driver Kit (WDK).

Firme digitali come procedura consigliata

Sin dal rilascio di Windows 98, Microsoft ha promosso la firma dei driver per le classi di dispositivi designate come meccanismo per migliorare l'affidabilità dei driver, per offrire un'esperienza utente migliore, ridurre i costi di supporto per i fornitori di software e hardware e ridurre il costo totale di proprietà per i clienti.

Per i driver di dispositivo e altri software in modalità kernel, i driver firmati come parte del programma Logo di Windows aumentano la fiducia degli utenti finali nella qualità del software e migliorano l'esperienza utente, perché un logo di Windows appartenente a un driver indica che il driver è stato testato e la firma digitale che accompagna il logo di Windows conferma non è stata modificata dopo il test.

Per la maggior parte dei pacchetti driver in modalità kernel, viene fornita una firma digitale in un file di catalogo firmato (cat). Windows Hardware Quality Labs (WHQL) fornisce un file con estensione cat firmato da Microsoft per la distribuzione con un pacchetto driver che soddisfi i requisiti del programma Logo di Windows.

Il processo di creazione di software in modalità kernel firmato è costituito da due attività distinte ma correlate. Queste operazioni possono essere eseguite in parallelo perché il software in genere non deve essere firmato fino a relativamente tardi nel processo di sviluppo.

  • Gestione del processo di firma. Questa operazione viene in genere gestita dai servizi di gestione e rilascio software degli editori e include:

    • Selezione dell'opzione di firma appropriata.
    • Ottenere i certificati necessari.
    • Gestione della firma digitale o delle chiavi di firma del codice.

    Nota Per firmare digitalmente file binari o cataloghi di immagini, un editore di software deve avere una chiave di firma del codice certificata, il che significa che un'autorità di certificazione ha stabilito sufficientemente l'identità dell'editore.

  • Implementazione del driver da firmare. Questa operazione viene in genere gestita dal team di sviluppo dell'editore e include:

    • Implementazione del driver stesso.
    • Creazione di un pacchetto driver firmato per test interni o versione.

Questi processi sono documentati per le versioni precedenti di Windows in WDK e Platform SDK. Questo documento descrive le opzioni aggiuntive relative alla firma del codice in modalità kernel per Windows Vista.

Opzioni di firma del codice in modalità kernel

Sono disponibili più opzioni per l'uso dei requisiti di firma del codice in modalità kernel (KMCS) in Windows Vista. La firma dei file driver non è necessaria per windows Vista per caricare i driver durante lo sviluppo di codice in modalità kernel. Gli sviluppatori possono invece usare uno dei meccanismi per disabilitare temporaneamente i controlli in fase di caricamento dal kernel nei sistemi di sviluppo e di test non automatizzati. Tuttavia, è necessaria la firma di test dei pacchetti driver per automatizzare l'installazione di un pacchetto driver nei sistemi di test senza dover installare i popup driver. DMI (Driver Management Infrastructure) verifica la firma del pacchetto driver durante l'installazione e avvisa gli utenti di driver non firmati.

La tabella seguente confronta le opzioni per la firma digitale dei moduli kernel supportati da Windows Vista.

Opzioni per la firma dei moduli del kernel

Opzioni di firma Funzionalità verificate per soddisfare i requisiti del logo Identità verificata Uso previsto
Programma Logo di Windows Versione
Firma del codice in modalità kernel con un SPC No Versione
Programma WHQL Test Signature No Test
Firma di test KMCS No No Test

Il programma Logo di Windows verifica la funzionalità del driver corretta e garantisce qualità e affidabilità elevate. I pacchetti driver inviati al programma Logo di Windows sono firmati digitalmente da Microsoft. Il programma Logo di Windows accetta i pacchetti di dispositivo installati tramite il file INF per l'hardware che soddisfa i requisiti del logo di Windows. L'autore del driver invia il pacchetto driver dopo aver completato i test di verifica del driver per il programma logo di Windows. I driver idonei per il logo ricevono un file con estensione cat firmato da Microsoft. Per informazioni sul programma logo di Windows, vedere la sezione Risorse alla fine di questo documento.

Gli sviluppatori possono firmare il file di immagine del driver o il catalogo dei driver con un SPC per i test prima di inviare a WHQL per verificare che il driver venga caricato e funziona correttamente.

La firma del codice in modalità kernel con un SPC fornisce l'identificazione dell'autore di un modulo kernel che carica in Windows Vista. Non fornisce alcun livello di certificazione delle funzionalità o dell'affidabilità del modulo kernel. Per i driver che non si qualificano per il logo di Windows o il logo di Windows non è uno dei requisiti del prodotto, l'editore può creare un file cat per il pacchetto driver e firmarlo con il SPC dell'editore.

Importante La firma del codice in modalità kernel non sostituisce il programma WHQL. Microsoft incoraggia gli editori a usare il programma Logo di Windows per garantire la qualità del driver. La firma del codice in modalità kernel non richiede al server di pubblicazione del software di superare i requisiti di test del programma logo Windows associati a WHQL.

Un file con estensione cat firmato è tutto ciò che è necessario per la maggior parte dei pacchetti driver per installare e caricare correttamente nei sistemi x64, ad eccezione dei pacchetti che contengono un driver caricato dal caricatore di avvio di Windows Vista. Un pacchetto driver che contiene un driver di dispositivo caricato dal caricatore di avvio di Windows Vista deve essere firmato in due modi:

  • Il file binario del driver in modalità kernel caricato in fase di avvio deve avere una firma incorporata nel file binario firmato con un SPC. Per semplicità, può essere più semplice incorporare firmare tutti i file di immagine del driver nel pacchetto.
  • Il pacchetto driver installato usando un file INF deve avere anche un file di catalogo firmato, proprio come i pacchetti driver che non contengono un driver di avvio di avvio, per la verifica della firma durante l'installazione.

I produttori devono garantire che i fornitori di hardware acquisiscono un SPC e firmano tutti i driver di avvio che verranno installati nei sistemi installati dal produttore.

A scopo di test durante il ciclo di sviluppo, è consigliabile firmare il codice usando un certificato di "test" anziché firmare con un certificato di versione. Un file binario con segno di test viene riconosciuto solo dai sistemi Windows Vista quando è abilitata un'opzione di configurazione di avvio che consente l'uso dei certificati di firma di test. La firma di test non è abilitata per impostazione predefinita e le firme di test non saranno considerate attendibili dalla maggior parte dei sistemi Windows Vista.

Il programma WHQL Test Signature è supportato anche per la firma di test. I partecipanti al programma possono inviare pacchetti driver per la firma di test WHQL. La firma nei cataloghi firmati dal test viene generata da un certificato emesso nell'autorità radice di test Microsoft. L'autorità radice di test Microsoft viene accettata quando l'impostazione di configurazione dell'avvio di Windows Vista abilita la firma di test. Per informazioni sul programma WHQL Test Signature Program, vedere la sezione Risorse alla fine di questo documento.

Per la firma "test" e "release", il team di sviluppo deve seguire le procedure consigliate per la gestione delle chiavi, come descritto in Linee guida per la protezione delle chiavi di firma del codice più avanti in questo documento.

La firma di test è descritta in modo più dettagliato nella sezione Come usare la firma di test più avanti in questo documento.

Processo di firma del codice in modalità kernel

La firma digitale di un file di immagine o di un catalogo in modalità kernel stabilisce l'integrità del file o dei file firmati. I moduli software non devono mai essere modificati dopo l'esecuzione dell'operazione di firma del codice. La modifica del file di immagine dopo la firma del codice comporta errori di verifica della firma in fase di installazione e tempo di caricamento.

Un pacchetto driver contenente più file può essere firmato usando un catalogo. Il pacchetto driver deve avere un file di catalogo firmato (cat) che viene usato per identificare l'autore quando il pacchetto driver è installato e verificare l'immagine del driver quando viene caricata nel kernel. Il file di catalogo contiene un certificato digitale che identifica l'autore, oltre agli hash del contenuto del pacchetto che consentono al sistema di verificare che i file nel pacchetto non siano stati modificati.

Come accennato in precedenza, i driver di avvio devono avere firme incorporate nel file di immagine del driver. Le firme incorporate nei file di immagine del driver di avvio ottimizzano le prestazioni di avvio del sistema operativo eliminando la necessità di individuare il file appropriate.cat quando il caricatore del sistema operativo verifica la firma del driver.

La firma del driver non è necessaria per ogni compilazione durante il processo di sviluppo del driver. Gli sviluppatori possono disabilitare l'applicazione della firma dei driver come descritto in Come disabilitare l'imposizione della firma durante lo sviluppo più avanti in questo documento.

Le sezioni seguenti illustrano come ottenere e gestire i certificati. I meccanismi di firma dei pacchetti driver sono descritti più avanti in questo documento.

Come ottenere un certificato di pubblicazione software (SPC)

Ottenere un SPC per firmare il software in modalità kernel che soddisfi i criteri di firma del codice in modalità kernel obbligatori attenendosi alla procedura seguente:

  1. Ottenere un SPC da una CA commerciale che rilascia certificati digitali per la firma del codice in modalità kernel. L'elenco di ca che forniscono certificati di pubblicazione software (o certificati di firma del codice) che possono essere usati per la firma del codice in modalità kernel è disponibile nella pagina Web Microsoft Cross-certificates for Windows Vista Kernel Mode Code Signing (Firma codice in modalità kernel di Windows Vista ).
  2. Scaricare un certificato incrociato corrispondente dalla pagina Web Microsoft Cross-certificates for Windows Vista Kernel Mode Code Signing (Firma codice in modalità kernel di Windows Vista ) per l'autorità di certificazione radice che ha emesso il SPC. Il certificato incrociato viene usato nella firma digitale per il codice in modalità kernel in modo che la firma possa essere verificata fino a un'autorità radice attendibile nota al kernel di Windows Vista.

Quando si richiede un certificato di pubblicazione software da una CA commerciale, seguire le istruzioni nel sito Web della CA per acquisire e installare il certificato di firma del codice nel computer in cui verrà usata la chiave privata per firmare il codice.

Linee guida per la protezione delle chiavi di firma del codice

Le chiavi crittografiche che si trovano al centro del processo di firma del codice devono essere ben protette e trattate con la stessa attenzione degli asset più preziosi per qualsiasi azienda. Queste chiavi rappresentano un'identità aziendale. Qualsiasi codice firmato con queste chiavi appare in Windows come se contiene una firma digitale valida che può essere tracciata all'azienda. Se le chiavi vengono rubate, potrebbero essere usate per firmare illecitamente codice dannoso e possibilmente comportare il recapito di codice che contiene un trojan o virus che sembra provenire da un editore legittimo.

Per informazioni dettagliate sulla protezione sicura delle chiavi private, vedere Procedure consigliate per la firma del codice.

Uso di certificati incrociati con firma del codice in modalità kernel

La firma del codice in modalità kernel usa certificati incrociati come parte del processo di firma del codice. Un certificato incrociato è un certificato X.509 emesso da un'autorità di certificazione (CA) che firma la chiave pubblica per il certificato radice di un'altra autorità di certificazione. Il caricatore del sistema operativo Windows Vista e il kernel riconoscono i certificati incrociati nella verifica delle firme dei driver. I certificati incrociati consentono al kernel di avere una singola autorità radice Microsoft attendibile, ma offrono anche la flessibilità necessaria per estendere la catena di attendibilità a più ca commerciali che rilasciano certificati di autore software.

I certificati incrociati consentono agli sviluppatori e agli editori di usare i certificati del server di pubblicazione software per firmare il software in modalità kernel. Gli sviluppatori che usano la firma del codice in modalità kernel scaricherà il file di certificato incrociato (cer) corretto nel sistema in cui viene eseguita l'operazione di firma digitale. Gli editori non devono distribuire il file tra certificati con il software o il pacchetto driver. Il certificato incrociato verrà incluso con la firma digitale nel file di immagine del driver o nel catalogo dei pacchetti driver. Gli utenti che installano il pacchetto driver non dovranno eseguire alcuna procedura di configurazione per Windows Vista per verificare la firma digitale che include un certificato incrociato.

Importante SignTool in Windows Vista Beta2 WDK è l'unica versione di SignTool che supporta attualmente l'aggiunta di certificati incrociati a una firma digitale. Le versioni precedenti di SignTool in Windows Server 2003 Platform SDK o DDK non supportano l'aggiunta di certificati incrociati.

I certificati incrociati per più CA da usare per la firma del codice in modalità kernel sono disponibili per il download dal sito Web Microsoft WHDC. Per altre informazioni, vedere Microsoft Cross-certificates for Windows Vista Kernel Mode Code Signing in the Resources (Firma del codice in modalità kernel di Windows Vista) alla fine di questo documento.

I dettagli su come aggiungere il certificato incrociato alla firma digitale sono descritti nelle sezioni Come firmare un file con estensione cat e Aggiungere una firma incorporata a un file di immagine del driver.

Generazione di certificati di test

I certificati di test vengono usati al posto dei controller di sicurezza per i moduli software in modalità kernel di firma di test che non sono per la distribuzione o il rilascio all'esterno dell'organizzazione. La firma di test applica una firma digitale ai file binari in modalità kernel o ai cataloghi di pacchetti driver usati per scopi di test interni. La firma di test è descritta in modo più dettagliato nella sezione Come usare la firma di test più avanti in questo documento. Quando si usa un certificato di test per la firma del codice in modalità kernel, non è necessario un certificato incrociato.

I certificati di test possono essere generati usando una CA aziendale o l'utilità Makecert. Per altre informazioni sull'uso di una CA aziendale per il rilascio di certificati di firma dei test all'interno dell'organizzazione, vedere Procedure consigliate per la firma del codice.

Nell'esempio seguente Makecert genera un certificato di test rilasciato dalla radice di test predefinita, archivia la chiave privata in un contenitore di chiavi e restituisce il certificato in un archivio certificati e in un file di certificato:

Makecert –r –pe –ss SubjectCertStoreName –n "CN= CertName" OutputFile.cer

Gli argomenti di Makecert nell'esempio eseguono le operazioni seguenti:

  • -r
    Crea un certificato autofirmato, ovvero il certificato è un certificato radice.
  • -Pe
    Rende esportabile la chiave privata associata al certificato.
  • -ssSubjectCertStoreName
    Specifica il nome dell'archivio certificati che contiene il certificato radice.
  • **-n "CN=**CertName"
    Specifica un nome per il certificato. Se non viene specificato un nome di certificato, il nome predefinito del certificato è "Software Emporium di Joe".
  • OutputFile.cer
    Nome del file in cui viene salvato il certificato radice.

Uno script di comando di esempio che usa makecert è disponibile in WDK. Il nome del file di script è, selfsign_example.txt, che si trova nella directory "bin\selfsign". Prima di installare il pacchetto driver, è necessario aggiungere i certificati di test nell'archivio certificati nel computer di test di destinazione.

Nell'esempio seguente viene illustrato come aggiungere i certificati di test all'archivio radice attendibile e all'archivio autori attendibili nel computer di test di destinazione.

certmgr.exe -add OutputFile.cer -s -r localMachine root 
certmgr.exe -add OutputFile.cer -s -r localMachine trustedpublisher

Gli argomenti di Certmgr nell'esempio eseguono le operazioni seguenti:

  • -Aggiungere
    Aggiunge il certificato nel file del certificato a un archivio certificati.
  • -s
    Indica che l'archivio certificati è un archivio di sistema.
  • -r
    Indica che il percorso del Registro di sistema dell'archivio di sistema è in HKEY_LOCAL_MACHINE chiave
  • Radice o trustedpublisher
    Indica il nome dell'archivio certificati di sistema

Per altre informazioni su Certmgr e Makecert, vedere le risorse alla fine di questo documento.

Creazione di un file con estensione cat firmato

Gli strumenti usati per generare e firmare i file di catalogo, MakeCat e SignTool, vengono forniti nel WDK di Windows Vista.

Nota Signtool.exe e MakeCat.exe si trovano nella directory "bin\selfsign" del WDK.

Come creare un file con estensione cat

Un file con segno digitale con estensione cat contiene gli hash di tutti i moduli in modalità kernel verificati durante il caricamento nel kernel. Il file di catalogo può includere anche hash per altri file nel pacchetto software, ad esempio programmi applicazioni in modalità utente (.exes) e estensioni dell'applicazione (.dlls). Microsoft consiglia che il file con estensione cat contenga gli hash di tutti i file in un pacchetto software.

Il file con estensione cat contiene un elenco di hash di file che corrispondono a un set specificato di file. Un hash di file è il prodotto di un hash SHA1 su un file di destinazione. Un hash di file flat non viene usato per i file, ad esempio i driver, che usano il formato di file eseguibile portabile (PE). Le sezioni pertinenti, ad esempio l'intestazione PE, i dati eseguibili e gli attributi autenticati, vengono invece hashati in modo selettivo.

Quando un driver viene caricato in memoria, il kernel di Windows Vista esegue un hash SHA1 sulle sezioni pertinenti del file di immagine binaria del driver. Windows verifica che il file non sia stato manomesso confrontando il valore hash risultante all'elenco degli hash binari nel file con estensione cat associato.

Se si installa il driver con un file INF tramite Plug and Play, usare lo strumento di firma da WDK per creare un catalogo come descritto di seguito. In caso contrario, creare manualmente un catalogo come descritto in Come creare un catalogo manualmente in questo documento.

Come creare un catalogo usando firmabilità

La firma è uno strumento usato per convalidare i file INF e creare un file di catalogo in base al file INF. È incluso nel WDK e può essere eseguito dall'ambiente di compilazione WDK. La firma richiede un file INF valido per il pacchetto driver. Per informazioni sulla creazione di un file INF, consultare la documentazione di WDK. Per creare un catalogo usando lo strumento di firmabilità procedere come segue:

Uso della firma per creare un catalogo

  1. Creare una directory del pacchetto driver che contiene tutti i file nel pacchetto driver.
  2. Creare un file INF nella directory del pacchetto driver e modificarlo per Windows Vista. In particolare, modificare la data di compilazione in 4/1/2006 o successiva e la versione su 6. Ad esempio: DriverVer=04/01/2006, 6.0.1.0
  3. Eseguire Signability per creare un file con estensione cat valido in base al file INF:
    • Eseguire Signability.exe e usare l'interfaccia utente utente per creare il file di catalogo.

    • Eseguire Signability dalla riga di comando. Nota package_directory deve essere il percorso completo della directory del pacchetto.

      Signability.exe /auto /cat /driver:package_directory /os:512
      

In questo esempio viene creato un file cat nella directory driver_package usando diversi argomenti supportati da Signability:

  • /Automatico
    Configura lo strumento Signability per l'esecuzione senza la necessità di interagire con l'utente.
  • /Gatto
    Configura lo strumento Signability per generare il file di catalogo il cui nome viene fornito dal file INF del pacchetto driver.
  • /driver:DriverPath
    Specifica il percorso della directory contenente i file del pacchetto driver.
  • /os:nnn
    Configura lo strumento Signability per verificare che il file INF del pacchetto driver sia conforme ai requisiti delle versioni di Windows specificate dal valore del flag nnn. 512 è il valore per Windows Vista, 64 bit Edition.

Come creare manualmente un catalogo

Per creare manualmente un file con estensione cat, usare prima di tutto un editor di testo per creare un file di definizione del catalogo (.cdf). Il file cdf include un elenco dei file che devono essere catalogati e i relativi attributi.

Nell'esempio seguente viene illustrato il contenuto di un file con estensione cdf tipico denominato Good.cdf. Il pacchetto da catalogare contiene due file, File1 e File2. Il file con estensione cat risultante è denominato Good.cat.

[CatalogHeader]
Name=Good.cat
PublicVersion=0x0000001
EncodingType=0x00010001
CATATTR1=0x10010001:OSAttr:2:6.0
[CatalogFiles]
<hash>File1=File1
<hash>File2=File2

Viene creato un file con estensione cat con lo strumento da riga di comando MakeCat, incluso con Platform SDK e WDK. Strumento MakeCat:

  • Verifica l'elenco di attributi per ogni file elencato.
  • Aggiunge gli attributi elencati al file con estensione cat.
  • Hash di ognuno dei file elencati.
  • Archivia gli hash di ogni file nel file con estensione cat.

Per creare un file con estensione cat

  1. Usare un editor di testo per creare un file cdf contenente un elenco di file da catalogare, con i relativi attributi.
  2. Eseguire MakeCat nel file cdf.

Nota MakeCat non modifica il file cdf.

Nell'esempio seguente viene illustrato come creare un file con estensione cat da Good.cdf. Il flag -v specifica la versione dettagliata di MakeCat. I file hash e il file di Good.cat appena generati vengono inseriti nella stessa cartella di File1 e File2.

MakeCat -v Good.cdf

Il file con estensione cat è ora pronto per essere firmato.

Per altre informazioni su MakeCat e sul formato dei file con estensione cdf, vedere la documentazione di MakeCat elencata nella sezione Risorse alla fine di questo documento.

Come firmare un file con estensione cat

Il file con estensione cat generato da MakeCat contiene tutti gli hash del file necessari per installare moduli in modalità kernel nel sistema di un utente. Tuttavia, il file deve essere firmato digitalmente.

Un file con estensione cat viene firmato con lo strumento da riga di comando SignTool. La firma digitale nel catalogo, utilizzata per verificare i file di immagine in modalità kernel, deve contenere un certificato incrociato. Il certificato incrociato viene aggiunto usando una nuova opzione di comando per SignTool.

Importante È necessario usare la versione di SignTool da Windows Vista Beta2 WDK per aggiungere il certificato incrociato alla firma digitale.

Nell'esempio seguente viene illustrato come usare Signtool per firmare un file con estensione cat con un SPC e una chiave privata corrispondente importata nell'archivio certificati di Windows. Per informazioni su come usare Signtool con un modulo di protezione hardware, vedere la documentazione di SignTool elencata nella fine di questo documento.

SignTool sign /v /ac CrossCertificateFile /s SPCCertificateStore /n SPCSubjectName /t http://timestamp.verisign.com/scripts/timestamp.dll Good.cat

In questo esempio vengono usati diversi argomenti supportati da SignTool:

  • Firma
    Configura lo strumento per firmare il file con estensione cat denominato CatFileName.cat.
  • /v
    Specifica l'opzione dettagliata per l'esecuzione riuscita e i messaggi di avviso*.*
  • /Ac
    Aggiunge il certificato incrociato dal file CrossCertificateFile alla firma digitale
  • /s
    Specifica un archivio certificati denominato SPCCertificateStore.
  • /N
    Specifica un certificato con il nome soggetto SPCSubjectName.
  • /tURL
    Specifica che la firma digitale verrà timestampata dall'autorità di timestamp (TSA) indicata dall'URL.

Importante La firma del catalogo o del driver include un timestamp per fornire informazioni necessarie per la revoca delle chiavi nel caso in cui la chiave privata della firma del firmatario sia compromessa.

Durante l'installazione del dispositivo, se il SPC usato per la firma è scaduto e la firma non è stata timestampata, il file cat non è installato e Windows non consente il caricamento del driver. Tuttavia, se la firma viene timestampata da un'autorità di timestamp attendibile, il file con estensione cat viene installato e Windows consente il caricamento del driver.

Firma del file di download auto-estrazione

Il software pubblicato per la distribuzione in un sito Web del supporto tecnico è in genere in pacchetto in un file di archivio auto-estratto. Il file eseguibile auto-estratto viene scaricato usando un Web browser e il contenuto estratto prima che l'utente inizi a installare nel computer. Usare il file SPC che ha firmato il file con estensione cat del pacchetto driver per firmare digitalmente il file di .exe auto-estrazione.

Firma digitale del file di .exe auto-estrazione identifica l'editore del file di archivio e garantisce l'integrità del file di .exe auto-estrazione che viene scaricato su Internet. Gli utenti che scaricano il file di .exe auto-estrazione riceveranno in genere una finestra di dialogo di attendibilità o Avviso di sicurezza, quando scelgono di scaricare ed eseguire il file auto-estrazione.

In Windows Vista, se l'utente esamina i dettagli della finestra di dialogo Avviso di sicurezza e seleziona "Installa sempre software dal <nome> del server di pubblicazione", questa opzione semplifica la conferma successiva quando viene installato un pacchetto driver. Quando viene installato il pacchetto driver, l'utente verrà chiesto se considerano attendibile il server di pubblicazione del pacchetto driver firmato prima dell'avvio dell'installazione del driver. Se l'utente ha selezionato l'opzione per installare sempre il software dal server di pubblicazione driver quando ha scaricato il file di .exe auto-estrazione, il prompt della finestra di dialogo di attendibilità durante l'installazione del driver non si verificherà.

Come installare un file con estensione cat firmato

Per i driver installati tramite Plug and Play, non sono previste modifiche nel processo di installazione. L'installazione di un driver firmato incorporato non richiede alcuna elaborazione speciale oltre i meccanismi di installazione e INF standard. Si noti che solo gli utenti membri del gruppo Administrators possono installare i pacchetti driver.

I driver che non vengono installati tramite Plug and Play devono installare i file cat nella cartella radice del catalogo di sistema. L'installazione di un catalogo nella cartella radice del catalogo può essere gestita usando chiamate API del catalogo Win32 esistenti, in particolare CryptCATAdminAddCatalog.

Aggiunta di una firma incorporata a un file di immagine del driver

Per ottimizzare le prestazioni della verifica del driver in fase di avvio, i file binari del driver di avvio devono avere una firma incorporata usando SPC oltre al file con estensione cat firmato per il pacchetto. La firma incorporata consente di risparmiare tempo significativo durante l'avvio del sistema operativo perché non è necessario che il caricatore del sistema operativo individui il file cat nel driver. Un sistema Windows Vista tipico può avere più di un centinaio di file di catalogo diversi nell'archivio radice del catalogo. L'individuazione del file di catalogo corretto per verificare l'hash dell'immagine di un determinato driver può comportare un notevole sovraccarico di sistema durante la ricerca di più cataloghi per il file corretto.

I driver di avvio vengono identificati in base al valore StartType del servizio di SERVICE_BOOT_START (0).

Le firme incorporate non interferiscono con la firma o la convalida del file cat. Si noti che gli hash contenuti nei cataloghi e nelle firme incorporate escludono selettivamente la parte di firma del formato di file PE

Per usare Signtool.exe per incorporare una firma in un file binario del driver di avvio usando un SPC e una chiave privata corrispondente importata nell'archivio certificati di Windows, usare il comando seguente:

SignTool sign /v /ac CrossCertificateFile /s SPCCertificateStore /n SPCSubjectName /t http://timestamp.verisign.com/scripts/timestamp.dll winloaddriver.sys

In questo esempio vengono usati diversi argomenti supportati da SignTool:

  • Firma
    Il comando sign configura lo strumento per firmare il driver denominato winloaddriver.sys.
  • /v
    Specifica l'opzione dettagliata per l'esecuzione corretta e i messaggi di avviso*.*
  • /Ac
    Aggiunge il certificato incrociato dal file CrossCertificateFile alla firma digitale
  • /sopzioni
    Specifica l'archivio certificati denominato SPCCertificateStore
  • /N
    Specifica il certificato con il nome soggetto SPCSubjectName.
  • /tURL
    Specifica che la firma digitale deve essere contrassegnata come timestamp dal TSA indicato dall'URL.

Importante: Il catalogo o il driver deve essere timestamped, poiché in questo modo verranno fornite informazioni necessarie per la revoca della chiave nel caso in cui la chiave dei firmatari venga compromessa.

Come verificare una firma incorporata

La procedura seguente illustra come verificare una firma incorporata con Esplora risorse.

Per verificare le firme incorporate

  1. Durante l'esecuzione di Windows Vista, fare clic con il pulsante destro del mouse sul file .sys driver e scegliere Proprietà nel menu di scelta rapida.
  2. Fare clic sulla scheda Firme digitali , se presente.
    • Se questa scheda non è presente, il file non dispone di una firma incorporata.
  3. Selezionare il firmatario e fare clic su Dettagli per aprire la finestra di dialogo Dettagli firma .
  4. Fare clic su Visualizza certificato per aprire le pagine delle proprietà del certificato.
    • Verificare che non siano presenti finestre di dialogo di avviso.
    • Verificare che il nome soggetto dei certificati sia Publisher sia registrato con un'autorità di certificazione riconosciuta.
  5. Fare clic sulla scheda Percorso certificazione .
    • Verificare che il nome soggetto del certificato principale sia Microsoft Code Verification Root.Verify that the subject name of the top certificate is Microsoft Code Verification Root.

Per verificare le firme incorporate usando signtool.exe per i criteri di firma del codice in modalità kernel

  • Signtool.exe può essere usato per verificare la firma in un file con estensione cat usando il comando seguente:
Signtool verify /kp /c tstamd64.cat toaster.sys

Verificare che l'hash dell'immagine per il file toaster.sys sia presente nel file di catalogo. Lo strumento restituisce la stringa "Success".

Come disabilitare l'imposizione della firma durante lo sviluppo

Durante le fasi iniziali dello sviluppo, gli sviluppatori possono disabilitare l'imposizione in Windows in modo che la firma del driver non sia necessaria. Le opzioni seguenti sono disponibili per gli sviluppatori per disabilitare temporaneamente l'applicazione della firma del codice in modalità kernel in modo che Windows Vista caricherà un driver non firmato.

  • Collegamento di un debugger del kernel. Il collegamento di un debugger del kernel attivo al computer di destinazione disabilita l'imposizione delle firme in modalità kernel in Windows Vista e consente al driver di caricare.

  • Uso dell'opzione F8. Un'opzione di avvio avanzato F8 introdotta con Windows Vista, "Disabilita imposizione firma driver", è disponibile per disabilitare l'imposizione della firma del kernel solo per la sessione di avvio corrente. Questa impostazione non viene mantenuta tra le sessioni di avvio.

  • Impostazione della configurazione di avvio. Un'impostazione di configurazione di avvio è disponibile nella versione di Windows Vista Beta2 che disabilita l'imposizione delle firme in modalità kernel da rendere persistenti tra le sessioni di avvio.

    Windows Vista include uno strumento da riga di comando, BCDedit, che può essere usato per impostare l'opzione in Windows Vista Beta2 per disabilitare i controlli delle firme. Per usare BCDedit, l'utente deve essere membro del gruppo Administrators nel sistema ed eseguire il comando da un prompt dei comandi con privilegi elevati. È possibile avviare un prompt dei comandi con privilegi elevati creando un collegamento desktop per cmd.exe e quindi facendo clic con il pulsante destro del mouse e scegliendo "Esegui come amministratore".

    Di seguito viene illustrato un esempio di esecuzione di BDCedit al prompt dei comandi:

    // Disable enforcement – no signing checks
    Bcdedit.exe –set nointegritychecks ON 
    
    // Enable enforcement – signing checks apply
    Bcdedit.exe –set nointegritychecks OFF 
    
    // Disabling integrity check on an alternate OS 
    // specified by a GUID for the system ID
    Bcdedit.exe –set {4518fd64-05f1-11da-b13e-00306e386aee} nointegritychecks ON 
    

Nota L'opzione Bcdedit per disabilitare i controlli di integrità è disponibile solo per il caricamento di driver non firmati nella versione di Windows Vista Beta2. Per altre informazioni, vedere le domande frequenti sull'editor BCD nel sito Web MSDN.

Come usare la firma di test

La firma di test offre opzioni aggiuntive per le organizzazioni di sviluppo per incorporare la firma del codice in modalità kernel per il software non definitive che non è pronto per la pubblicazione. La firma di test consente l'uso di certificati di firma del codice "test" per firmare i driver che verranno caricati in Windows Vista quando l'impostazione di configurazione dell'avvio di Windows Vista consente le firme di test.

La firma di test può essere appropriata per l'uso negli scenari seguenti:

  • I team di sviluppo devono testare le versioni non definitive di un driver nei sistemi di test in cui non è pratico collegare un debugger del kernel.
  • I test automatizzati del software in modalità kernel rendono poco pratico l'uso dell'opzione di avvio avanzato F8 per disabilitare temporaneamente l'imposizione della firma del driver in ogni ciclo di avvio del computer.

La firma di test consente agli sviluppatori di firmare versioni non definitive dei file binari in modalità kernel in modo che Windows Vista possa verificare e caricare il driver firmato. La firma dei test comporta le differenze seguenti rispetto alla normale firma di produzione o di rilascio:

  • I certificati usati per la firma di test possono essere generati usando lo strumento di firma del codice Makecert.exe o rilasciati da una CA enterprise, invece di usare un SPC rilasciato da una CA commerciale.
  • L'opzione di configurazione di avvio di Windows Vista per abilitare la firma di test deve essere abilitata nel sistema Windows Vista che caricherà il driver firmato dal test.

Le organizzazioni di sviluppo possono configurare un'infrastruttura a chiave pubblica aziendale ed emettere certificati di firma del codice di test da usare per la firma di test. Quando Windows Vista abilita la firma di test, la verifica della firma digitale nel file binario del driver accetterà i certificati rilasciati da qualsiasi AUTORITÀ di certificazione o autorità emittente. La firma di test verifica che l'immagine del driver sia firmata, ma la convalida del percorso del certificato eseguita in modalità kernel non richiede che l'autorità emittente sia configurata come autorità radice attendibile. Ciò consente alle organizzazioni di usare le singole firme nei file binari di test, in base alle credenziali rilasciate per la firma del codice all'interno dell'organizzazione. Microsoft consiglia questa forma di distribuzione per la firma di test all'interno della firma del codice in modalità kernel.

Anche l'uso di certificati generati dallo strumento di makecert.exe è accettabile per la firma di test. Tuttavia, i certificati generati da makecert spesso non forniscono informazioni utili sull'identità e non è possibile tenere traccia dei singoli sviluppatori che hanno creato una versione firmata di test del file binario di versione non definitiva.

Nota La versione di Windows Vista Beta2 accetta solo i certificati di test generati dallo strumento makecert. I certificati di firma del codice rilasciati da un'autorità di certificazione aziendale per la firma di test non sono disponibili in Windows Vista Beta2.

Le istruzioni signtool in questo documento funzionano allo stesso modo se si usa un SPC o un certificato generato dall'utilità makecert o usando un certificato emesso da un'autorità di certificazione aziendale. L'unica differenza sarà in genere l'emittente e il nome del soggetto nel certificato.

Il programma WHQL Test Signature è supportato anche per la firma di test. I partecipanti al programma possono inviare pacchetti driver per firme di test WHQL. La firma nei cataloghi firmati dal test viene generata da un certificato emesso nell'autorità radice di test Microsoft. L'autorità radice di test Microsoft viene accettata per impostazione predefinita in Windows Vista Beta2 come parte del programma beta. Nella versione finale di Windows Vista, l'autorità radice di test Microsoft viene accettata quando l'impostazione di configurazione di avvio di Windows Vista abilita la firma di test.

I file binari in modalità kernel firmati di test non verranno caricati nei sistemi Windows Vista per impostazione predefinita. Le firme digitali nei file binari firmati di test non sono valide nei sistemi Windows Vista per impostazione predefinita perché i criteri di firma del codice in modalità kernel non accettano e non considerano attendibili i certificati di firma dei test.

Abilitazione della firma di test

Usare lo strumento da riga di comando Bcdedit per abilitare la firma di test. Per usare BCDedit, l'utente deve essere membro del gruppo Administrators nel sistema ed eseguire il comando da un prompt dei comandi con privilegi elevati. È possibile avviare un prompt dei comandi con privilegi elevati creando un collegamento desktop per cmd.exe e quindi facendo clic con il pulsante destro del mouse e scegliendo "Esegui come amministratore".

Di seguito viene illustrato un esempio di esecuzione di BDCedit al prompt dei comandi:

// Accept test signed kernel mode signatures
Bcdedit.exe –set TESTSIGNING ON 

// Do not accept test signed kernel mode signatures
Bcdedit.exe –set TESTSIGNING OFF 

L'opzione TESTSIGNING di configurazione di avvio determina se Windows Vista accetta file binari in modalità kernel con segno di test. L'opzione non è definita per impostazione predefinita, il che significa che le firme digitali nei driver della modalità kernel firmati di test non verranno verificate e non verranno caricate. Quando Windows Vista accetta file binari in modalità kernel firmati di test, alcuni contenuti Premium protetti potrebbero non essere accessibili nel sistema.

Risoluzione dei problemi

È possibile eseguire passaggi specifici per identificare e risolvere potenziali problemi correlati alla verifica delle firme del codice in modalità kernel. In questa sezione vengono fornite informazioni sulla risoluzione dei problemi relativi all'imposizione della firma del driver. Gli strumenti principali per la risoluzione dei problemi di firma dei driver sono i seguenti:

  • Rilevamento degli errori di caricamento del driver
  • Abilitazione degli eventi del registro di sistema di diagnostica dell'integrità del codice.

L'applicazione tostapane inclusa in Windows Vista WDK viene usata come esempio. L'applicazione tostapane è disponibile nella directory "src\general\tostapane".

Rilevamento degli errori di caricamento del driver

L'applicazione tostapane installa un driver di dispositivo (toaster.sys), che per questo esempio non è firmato. Il sintomo di un problema con il driver non firmato è che il dispositivo tostapane non viene avviato. Usando il Gestione dispositivi, è possibile controllare lo stato del dispositivo Tostapane e visualizzare lo stato del driver, come illustrato nell'immagine della schermata seguente.

Bb530195.digitalsigskernmodules01(en-us,MSDN.10).gif

Figura 1. Errore del driver non firmato

L'avvio del dispositivo non è riuscito perché l'applicazione della firma del driver di dispositivo non è stata firmata e la firma in modalità kernel ha bloccato il caricamento del driver nel kernel. Per identificare definitivamente l'origine del problema, il sistema è stato configurato per abilitare la diagnostica dell'imposizione della firma, come descritto di seguito.

Abilitazione degli eventi di log del sistema di diagnostica dell'integrità del codice

L'applicazione della firma del codice in modalità kernel viene implementata da un componente di Windows Vista noto come integrità del codice. L'integrità del codice genera eventi di diagnostica e un evento del log di controllo di sistema quando la firma di un modulo kernel non riesce a verificarsi correttamente.

  • Gli eventi operativi di integrità del codice sono sempre abilitati. Gli eventi operativi sono eventi di avviso quando un controllo di verifica dell'immagine non è riuscito durante il caricamento di un file binario in modalità kernel.
  • Gli eventi di controllo del sistema di integrità del codice vengono generati quando il criterio di controllo del sistema è abilitato. I criteri di controllo del sistema non sono abilitati per impostazione predefinita.
  • Gli eventi verbose di integrità del codice sono eventi analitici e di debug delle informazioni che mostrano tutti i controlli di verifica delle immagini con esito positivo durante il caricamento dei file binari in modalità kernel. Gli eventi dettagliato non sono abilitati per impostazione predefinita.

Gli eventi di integrità del codice sono visualizzabili nella Visualizzatore eventi, che fa parte dello snap-in MMC Gestione computer. Dal pulsante Start fare clic con il pulsante destro del mouse su Computer e scegliere Gestisci.

Il flusso di eventi di integrità del codice si trova nella gerarchia seguente:

Visualizzatore eventi -> Registri applicazioni e servizi -> Microsoft -> Windows -> CodeIntegrity

Bb530195.digitalsigskernmodules02(en-us,MSDN.10).gif

Figura 2. Eventi di integrità del codice

Il log operativo dell'integrità del codice mostra gli eventi generati dal kernel quando un driver in modalità kernel ha esito negativo un controllo di verifica dell'immagine quando il driver viene caricato. L'errore di verifica dell'immagine può essere dovuto a diversi motivi, tra cui:

  • Il driver non è stato firmato, ma installato nel sistema da un amministratore e l'integrità del codice non consente il caricamento del driver.
  • Il driver è stato firmato, ma il file di immagine del driver è stato modificato o manomesso e la modifica ha invalidato la firma del driver.
  • Il dispositivo del disco di sistema potrebbe avere errori del dispositivo durante la lettura del file di immagine per il dispositivo da settori del disco non valido.

Una voce del log operativo per un errore di verifica dell'immagine del driver non firmato o modificato è simile all'esempio seguente:

Bb530195.digitalsigskernmodules03(en-us,MSDN.10).gif

Figura 3. Voce del log operativo

L'evento indica che non è stato possibile caricare il driver del tostapane (toaster.sys) perché non è stato firmato (o l'immagine toaster.sys che sta tentando di caricare non è la stessa che è stata firmata digitalmente dal server di pubblicazione).
Tutti i messaggi del registro eventi di integrità del codice sono elencati nella sezione Messaggi del registro eventi di integrità del codice di seguito.

Eventi del log di controllo di sistema

L'integrità del codice genera eventi del log di controllo del sistema corrispondenti agli eventi di avviso operativo quando la verifica dell'immagine di un driver in modalità kernel ha esito negativo. Gli eventi del log di sistema sono visualizzabili nella Visualizzatore eventi nella visualizzazione Log di sistema di Windows.

Gli eventi di controllo del sistema potrebbero non essere abilitati in tutti i sistemi Windows Vista. Usare lo snap-in MMC Impostazioni di sicurezza locali per verificare o abilitare "Controlla eventi di sistema" in Criteri locali, Impostazioni dei criteri di controllo.

Eventi informativi nel log dettagliato

Altri eventi informativi sull'integrità del codice per tutti i controlli di verifica delle immagini in modalità kernel sono disponibili usando la visualizzazione eventi dettagliata. Questi eventi mostrano la verifica dell'immagine corretta di tutti i driver caricati nel sistema.

I passaggi per abilitare la visualizzazione evento Dettagliato dell'integrità del codice sono i seguenti:

  1. Fare clic con il pulsante sinistro del mouse sulla visualizzazione Operativa per visualizzare gli eventi di integrità del codice correnti (se presenti).
  2. Fare clic con il pulsante sinistro del mouse sul nodo Integrità codice per impostare lo stato attivo.
  3. Fare clic con il pulsante destro del mouse sul nodo Integrità codice per ottenere il menu di scelta rapida.
  4. Selezionare Visualizza.
  5. Selezionare Mostra log analitici e di debug.
  6. In questo modo viene creato un sottoalbero con due nodi aggiuntivi, operational e verbose .
  7. Fare clic con il pulsante destro del mouse sul nodo Dettagliato e scegliere Proprietà.
  8. Selezionare il foglio Generale e selezionare l'opzione Abilitaregistrazione . Questa opzione dovrebbe abilitare la modalità di registrazione dettagliata.
  9. Riavviare il sistema per ricaricare tutti i file binari in modalità kernel.
  10. Dopo il riavvio, aprire lo snap-in Gestionecomputer e visualizzare il registroeventidettagliato dell'integrità del codice.

È possibile verificare se toaster.sys è firmato correttamente come indicato di seguito:

In questo caso specifico, toaster.sys è un driver PnP e viene denominato in un file di catalogo (tstamd64.cat in "\src\general\toastpkg\toastcd". Usare l'utilità SignTool per verificare se toaster.sys è firmato correttamente usando il comando seguente:

Signtool verify /kp /c tstamd64.cat toaster.sys

Opzioni di debug della verifica del driver

In alcuni casi, gli sviluppatori potrebbero voler applicare criteri di firma del codice in modalità kernel obbligatori anche quando è collegato un debugger. Un esempio è quando uno stack di driver ha un driver non firmato (ad esempio un driver di filtro) che non viene caricato, che può invalidare l'intero stack. Poiché il collegamento di un debugger consente il caricamento del driver non firmato, il problema sembra scomparire non appena il debugger è collegato. Il debug di questo tipo di problema può essere difficile. Per facilitare il debug in questo caso, l'integrità del codice supporta una chiave del Registro di sistema che può essere impostata per applicare l'imposizione della firma in modalità kernel anche quando è collegato un debugger.

Nel Registro di sistema sono definiti due flag che controllano il comportamento di integrità del codice nel debugger. I flag non sono definiti per impostazione predefinita.

Creare un valore del Registro di sistema come indicato di seguito:

Key:   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CI
Value:   DebugFlags      REG_DWORD   

Valori possibili:

  • 00000001
    Viene restituita un'interruzione di debug nel debugger e il driver non firmato può essere caricato con g.
  • 00000010
    L'integrazione continua ignorerà la presenza del debugger e i driver non firmati non vengono caricati.

Qualsiasi altro valore comporta il caricamento di driver non firmati, ovvero i criteri predefiniti.

Messaggi del registro eventi di integrità del codice

Di seguito sono riportati gli eventi di avviso registrati nel log operativo dell'integrità del codice:

  • "L'integrità del codice non è in grado di verificare l'integrità dell'immagine del <nome> file perché l'hash del file non è stato trovato nel sistema".
  • "L'integrità del codice ha rilevato un driver non firmato".
  • "Questo evento è correlato a Software Quality Monitoring (SQ)."

Di seguito sono riportati gli eventi informazioni registrati nel log dettagliato dell'integrità del codice:

  • "Integrità del codice ha trovato un set di hash di immagini per pagina per il nome> file < in un nome> di catalogo<".
  • "Integrità del codice ha trovato un set di hash di immagini per pagina per il <nome> file nel certificato incorporato immagine".
  • "Integrità del codice ha trovato un hash di file per il <nome> file in un nome> di catalogo<".
  • "Integrità del codice ha trovato un hash di file per il <nome> file nel certificato incorporato immagine".
  • "L'integrità del codice ha determinato che un nome> file del modulo < kernel non firmato viene caricato nel sistema. Rivolgersi al server di pubblicazione per verificare se è disponibile una versione firmata del modulo kernel".
  • "L'integrità del codice non è in grado di verificare l'integrità dell'immagine del <nome> file perché il set di hash delle immagini per pagina non è stato trovato nel sistema".
  • "L'integrità del codice non è in grado di verificare l'integrità dell'immagine del <nome> file perché il set di hash delle immagini per pagina non è stato trovato nel sistema. L'immagine può essere caricata perché il debugger in modalità kernel è collegato."
  • "L'integrità del codice non è in grado di verificare l'integrità dell'immagine del <nome> file perché non è stato possibile trovare un hash di file nel sistema. L'immagine può essere caricata perché il debugger in modalità kernel è collegato."
  • "L'integrità del codice non è riuscita a caricare il < catalogo dei nomi> file".
  • "Integrità del codice ha caricato correttamente il catalogo dei <nomi> file".

Risorse