Quando scadrà una firma Authenticode?

3

Sono curioso di sapere come Windows controlla la firma Authenticode.

Ad esempio, firmerò test.exe

So che se test.exe non ha una firma TS (timestamp) da una TSA (Timestamp Authority), la firma scadrà dopo il NotAfter datetime del certificato.

Ero solito credere che se test.exe avesse una firma Authenticode con una firma TS valida, questa firma scadrà dopo la scadenza del certificato TS.

Tuttavia, sembra che io abbia torto ... Quando pulivo il mio vecchio computer, ho trovato PlantsVsZombie! (⊙o⊙) Puoi scaricare il file principale da qui (non sono sicuro per quanto tempo posso mantenere questo link disponibile ...)

Il certificato di firma è scaduto a 2012/9/21 e il suo certificato di timestamp è scaduto al 2012/6/15. Entrambi questi due certificati sono scaduti ora. Ma sorprendentemente, la sua firma è ancora valida (selezionata usando il comando PowerShell Get-AuthenticodeSignature e visualizzata dalla scheda Attributi-Firma)

Allora mi chiedo se una firma con timestamp scade? Se lo fosse, a che ora?

    
posta JemmyLoveJenny 02.08.2018 - 17:19
fonte

1 risposta

2

I'm curious about how Windows check the Authenticode signature

L'Authenticode di Microsoft è un meccanismo basato su PKI come qualsiasi altro processo di verifica del certificato digitale:

  • Verifica della chiave pubblica
  • Durata del certificato
  • Stato certificato (revocato?)
  • Catena di fiducia
  • Timestamp (se utilizzato)

In caso di timestamp, la firma sarà valida fino a quando il certificato è valido. Altrimenti, scadrà quando il certificato lo farà.

Da DigiCert :

Timestamping ensures that code will not expire when the certificate expires because the system validates the timestamp. If you use the timestamping service when signing code, a hash of your code is sent to the timestamp server to record a timestamp for your code. A user’s software can distinguish between code signed with an expired certificate that should not be trusted and code that was signed with a Certificate that was valid at the time the code was signed but which has subsequently expired.

    
risposta data 02.08.2018 - 19:51
fonte

Leggi altre domande sui tag