Firma del codice con MD5 su Windows 8

5

Ho scoperto che un pacchetto di installazione firmato che è segnalato come correttamente firmato su Windows 7 e precedenti, è segnalato come "corrotto" in IE10 su Windows 8.

Ulteriori indagini hanno dimostrato che la firma è stata effettuata con MD5.

Sebbene sia del tutto ragionevole che Microsoft non supporti il supporto per MD5, non sono riuscito a trovare alcun riferimento per questo fatto.

Mi sembra anche di ricordare di aver visto presto un avviso su Microsoft che rimuoveva il supporto per MD5 nelle versioni precedenti, ma non sono nemmeno riuscito a trovarlo.

Ho ragione nel ritenere che MD5 non sia supportato su Windows 8? Qualcuno ha un riferimento per questo? Anche il supporto per MD5 verrà rimosso in Windows 7 e versioni precedenti?

    
posta Rasmus Faber 20.09.2012 - 10:31
fonte

2 risposte

5

In Windows 7, i requisiti per la firma del codice erano i seguenti:

  • Per le applicazioni, SHA1 è preferito, MD5 è accettato.
  • Per i driver, è richiesto SHA1.

In Windows 8, i requisiti sono stati modificati come segue:

  • Per le applicazioni, è richiesto SHA1 e SHA256 è facoltativo.
  • Per i driver, è richiesto SHA1 e SHA256 è facoltativo.
  • Per la compatibilità incrociata, Microsoft supporta la doppia firma, in cui il carico utile è firmato con entrambi SHA1 e SHA256. Su Windows 7, verrà controllato il vecchio hash SHA1. Su Windows 8, l'hash SHA256 verrà controllato.

Non è noto se questo è in risposta a Flame, o solo una progressione standard della tecnologia di sicurezza.

Il problema con la modifica dei requisiti in Windows 7 è duplice. Prima di tutto, ci sono decine di migliaia di applicazioni esistenti firmate usando certificati basati su MD5. In secondo luogo, è molto impegnativo modificare il kernel, le utilità di firma del codice, Visual Studio, ecc. Per riflettere i nuovi requisiti. Tuttavia, Microsoft ha presumibilmente adottato misure per garantire che nessun certificato di firma del codice interno autorizzi MD5 e abbia revocato i certificati offensivi.

    
risposta data 20.09.2012 - 10:57
fonte
0

signtool.exe come incluso nell'SDK di Windows 8 si rifiuta di creare firme MD5. signtool sign /fd md5 dice:

SignTool Error: The specified algorithm cannot be used or is invalid.

Ma le firme MD5 create con altri mezzi, come il venerabile signcode.exe , sono ancora valide. Anche Windows 10 dopo deprecazione dei certificati SHA-1 il 1/1/16 accetta ancora le firme MD5.

Questo 47K eseguibile (che mostra un paio di occhi che tracciano il puntatore del mouse) ha un Firma MD5 basata su un certificato SHA-256 e con un timestamp SHA-1 datato 18/01/2016. Windows XP SP3 tramite Windows 10 considera questo come un file firmato correttamente anche quando ha il Mark of the Web.

    
risposta data 18.01.2016 - 05:53
fonte

Leggi altre domande sui tag