¿Puedo mejorar la seguridad del sitio web almacenando claves SSL en DNS? ¿Se requiere DNSSec? ¿Hay modelos de amenaza disponibles?

9

A la luz de los recientes ataques a la comunicación SSL / TLS, las personas han estado preguntando sobre formas de mejorar la seguridad de la comunicación del servidor web SSL. Varias grandes soluciones se han mencionado en los siguientes enlaces (ejemplo 1 , 2 , 3 y publicación de blog ).

  

Existe un acuerdo general de que si un administrador de red carga la clave pública SSL del sitio web (o su hash) en el DNS, la seguridad podría mejorarse

Los inconvenientes de la solución propuesta es que:

  • Todas las recomendaciones para esta solución en particular requieren DNSSec, que agrega complejidad y tiene un costo asociado.

  • El software del cliente (navegadores, sistemas operativos) requerirá una actualización para verificar el DNS en busca de información de certificados

Con el espíritu de brindar un alivio inmediato a la amplia cuestión de seguridad en cuestión, soy cuestionando el supuesto requisito de DNSSec . Al eliminar este requisito y simplemente permitir que el propietario del sitio web dicte los intermedios SSL (o claves públicas específicas) que desean usar a través de DNS, permitimos que el editor de contenido (o sitio de comercio electrónico) declare lo que es confiable, y por lo tanto Algunos vectores de ataque son mucho (mucho) más difíciles de superar.

Preguntas

  1. ¿Se requiere DNSSec para la distribución de clave pública / hash?

    • De acuerdo con este enlace, la piratería de DNS no es una preocupación para la mayoría de los usuarios en Internet. Las excepciones notables incluyen a los usuarios de WiFi y ciertos enrutadores SoHo son preocupantes. Si DNSSec solo es necesario para estos casos límite, ¿por qué retrasar la implementación de una tecnología límite?
  2. ¿Existen modelos de amenazas que comparen el uso de DNS regular como repositorio en lugar de DNSSec?

    • La premisa de esta pregunta asume que aunque el uso de DNS regular es imperfecto, da grandes pasos para proteger a los usuarios contra una vulnerabilidad general en todo el sistema.
  3. ¿Qué se debe almacenar, el hash o la clave pública completa?

  4. ¿Qué tan difícil sería para los proveedores apoyar esta validación adicional de un certificado SSL / TLS?

pregunta random65537 04.09.2011 - 20:53
fuente

5 respuestas

5

¿Se requiere DNSSec para la distribución de clave pública / hash?

Sí. Uno tiene que tener un punto de partida confiable, y en este caso esa es la firma del dominio raíz. A partir de ahí, cada subdominio correspondiente se firma, por lo que hay una cadena de continuidad para demostrar que su solicitud no fue secuestrada en ningún paso de la investigación.

¿Existen modelos de amenazas que comparen el uso de DNS regular como un repositorio en lugar de DNSSec?

La falsificación de DNS ya es un método de ataque común y de baja barrera. DNSSEC se implementó principalmente para evitar eso. La verificación del certificado del servidor en el mismo canal que una consulta de DNS no autenticada no proporciona una mejora real de la seguridad.

¿Qué se debe almacenar, el hash o la clave pública completa?

En teoría, uno podría almacenar cualquiera de ellos al mismo nivel de seguridad efectivo. Sin embargo, DNSSEC está diseñado para almacenar la clave completa con el fin de firmar zonas, por lo que supongo que es posible que se adhiera al almacenamiento de claves y firmas completas para cada aplicación.

¿Qué tan difícil sería para los proveedores soportar esta validación adicional de un certificado SSL / TLS?

Creo que la complejidad del código sería menor que la de verificar un certificado SSL (que el análisis de X.509 es bastante molesto). Sospecho que la mayoría de los proveedores de navegadores podrían implementar esto con relativamente poco esfuerzo. Regularmente se escriben sistemas de complementos más complejos (como Convergence.io).

    
respondido por el Jeff Ferland 04.09.2011 - 21:50
fuente
2

Consulte Certificados DNSSEC ahora en Chrome Stable

  

Esto permite que los sitios usen DNSSEC, en lugar de los certificados tradicionales, y está dirigido a sitios que actualmente no utilizan HTTPS, o certificados autofirmados.

Debe tenerse en cuenta que estos Certificados DNSSEC no utilizan en absoluto el protocolo cliente-servidor DNS, por lo que su computadora no realizará ninguna solicitud de DNS adicional:

  

Estos certificados son certificados X.509 autofirmados con una cadena DNSSEC incrustada en una extensión. La alternativa sería que el cliente realice una búsqueda DNSSEC.

Recuerda que solo es una función experimental para jugar:

  

El resultado más probable es que nadie los usa y saco el código dentro de un año.

    
respondido por el curiousguy 24.09.2011 - 20:55
fuente
2

Autenticación basada en DNS de entidades nombradas (DANE) es una RFC de seguimiento de estándares que permite al propietario de un sitio web colocar la clave pública de un host determinado en DNS. Un cliente puede usar DNS para verificar la integridad de la sesión SSL actual.

La Sección 1.2 de la RFC describe cómo es posible usar DANE para confiar en un certificado que no está en el almacén raíz de confianza. (lea: certificados generados localmente / gratis)

Requisitos notables

  • Se requiere DNSSec
  • Se debe utilizar un transporte seguro, como TSIG, SIG o IPSec
  • El certificado completo o "SubjectPublicKeyInfo" se almacena en DNS
  • Uno de los dos elementos de la viñeta anterior se almacenará o incluirá en el DNS
  • Se admite la rotación / renovación de certificados agregando varios registros para el mismo host
respondido por el random65537 07.03.2012 - 18:08
fuente
1
  

Según este enlace, la piratería de DNS no es una preocupación para la mayoría de los usuarios de Internet. Las excepciones notables incluyen a los usuarios de WiFi y ciertos enrutadores SoHo son preocupantes. Si DNSSec solo es necesario para estos casos límite, ¿por qué retrasar la implementación de una tecnología límite?

La piratería de DNS ciertamente es una preocupación para las mismas personas para quienes los recientes ataques de SSL son una preocupación: las personas bajo gobiernos opresivos. Al controlar los ISP, pueden (y tal vez?) Bloquear / interceptar el tráfico a gran escala a través de DNS.

  

¿Se requiere DNSSec para la distribución de clave pública / hash?

Sí. Si su atacante es capaz de MITMing sus conexiones HTTP, lo que le obliga a usar SSL, podría ser capaz de MITM su DNS también.

  

¿Existen modelos de amenazas que comparen el uso de DNS regular como repositorio en lugar de DNSSec?

No lo sé, pero intente esto: elegir SSL sobre HTTP simple se hace para mitigar algunas de las mismas amenazas que al elegir DNSSEC sobre DNS. Ambos asumen un atacante que puede interceptar su tráfico.

    
respondido por el chris 05.09.2011 - 18:21
fuente
0

Sin DNSSec, no puede decir que un adversario no ha modificado el registro de certificado que está buscando durante el vuelo. Un hombre en el medio podría fácilmente hacer esto.

En cuanto a lo difícil que sería, eso varía mucho según el proveedor, pero estaría involucrado. Deberían actualizarse muchas partes de los navegadores, las API del sistema, las bibliotecas de resolución y más. (Esto sería además de admitir DNSSEC en general).

    
respondido por el Steve Dispensa 04.09.2011 - 21:05
fuente

Lea otras preguntas en las etiquetas