I browser Web non controllano tale campo, ma alcune librerie di terze parti per lingue come perl non la eseguono (controllano / keyUsage = ma non /extendedKeyUsage=
).
Quindi, ad esempio, avrei bisogno di un'autorità di certificazione che consenta di inserire qualcosa all'interno di /cn=
(un campo che può essere tipicamente utilizzato per il sottoscrittore nel caso di certificati s / mime poiché il campo / keyusage = consente encipherment ma non per l'autenticazione del server).
Badssl non offre questa opzione di test (e probabilmente nessun altro sito web).
Why not make your own ca?
Perché sto parlando di cose schifose che hanno tutti i loro certificati codificati in oggetti condivisi compilati?
Inoltre, nel mio caso (per le disclosure responsabili che sto pianificando), il bug non dovrebbe essere ipotetico. Intendo dire che un'autorità di certificazione dovrebbe consegnare certificati con siti web arbitrari nei campi /cn=
ma senza autenticazione del server nel campo /extendedKeyUsage=
.
Che tipo di certificato in genere non ammette la codifica del server nel loro campo /extendedKeyUsage=
e non ha la parte /cn=
verificata? Un certificato s / mime!
Se tale certificato viene utilizzato con un browser Web per l'uomo nel mezzo, il browser Web rileverà che il certificato non consente l'autenticazione del server nel suo campo /extendedKeyUsage=
e lo rifiuta. Ma se uno strumento non controlla il contenuto del campo /extendedKeyUsage=
, l'uomo nel mezzo funzionerebbe.