Passa al contenuto principale

Appendix A. Design Rationale (Appendice A. Motivazione di progetto)

Appendix A. Design Rationale (Motivazione di progetto)

La challenge TLS ALPN esiste per iterare sulla challenge TLS SNI definita nelle prime bozze ACME. La challenge TLS SNI era comoda per i fornitori di servizi che gestivano grandi sistemi di bilanciamento del carico a livello TLS su cui volevano eseguire la convalida oppure server che fronteggiavano grandi numeri di nomi DNS da un singolo host, poiché consentiva la convalida puramente all'interno dello strato TLS. Il valore fornito dalla challenge TLS SNI è stato ritenuto sufficientemente grande da giustificare la stesura di questo documento per fornire un nuovo tipo di challenge che affrontasse le preoccupazioni di sicurezza esistenti.

Un problema di sicurezza nella challenge TLS SNI è stato scoperto da Frans Rosen; consentiva agli utenti di vari fornitori di servizi di convalidare in modo illecito il controllo dei nomi DNS di altri utenti del fornitore. Quando la challenge TLS SNI è stata progettata, si presumeva che un utente potesse rispondere al traffico TLS via SNI solo per i nomi di dominio registrati presso un fornitore di servizi (cioè, se un utente registrava a.example, poteva rispondere solo alle richieste SNI per a.example e non per b.example). Si è scoperto che numerosi grandi fornitori di servizi non rispettano questa proprietà. Di conseguenza, gli utenti potevano rispondere alle richieste SNI per i nomi usati dal processo di convalida della challenge TLS SNI. Ciò significava che (1) se gli utenti A e B avevano registrato rispettivamente gli host A e B, l'utente A poteva rivendicare il nome challenge SNI costruito per l'host B, e (2) quando veniva effettuata la connessione di convalida, l'utente A poteva rispondere, dimostrando così in modo illecito il controllo dell'host B. Poiché il nome SNI usato era un sottodominio del nome di dominio in convalida anziché il nome di dominio stesso, era probabile che non fosse già registrato presso il fornitore per l'instradamento del traffico, rendendo più facile un dirottamento.