|
Actualizado el 2 de mayo de 2024: Eliminé la referencia a Route53 Alias que se refería incorrectamente como cadena
A partir de hoy, puede configurar su Firewall DNS para que confíe automáticamente en todos los dominios en una cadena de resolución (como unCNAME
o DNAME
cadena).
Repasemos esto en términos no técnicos para aquellos que no están familiarizados con DNS.
¿Por qué utilizar el cortafuegos DNS?
DNS Firewall brinda protección para solicitudes DNS salientes desde su red privada en la nube (Amazon Virtual Private Cloud (Amazon VPC)). Estas solicitudes se enrutan a través de Amazon Route 53 Resolver para la resolución de nombres de dominio. Los administradores de firewall pueden configurar reglas para filtrar y regular el tráfico DNS saliente.
DNS Firewall ayuda a proteger contra múltiples riesgos de seguridad.
Imaginemos que un actor malicioso logró instalar y ejecutar algún código en sus instancias o contenedores de Amazon Elastic Compute Cloud (Amazon EC2) que se ejecutan dentro de una de sus nubes privadas virtuales (VPC). Es probable que el código malicioso inicie conexiones de red salientes. Podría hacerlo para conectarse a un servidor de comandos y recibir comandos para ejecutar en su máquina. O podría iniciar conexiones a un servicio de terceros en un ataque coordinado de denegación de servicio distribuido (DDoS). También podría intentar filtrar datos que logró recopilar en su red.
Afortunadamente, su red y sus grupos de seguridad están configurados correctamente. Bloquean todo el tráfico saliente excepto el de puntos finales API conocidos utilizados por su aplicación. Hasta ahora todo bien: el código malicioso no puede volver a casa utilizando conexiones TCP o UDP normales.
Pero ¿qué pasa con el tráfico DNS? El código malicioso puede enviar solicitudes de DNS a un servidor DNS autorizado que controlan para enviar comandos de control o datos codificados, y puede recibir datos en la respuesta. He ilustrado el proceso en el siguiente diagrama.
Para evitar estos escenarios, puede utilizar un firewall DNS para monitorear y controlar los dominios que sus aplicaciones pueden consultar. Puede denegar el acceso a los dominios que sabe que son malos y permitir que pasen todas las demás consultas. Como alternativa, puede denegar el acceso a todos los dominios excepto a aquellos en los que confía explícitamente.
¿Cuál es el desafío con los registros CNAME y DNAME?
Imagine que configura su Firewall DNS para permitir consultas DNS solo a dominios específicos conocidos y bloquea todos los demás. Su aplicación se comunica con alexa.amazon.com;
por lo tanto, creó una regla que permite que el tráfico DNS resuelva ese nombre de host.
Sin embargo, el sistema DNS tiene múltiples tipos de registros. Los de interés en este artículo son
A
registros que asignan un nombre DNS a una dirección IP,CNAME
registros que son sinónimos de otros nombres DNS,DNAME
registros que proporcionan redirección desde una parte del árbol de nombres DNS a otra parte del árbol de nombres DNS, y
Al consultar alexa.amazon.com
veo que en realidad es un CNAME
registro que apunta a pitangui.amazon.com
que es otro CNAME
registro que apunta a tp.5fd53c725-frontier.amazon.com
que a su vez es un CNAME
a d1wg1w6p5q8555.cloudfront.net
. Sólo el apellido (d1wg1w6p5q8555.cloudfront.net
) tiene un A
registro asociado con una dirección IP 3.162.42.28
. Es probable que la dirección IP sea diferente para usted. Apunta a la ubicación de borde de Amazon CloudFront más cercana, probablemente la de París (CDG52
) para mí.
Un mecanismo de redirección similar ocurre al resolver DNAME
registros.
Para permitir la resolución completa de tal CNAME
cadena, podría verse tentado a configurar su regla de firewall DNS para permitir todos los nombres en amazon.com (*.amazon.com
), pero eso no resolvería el último CNAME
eso va a cloudfront.net
.
Lo peor es que la cadena DNS CNAME está controlada por el servicio al que se conecta su aplicación. La cadena puede cambiar en cualquier momento, lo que le obligará a mantener manualmente la lista de reglas y dominios autorizados dentro de las reglas de su Firewall DNS.
Presentamos la autorización de la cadena de redireccionamiento de DNS Firewall
Según esta explicación, ahora está preparado para comprender la nueva capacidad que lanzamos hoy. Agregamos un parámetro a la API UpdateFirewallRule (también disponible en la interfaz de línea de comandos de AWS (AWS CLI) y la consola de administración de AWS) para configurar el firewall DNS de manera que siga y confíe automáticamente en todos los dominios de un CNAME
o DNAME
cadena.
Este parámetro permite a los administradores de firewall permitir solo el dominio que consultan sus aplicaciones. El firewall confiará automáticamente en todos los dominios intermedios de la cadena hasta que alcance el A
registrar con la dirección IP.
Veámoslo en acción
Empiezo con un Firewall DNS ya configurado con una lista de dominios, un grupo de reglas y una regla que PERMITE consultas para el dominio. alexa.amazon.com
. El grupo de reglas está adjunto a una VPC donde inicié una instancia EC2.
Cuando me conecto a esa instancia EC2 y emito una consulta DNS para resolver alexa.amazon.com
solo devuelve el primer nombre en la cadena de dominio (pitangui.amazon.com
) y se detiene allí. Esto se espera porque pitangui.amazon.com
no está autorizado a ser resuelto.
Para resolver esto, actualizo la regla del firewall para confiar en toda la cadena de redireccionamiento. Utilizo la CLI de AWS para llamar al update-firewall-rule
API con un nuevo parámetro firewall-domain-redirection-action
ajustado a TRUST_REDIRECTION_DOMAIN
.
El siguiente diagrama ilustra la configuración en esta etapa.
De regreso a la instancia EC2, intento nuevamente la consulta DNS. Esta vez funciona. Resuelve toda la cadena de redireccionamiento, hasta la dirección IP ?.
Gracias a la redirección de cadena confiable, los administradores de red ahora tienen una manera fácil de implementar una estrategia para bloquear todos los dominios y autorizar solo los dominios conocidos en su Firewall DNS sin tener que preocuparse por CNAME
o DNAME
cadenas.
Esta capacidad está disponible sin costo adicional en todas las regiones de AWS. ¡Pruébalo hoy!
GIPHY App Key not set. Please check settings