Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Entradas Mensuales

Síguenos en:

Canal Oficial Telegram de elhacker.NET Grupo Facebook elhacker.NET Twitter elhacker.NET Canal Youtube elhacker.NET Comunidad Steam: Grupo elhacker.NET

Suscripción

¿Quieres recibir las últimas novedades del blog en tu correo?

¡Suscríbete al feed!

Entradas populares

PostHeaderIcon Activar medidas privacidad Navegador Firefox, Chrome, Windows 10 y Android (ESNI, TLS 1.3, DoH)




 Nuestro proveedor de Internet, empresas de seguridad y gobiernos que censuran contenido tienen varias formas para conocer y registrar las páginas web a las que nos conectamos. Muchos de vosotros pensaréis que usando DNS over HTTPS (DoH) nadie podrá saber las web que visitamos, pero esto no es así. Aunque usemos DoH nuestro proveedor de Internet, empresas de seguridad y otros actores pueden ver las URL que visitamos porque tienen la posibilidad de consultar el Server Name Indication (SNI). Frente a esta problemática en el siguiente artículo veremos como activar ESNI y DoH para dificultar que un tercero observe o trafique con nuestro historial de navegación.

  • La primera parte del artículo será una introducción básica al SSL (ahora llamado TLS). 
  • La segunda parte Activar Esni Y DoH en Firefox (el único navegador que lo soporta, por el momento) y en Windows 10
  • La tercera y última parte DNS sobre HTTPS (DoH) y DNS sobre TLS (DoT) en Windows 10, Linux, Android, Google Chrome y Microsoft Edge

Principios Básicos

SSL

¿Qué es SSL?

 SSL, o Secure Sockets Layer, es un protocolo de seguridad de Internet basado en el cifrado. Desarrollado por Netscape en 1995 para asegurar la privacidad, la autenticación y la integridad de los datos en las comunicaciones en Internet. SSL es el predecesor del cifrado TLS moderno que se utiliza hoy en día.

SSL es el predecesor directo de otro protocolo conocido como TLS (transport layer security). El Internet Engineering Task Force (IETF, por sus siglas en inglés) propuso en 1999 una actualización de SSL. Ya que esta actualización la estaba desarrollando el IETF, y Netscape ya no participaba en el proyecto, se cambió el nombre a TLS. No hay diferencias drásticas entre la versión final de SSL (3.0) y la primera versión de TLS, el nombre simplemente se cambió para indicar el cambio de propietario. 

Ya que están tan estrechamente relacionados, los dos términos se suelen usar indistintamente y con frecuencia se confunden. Algunos todavía usan SSL para referirse a TLS, mientras que otros utilizan el término 'cifrado SSL/TLS', ya que el nombre SSL es muy conocido.

La capa de conexión segura (TLS) garantiza las comunicaciones cifradas entre un cliente y un servidor web a través de HTTPS. Reemplaza el protocolo de capa de conectores seguros (SSL) que ya no se utiliza.

SSL no se ha actualizado desde el SSL 3.0 en 1996 y, hoy en día, se considera que está obsoleto. El protocolo SSL tiene varias vulnerabilidades conocidas y, por ello, los expertos en seguridad recomiendan que se deje de usar. De hecho, la mayoría de navegadores web modernos ya no son compatibles con SSL.

TLS (Transport Layer Security)

¿Qué es TLS?

TLS se traduce a Transport Layer Security o en español Seguridad de la Capa de Transporte y su sucesor SSL (Secure Sockets Layer o en español Capa de Puertos Seguros)

La capa de conexión segura (TLS) garantiza las comunicaciones cifradas entre un cliente y un servidor web a través de HTTPS. Reemplaza el protocolo de capa de conectores seguros (SSL) que ya no se utiliza. Cuando se cifra el tráfico web con TLS, aparece un candado verde en la ventana del navegador de los usuarios, cerca del cuadro de la dirección URL.

Explicación de las versiones de TLS Una versión más nueva de TLS implica un estándar de cifrado.  

TLS 1.2 incluye correcciones de vulnerabilidades encontradas en versiones anteriores. A partir de junio de 2018, TLS 1.2 es la versión obligatoria del Consejo de Estándares de Seguridad de la Industria de Tarjetas de Pago (PCI, por sus siglas en inglés).

TLS 1.2 utiliza:
  • SHA-1
  • RC4
  • DES
  • 3DES
  • AES-CBC
  • MD5
  • Grupos Diffie-Hellman arbitrarios – CVE-2016-0701
  • EXPORT- claves de fuerza – Responsable de FREAK y LogJam

TLS 1.3, que ofrece mejoras de funcionamiento (velocidad) y seguridad adicionales, fue aprobado por Internet Engineering Task Force (IETF, por sus siglas en inglés) en 2018.

TLS 1.3

  • Velocidad (handshake,  “zero round trip time”. (0-RTT).)

TLS 1.3 es compatible tanto en Chrome (a partir de la versión 66), Chrome 70 de forma oficial, como en Firefox (a partir de la versión 60). Microsoft Edge comenzó a soportar TLS 1.3 con la versión 76, y está habilitado por defecto en Safari 12.1 en macOS 10.14.4.

Activar ESNI y DoH en Firefox para proteger nuestra privacidad

¿POR QUÉ EL SNI REVELA LAS WEB QUE VISITAMOS AUNQUE ESTEMOS USANDO DoH? 

Cuando introducimos una URL en el navegador que usa el protocolo https y presionamos la tecla enter se produce un intercambio de información entre nuestro navegador y el servidor web que queremos visitar (TLS handshake). El proceso inicial de intercambio de información entre cliente y servidor está sin cifrar e incluye la totalidad de datos necesarios para que entre nuestro navegador y el servidor web se pueda establecer una comunicación cifrada. Estos datos incluyen los tipos de cifrado que soporta nuestro navegador, un número de cliente, el SNI, etc. 

El SNI que acabamos de citar no es más que la URL que queremos visitar y se envía del cliente al servidor sin cifrar. Por lo tanto nuestro proveedor de Internet, gobiernos y empresas de seguridad tendrán la posibilidad de interceptarlo y saber la web que que estamos visitando.


Por lo tanto el SNI informa sobre la URL que queremos visitar antes que se finalice el TLS handshake y como está sin cifrar es un claro problema de privacidad y seguridad.


¿QUÉ HACEN LAS EMPRESAS Y ENTES QUE INTERCEPTAN NUESTRO SNI? Normalmente los ISP, gobiernos o empresas de seguridad contratadas por terceros pueden capturar los SNI para los siguientes fines: 

  • Elaborar historiales de navegación con fines publicitarios o para simplemente venderlos a terceros y ganar dinero. 
  • Bloquear el acceso a determinadas páginas web. Los proveedores de Internet (ISP) pueden conocer las web que queremos visitar antes de iniciar la conexión, por lo tanto pueden implementar reglas para bloquear el acceso a todos sus clientes a una determinada página web.
  • Conocer las páginas web visitadas por un usuario para posteriormente enviarlas a una autoridad competente como por ejemplo la policía, un juez, etc.
La solución al problema que acabamos de detallar es cifrar el SNI. En el momento que enviemos nuestro SNI cifrado (ESNI) evitaremos que gobiernos, compañías de seguridad y operadores de Internet puedan interceptar nuestro tráfico. 

ESNI aún está en fase experimental y el único navegador que  de momento  lo soporta es Firefox. Por lo tanto a continuación veremos como configurar DoH y ESNI en Firefox. Google Chrome todavía no soporta ESNI

Server Name Indication - SNI vs E-SNI

Indicador de nombre de servidor cifrado (SNI) SNI cifrado reemplaza la extensión de “server_name” de texto sin formato utilizada en el mensaje de ClientHello durante la negociación de TLS con un “encrypted_server_name.” Esta capacidad se expande en TLS 1.3, lo que aumenta la privacidad de los usuarios al ocultar el nombre de host de destino de los intermediarios entre el visitante y el sitio web.

¿Para qué sirve el SNI?

 Fundamentalmente, el SNI existe para permitir alojar muchos sitios web cifrados en una única dirección IP. Los primeros navegadores no incluían la extensión del SNI. Por ello, cuando se realizaba una solicitud para establecer una conexión HTTPS, el servidor web no tenía mucha información para continuar y solo podía devolver un certificado SSL por cada dirección IP con la que el servidor web se comunicara.

La analogía que más gusta es la de un sobre de correo postal. El contenido del sobre está protegido y no puede ser visto por el servicio de correos. Sin embargo, fuera del sobre está la dirección que el cartero usará para llevar el sobre al edificio correcto. En Internet, la dirección IP de un servidor web es el equivalente al nombre de la calle. Sin embargo, si vives en un edificio con muchos pisos, el nombre de la calle no basta para llevar el sobre al destinatario correcto. Para complementar la dirección incluyes un número o el nombre del destinatario

SNI con TLS 1.2 o inferior




ESNI (TLS 1.3)




Activar Esni Y DoH en Firefox

Activar DoH «DNS over HTTPS» en Firefox

Hay dos maneras de hacerlo:

  1. Barra de direcciones Mozilla Firefox:

  • about:config
Buscar:
network.trr.mode

 Cambiar de 0 a 2

Con el valor 2, la totalidad de peticiones DNS se realizarán de forma cifrada y solo en el caso que la petición DNS cifrada falle se realizará con los DNS tradicionales. En función del valor que introduzcamos en network.trr.mode obtendremos el siguiente comportamiento según el valor del TRR:

  • Valor 0 --> Es el valor que aplica la configuración predeterminada de Firefox. La configuración predeterminada actual de Firefox es que DoH esté desactivado. Por lo tanto la opción 0 es equivalente a la opción 5
  • Valor 1 --> DoH está activado. Firefox decidirá si las peticiones DNS se realizan cifradas o sin cifrar en función de la velocidad de resolución de las peticiones DNS.
  • Valor 2 --> DoH está activado. Todas las peticiones DNS estarán cifradas excepto en una situación. En el momento que falle una resolución DNS cifrada entonces se intentará resolver la petición DNS mediante los DNS tradicionales sin cifrar. 
  • Valor 3 --> Aseguramos que el 100% de peticiones DNS que se realicen estén cifradas. 
  • Valor 5 --> Las peticiones se realizarán sin cifrar porque DoH está desactivado.

Cambiar el proveedor de DoH en Firefox Si han seguido las instrucciones del artículo las peticiones DNS cifradas serán resueltas por CloudFlare. Para mi este no supone ningún inconveniente, pero si para vosotros lo es podéis cambiar el proveedor. Para ello en la configuración avanzada de Firefox tienen que buscar el parámetro 

network.trr.uri


Una vez lo encuentren verán lo siguiente: https://mozilla.cloudflare-dns.com/dns-query

Si quieren reemplazar Cloudflare, por otros proveedor deberán reemplazar https://mozilla.cloudflare-dns.com/dns-query por lo siguientes valores: 


Proveedor DoHDirección URL para seleccionar el proveedor
Googlehttps://dns.google/dns-query
OpenDNShttps://doh.opendns.com/dns-query
Quad9 DNS IBMhttps://dns.quad9.net/dns-query
Switch DNShttps://dns.switch.ch/dns-query
CIRA Canadian Shield DNShttps://private.canadianshield.cira.ca/dns-query
BlahDNS (IPv4)https://doh-fi.blahdns.com/dns-query
LibreDNShttps://doh.libredns.gr/dns-query

O bien mediante menú de navegación, en menú Herramientas - Opciones

2. Activar DNS sobre HTTPS 

 

Es importante activar  soporte "DNS over HTTPS "(also known as “Trusted Recursive Resolver” in Firefox) "Activar DNS sobre HTTPS" en Herramientas -> Opciones --> General --> Configuración de red.

Usar proveedor --> 

  • CloudFlare (Predeterminado) https://mozilla.cloudflare-dns.com/dns-query
  • NextDNS
  • Personalizada (Ver la tabla de arriba Proveedor DoH)


Activar y habilitar Encrypted SNI en Firefox


Barra de direcciones Mozilla Firefox:

  • about:config
Buscar:
network.security.esni.enabled


Pasar de false (falso) a true (cierto)


Comprobar que DoH y ESNI están activados

Para comprobar que las configuraciones realizadas se han aplicado con éxito sugiero que cliquen en el siguiente enlace. Una vez dentro de la web cliquen sobre el botón Check My Browser.

Comprobar:



Las tecnologías analizadas son:
  • Secure DNS: una tecnología que cifra las consultas DNS e incluye DNS-over-TLS y DNS-over-HTTPS.
  • DNSSEC: tecnología diseñada para verificar la autenticidad de las consultas DNS.
  • TLS 1.3: la última versión del protocolo TLS que incluye muchas mejoras y cierra brechas de seguridad de las anteriores.
  • Encrypted SNI: siglas de Server Name Indication cifrado que desvela el nombre del hostname durante una conexión TLS. Esta tecnología busca asegurar que sólo pueda filtrarse la dirección IP.
Deberíamos ver algo así:



Increíblemente a día de hoy en Google Chrome no se puede activar ESNI todavía.

Acto seguido se realizarán las siguientes comprobaciones: 

  1. Que las peticiones DNS se estén realizando de forma cifrada. 
  2. Que nuestro navegador esté correctamente configurado para cifrar SNI (ESNI). 
  3. El navegador que estamos usando soporte TLS 1.3. 
  4. Que el proveedor que resuelve las peticiones DNS soporte DNSSEC.
Si han realizado el proceso de forma correcta verán que los resultados obtenidos son similares a los que se muestran en la siguiente captura de pantalla.

Activar TLS 1.3  (ESNI) en Windows 10


A partir Windows 10 versión 1903 o superiores

  • Usar TLS 1.3 (experimental)



Registro de Windows
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.3\Client] "DisabledByDefault"=dword:00000000 "Enabled"=dword:00000001

DNS sobre HTTPS (DoH) y DNS sobre TLS (DoT) 

  • Windows 10
  • Linux
  • Android
  • Google Chrome - Microsoft Edge

Windows 10 ya tiene DNS over HTTPS en su configuración

Esta posibilidad está disponible a partir de  Windows 10 Insider Preview Build 20185

  • Opening the Registry Editor
  • Navigate to the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters registry key
  • Create a new DWORD value named “EnableAutoDoh
  • Set its value to 2

Comprobar funcionamiento DNS DoH en Windows 10
pktmon filter remove
pktmon filter add -p 53
pktmon start --etw -l real-time

Con DNS DoH no debe haber ninguna petición en el puerto 53

Hay que señalar que, si bien tenemos compatibilidad con DNS sobre HTTPS (DoH) desde las versiones preliminares de Windows 10, esta función no está habilitada de forma predeterminada. Si queremos utilizar DoH al realizar consultas de DNS en sus aplicaciones o navegadores, podemos habilitarlo manualmente desde Configuración o ajustando el registro de Windows. 

Si queremos usarlo, debemos de estar en el canal de desarrollo del programa Windows Insider y además tener actualizado el sistema operativo a la compilación 19628 o superior. Para habilitar DNS over HTTPS en versiones en Windows 10, tenemos que seguir estos pasos: 

  • En conexiones Ethernet (conexiones por cable de red), abre «Configuración, Red e Internet», y seleccionamos «Estado». Luego hacemos clic en «Propiedades» y seleccionamos «Editar opciones DNS». 
  • En las conexiones Wi-Fi (inalámbricas), abre la página de red y hacemos clic en el enlace de propiedades del adaptador, y, a continuación, seleccionamos «Editar opciones DNS». Una vez realizadas estas operaciones aparecerá una pantalla como esta:



El Protocolo DNS-over-TLS en Linux (systemd)


Las versiones más recientes de Ubuntu emplean un servicio especial para la resolución de nombres llamado «system-solve.service(8)». El archivo de configuración «resolved.conf(5)» especifica la mayoría de los detalles para la resolución de nombres, incluyendo qué protocolos y resolvedores se deben emplear

La configuración predeterminada de «systemd-solve» se selecciona en el tiempo de compilación, y «/etc/systemd/resolved.conf» contiene normalmente líneas comentadas que describen estos valores predeterminados

Como puede deducirse del archivo, el protocolo DNS-over-TLS (DoT) es compatible, pero está deshabilitado por defecto. En el momento de escribir este artículo, solo se admite el DoT oportunista según el manual, lo que significa que el resolvedor primero intentará resolver el problema utilizando el DoT antes de volver a la DNS tradicional en caso de fallo, permitiendo así ataques de descenso de categoría cuando un atacante provoque intencionadamente un fallo del DoT con el fin de hacer que la resolución de nombres se reduzca a la DNS tradicional.

Decidimos probar con el DoT cambiando tres variables de configuración en «/etc/systemd/solve.conf’:»
  • Pusimos «DNS» en la dirección IP del servidor DoT
  • Establecimos «DNSOverTLS» como «oportunista»
  • Configuramos «Domains» como «~».
La variable «DNS» contiene la lista de direcciones IP que corresponden al resolvedor recurrente del DoT (aquí puede encontrar una lista de resolvedores recurrentes públicos).

El ajuste de “DNSOverTLS” como “oportunista” activa el DoT en modo oportunista – esto significa que el DoT se empleará si es posible, pero el resolvedor simple volverá a la DNS tradicional si falla.
Por último, establecer «Domains» como «~.» programa a «systemd-resolved» para que prefiera el servidor de nombres especificado antes que cualquier servidor DNS por vínculo que esté disponible. Esta es una configuración importante, ya que de lo contrario un resolvedor DNS no DoT por vínculo podría tener prioridad sobre el resolvedor DoT.

Android


A partir de Android 9 (Pie) podemos hacer uso de esta nueva característica llamada "DNS Privado" 

Android 9, la versión del sistema operativo móvil de Google, ya sí que cuenta con soporte para este nuevo protocolo de seguridad gracias a la nueva función “Private DNS Mode” incluida en esta actualización. Private DNS Mode nos permite hacer uso en nuestro smartphone de la seguridad de DNS-over-TLS de forma nativa, sin depender de una VPN ni ninguna otra configuración más que especificar el servidor como tal.

Ajustes > Redes e Internet“. Dentro de las opciones de red que nos aparecen aquí, en el apartado “Avanzado”, podremos ver una opción llamada “DNS Privado“. Esta es la opción que nos interesa.





Para usar los DNS privados de Google, debemos introducir en este apartado: 
dns.google
Para usar los DNS privados de Cloudflare, la dirección que debemos introducir en este apartado es:

 



1dot1dot1dot1.cloudflare-dns.com
“Settings” and then “Network & Internet”. At the bottom, you should see an “Advanced” option. Open up the “Advanced” options and you should see a “Private DNS” option. S

dns-tls.qis.io
  1. Go to Settings –> Network & Internet –> Advanced –> Private DNS.
  2. Select the Private DNS provider hostname option.
  3. Enter dns.quad9.net and select Save.
 dns.quad9.net

Versiones anteriores Android 9 

Versiones anteriores de Android. Los dispositivos que ejecutan versiones anteriores a Android 9 no admiten DNS sobre TLS y no pueden configurar DNS privados para todas las redes. Puede configurar DNS para cada red WiFi individual que use. Esto requiere configurar toda la información de la red manualmente y solo se recomienda para usuarios avanzados. Sin embargo existe una app, Warp de CloudFlare para facilitar la tarea.



 

Google Chrome

Antes era necesario activar un "flag", escribiendo en la barra del navegador a partir de Chrome 78 o superior:

chrome://flags/#dns-over-https

Secure DNS lookups

 
Enables DNS over HTTPS. When this feature is enabled, your browser may try to use a secure HTTPS connection to look up the addresses of websites and other web resources. – Mac, Windows, Chrome OS, Android
#dns-over-https

En Microsoft Edge basado en Chromium es exactamente lo mismo. Tienes que abrir Edge y escribir edge://flags/#dns-over-https en la barra de búsqueda. Entrarás en los Flags de Edge, y te aparecerá seleccionada la opción Secure DNS lookups. Lo que tienes que hacer es pulsar en la derecha donde pone Default y seleccionar la opción Enabled.

Pero ahora está opción ya no existe, a partir de Chrome 83

Debemos ir a Configuración, Seguridad (Configuración Avanzada) y ya aparece el menú por defecto de "Usar DNS seguro"



    Fuentes:

    https://geekland.eu/activar-esni-y-doh-en-firefox/


    0 comentarios :

    Publicar un comentario

    Los comentarios pueden ser revisados en cualquier momento por los moderadores.

    Serán publicados aquellos que cumplan las siguientes condiciones:
    - Comentario acorde al contenido del post.
    - Prohibido mensajes de tipo SPAM.
    - Evite incluir links innecesarios en su comentario.
    - Contenidos ofensivos, amenazas e insultos no serán permitidos.

    Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.