1

Je suis novice en ce qui concerne les pilotes Windows et la procédure de signature requise pour l'utilisation en production.Signature du pilote en mode noyau GoDaddy - Erreur système 577

J'ai récemment acheté un certificat de signature de pilote GoDaddy et ils m'ont assuré qu'il devrait fonctionner pour les pilotes en mode noyau, mais je n'arrive pas à le faire fonctionner.

Après avoir compilé je signe le fichier .cat avec signtool avec cette commande:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x86\signtool" sign /n "COMPANY_NAME" /t http://timestamp.verisign.com/scripts/timstamp.dll mydriver.cat 

Ce termine avec succès et je vérifie le certificat avec cette commande:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x86\signtool" verify /kp /v mydriver.cat 

La sortie des commandes ci-dessus déclare que c'est réussi. Vous pouvez voir la sortie ci-dessous

Verifying: mydriver.cat 
Signature Index: 0 (Primary Signature) 
Hash of file (sha1): AB24DC3601D29CE37CC2611EDEB7C8E3FBD89D04 

Signing Certificate Chain: 
    Issued to: Go Daddy Class 2 Certification Authority 
    Issued by: Go Daddy Class 2 Certification Authority 
    Expires: Thu Jun 29 19:06:20 2034 
    SHA1 hash: 2796BAE63F1801E277261BA0D77770028F20EEE4 

     Issued to: Go Daddy Secure Certification Authority 
     Issued by: Go Daddy Class 2 Certification Authority 
     Expires: Mon Nov 16 03:54:37 2026 
     SHA1 hash: 7C4656C3061F7F4C0D67B319A855F60EBC11FC44 

      Issued to: <COMPANY_NAME> 
      Issued by: Go Daddy Secure Certification Authority 
      Expires: Sat Jul 23 19:23:39 2016 
      SHA1 hash: B53404B368EED5A734D332C10702B5D5B5C8E5DE 

The signature is timestamped: Sat Jul 25 11:37:02 2015 
Timestamp Verified by: 
    Issued to: Thawte Timestamping CA 
    Issued by: Thawte Timestamping CA 
    Expires: Fri Jan 01 01:59:59 2021 
    SHA1 hash: BE36A4562FB2EE05DBB3D32323ADF445084ED656 

     Issued to: Symantec Time Stamping Services CA - G2 
     Issued by: Thawte Timestamping CA 
     Expires: Thu Dec 31 01:59:59 2020 
     SHA1 hash: 6C07453FFDDA08B83707C09B82FB3D15F35336B1 

      Issued to: Symantec Time Stamping Services Signer - G4 
      Issued by: Symantec Time Stamping Services CA - G2 
      Expires: Wed Dec 30 01:59:59 2020 
      SHA1 hash: 65439929B67973EB192D6FF243E6767ADF0834E4 

Cross Certificate Chain: 
    Issued to: Microsoft Code Verification Root 
    Issued by: Microsoft Code Verification Root 
    Expires: Sat Nov 01 15:54:03 2025 
    SHA1 hash: 8FBE4D070EF8AB1BCCAF2A9D5CCAE7282A2C66B3 

     Issued to: Go Daddy Class 2 Certification Authority 
     Issued by: Microsoft Code Verification Root 
     Expires: Sun Aug 27 19:48:23 2023 
     SHA1 hash: D9612472EF0F2787E2B2D9E063A06B32FA5E333D 

      Issued to: Go Daddy Secure Certification Authority 
      Issued by: Go Daddy Class 2 Certification Authority 
      Expires: Mon Nov 16 03:54:37 2026 
      SHA1 hash: 7C4656C3061F7F4C0D67B319A855F60EBC11FC44 

       Issued to: <COMPANY_NAME> 
       Issued by: Go Daddy Secure Certification Authority 
       Expires: Sat Jul 23 19:23:39 2016 
       SHA1 hash: B53404B368EED5A734D332C10702B5D5B5C8E5DE 


Successfully verified: mydriver.cat 

Number of files successfully Verified: 1 
Number of warnings: 0 
Number of errors: 0 

La partie de certification croisée semble être bonne. J'ai remarqué à partir d'une sortie similaire, j'ai trouvé en ligne (qui a été signé à partir de GlobalSign) que la chaîne de signature de certificat a également conduit jusqu'à la racine de vérification de code de Microsoft. Est-ce que ceci pourrait être le problème? Et si oui, comment pourrais-je réparer cela?

Installation du .inf se déroule sans problème, mais quand je lance le pilote à l'aide

net start mydriver 

j'obtiens l'erreur:

System error 577 has occurred. 

Windows cannot verify the digital signature for this file. A recent hardware or 
software change might have installed a file that is signed incorrectly or damage 
d, or that might be malicious software from an unknown source. 

Si je redémarre avec l'application de la signature du pilote de la commande ci-dessus fonctionne très bien et le conducteur travaille. J'ai également vérifié que les fichiers dans C: \ Windows \ System32 \ DriverStore \ FileRepository sont également signés de la même manière après leur installation.

Est-ce que quelqu'un sait pourquoi la signature ne fonctionne pas, ou comment je pourrais régler ce problème?

Merci d'avance!

+0

J'ai eu des problèmes avec les certificats GoDaddy dans le passé. Avez-vous correctement installé les certificats intermédiaires? Peut-être qu'ils doivent être inclus lors de la signature du fichier? – Ashigore

+0

Merci pour l'aide Ashigore. Votre commentaire m'a fait étudier les certificats intermédiaires qui avaient une sorte de problème de dépendance. J'ai écrit une réponse avec les étapes que j'ai faites pour que la signature fonctionne. –

Répondre

1

J'ai réussi à résoudre mon problème, grâce à Ashigore pour m'avoir orienté dans la bonne direction.

Le problème était lié à mes certificats intermédiaires. Il m'a semblé que mon magasin de certificats était en désordre lorsque certains certificats intermédiaires n'avaient pas de chemin valide jusqu'à une autorité de certification racine.

J'ai supprimé tous les certificats liés à mon certificat et démarrés à partir de zéro.

Maintenant, le chemin est correct comme:

  • Microsoft Code de vérification racine
    • Go Daddy classe 2 Autorité de certification
      • Go Daddy Autorité Secure Certification
      • Mon entreprises certificat

Le code Microsoft vérification racine n'a pas été trouvé du tout, et je lu quelque part que ce certificat est caché dans le noyau quelque part et ne peut pas être trouvé certmgr. Cependant, il est possible de l'installer à partir de Microsoft en cas de besoin d'ici http://www.microsoft.com/pki/certs/MicrosoftCodeVerifRoot.crt Je ne pense pas qu'il soit nécessaire tho ...

j'ai signé les fichiers de pilote à l'aide de ces commandes:

"C:\Program Files (x86)\Windows Kits\8.1\bin\x86\signtool" sign /v /ac "Go Daddy Class 2 Certification Authority.cer" /n "MY COMPANY" /t http://timestamp.verisign.com/scripts/timestamp.dll mydriver.cat 
"C:\Program Files (x86)\Windows Kits\8.1\bin\x86\signtool" sign /v /ac "Go Daddy Class 2 Certification Authority.cer" /n "MY COMPANY" /t http://timestamp.verisign.com/scripts/timestamp.dll mydriver.sys 

sortie Nouveau de la commande de vérification:

Verifying: mydriver.sys 
File is signed in catalog: kaac.cat 
Hash of file (sha1): 0AFAFD987F9C4B1D0BCBBD7851C0EA89AEF413C0 

Signing Certificate Chain: 
    Issued to: Microsoft Code Verification Root 
    Issued by: Microsoft Code Verification Root 
    Expires: Sat Nov 01 15:54:03 2025 
    SHA1 hash: 8FBE4D070EF8AB1BCCAF2A9D5CCAE7282A2C66B3 

     Issued to: Go Daddy Class 2 Certification Authority 
     Issued by: Microsoft Code Verification Root 
     Expires: Sun Aug 27 19:48:23 2023 
     SHA1 hash: D9612472EF0F2787E2B2D9E063A06B32FA5E333D 

      Issued to: Go Daddy Secure Certification Authority 
      Issued by: Go Daddy Class 2 Certification Authority 
      Expires: Mon Nov 16 03:54:37 2026 
      SHA1 hash: 7C4656C3061F7F4C0D67B319A855F60EBC11FC44 

       Issued to: MY COMPANY 
       Issued by: Go Daddy Secure Certification Authority 
       Expires: Sat Jul 23 19:23:39 2016 
       SHA1 hash: B53404B368EED5A734D332C10702B5D5B5C8E5DE 

The signature is timestamped: Sat Jul 25 14:14:29 2015 
Timestamp Verified by: 
    Issued to: Thawte Timestamping CA 
    Issued by: Thawte Timestamping CA 
    Expires: Fri Jan 01 01:59:59 2021 
    SHA1 hash: BE36A4562FB2EE05DBB3D32323ADF445084ED656 

     Issued to: Symantec Time Stamping Services CA - G2 
     Issued by: Thawte Timestamping CA 
     Expires: Thu Dec 31 01:59:59 2020 
     SHA1 hash: 6C07453FFDDA08B83707C09B82FB3D15F35336B1 

      Issued to: Symantec Time Stamping Services Signer - G4 
      Issued by: Symantec Time Stamping Services CA - G2 
      Expires: Wed Dec 30 01:59:59 2020 
      SHA1 hash: 65439929B67973EB192D6FF243E6767ADF0834E4 

Cross Certificate Chain: 
    Issued to: Microsoft Code Verification Root 
    Issued by: Microsoft Code Verification Root 
    Expires: Sat Nov 01 15:54:03 2025 
    SHA1 hash: 8FBE4D070EF8AB1BCCAF2A9D5CCAE7282A2C66B3 

     Issued to: Go Daddy Class 2 Certification Authority 
     Issued by: Microsoft Code Verification Root 
     Expires: Sun Aug 27 19:48:23 2023 
     SHA1 hash: D9612472EF0F2787E2B2D9E063A06B32FA5E333D 

      Issued to: Go Daddy Secure Certification Authority 
      Issued by: Go Daddy Class 2 Certification Authority 
      Expires: Mon Nov 16 03:54:37 2026 
      SHA1 hash: 7C4656C3061F7F4C0D67B319A855F60EBC11FC44 

       Issued to: MY COMPANY 
       Issued by: Go Daddy Secure Certification Authority 
       Expires: Sat Jul 23 19:23:39 2016 
       SHA1 hash: B53404B368EED5A734D332C10702B5D5B5C8E5DE 

Successfully verified: mydriver.sys 

Number of files successfully Verified: 1 
Number of warnings: 0 
Number of errors: 0 
+1

Content que tu l'as trié! – Ashigore