Hace poco tiempo vimos que Google puso en su lista de rechazados a un grupo entero de subdominios como co.cc. Estos dominios se utilizaban para alojar sitios web maliciosos. Casi al mismo tiempo, comencé a investigar nuevas formas de identificar dominios conectados a contenidos maliciosos, analizando la información DNS.
Para mi investigación, sólo hice revisiones AXFR de dominios sospechosos, pero no tardé en darme cuenta de que no sólo los ordenadores que alojan sitios phishing tienen configuraciones débiles en sus nombres de servicio. Muchos sitios gubernamentales y servidores de nombres que utilizan Dominios de Nivel Superior (TLD), permiten que se realicen transferencias AXFR. Esta no es una vulnerabilidad en sí misma, pero la información que se consigue desde los servidores de nombres puede ser muy valiosa para los atacantes.
AXFR es el código de operación de la zona de transferencia DNS, que es un tipo de solicitud DNS que permite a una persona externa obtener toda la información DNS de un dominio específico. Los administradores lo usan para duplicar las bases de datos con los datos DNS a través de una serie de servidores DNS. Esto también permite que los atacantes consigan todos los datos DNS para un dominio específico.
Los ataques dirigidos y el hacktivismo son un tema muy candente. Esto está presionando a los gobiernos, organizaciones y muchas grandes compañías. Hemos visto que las empresas están dando más prioridad a la seguridad, pero parece que la mayoría se enfoca en las vulnerabilidades nuevas y sofisticadas, olvidando las viejas vulnerabilidades triviales.
Una de las primeras cosas que revisé es cuántos de los dominios de nivel superior admiten AXFR. Basé mi investigación en la lista IANA TLD, que puedes encontrar en https://media.kasperskycontenthub.com/wp-content/uploads/sites/63/2011/07/21062809/tlds-alpha-by-domain.txt. Me sorprendió descubrir que alrededor del 30% de todos los servidores de nombres con TLD permitían el funcionamiento de AXFR.
Esto me puso a pensar, y escribí un script sencillo que puede agregar nombres antes del TLD y tratar de ejecutar un AXFR en los servidores de nombres para ese dominio. Esto sirve para buscar dominios como co.cc, cz.co, etc. Sé que hay algunos “estándares” para la organización de los dominios. Por ejemplo, muchos gobiernos utilizan la palabra “gov” antes del TLD para especificar que es un sitio gubernamental, como gov.se y gov.com.
Decidí comprobar esto en mi script y, para mi sorpresa, otra vez descubrí muchos dominios gubernamentales (el 12%) que permitían el uso de AXFR:
Pero este proyecto tenía otro propósito: quería identificar sitios que estuvieran relacionados con contenidos maliciosos, así que comencé a enumerar los servidores de nombres y recolectar datos de los diferentes servidores de nombres. Después de un tiempo noté que las personas que registraban los dominios que se usaban en campañas de malware a menudo utilizaban nombres de alojamiento que se podían distinguir de los nombres de dominio válidos. El nombre de dominio muchas veces contenía caracteres escogidos al azar, o los nombres de la compañía a la que intentaban atacar.
Capacidad de identificar sitios maliciosos
La práctica de emplear nombres de dominio con caracteres al azar o el nombre de la compañía atacada es muy común en los sitios phishing. Es común ver un nombre de dominio como login.yahoo.com.somedomain.com o algo parecido.
Analicé sintácticamente mi base de datos en busca de cadenas de caracteres que se suelen usar en sitios phishing. Abajo muestro un ejemplo de un sitio phishing que detecté:
Pero no sólo identifiqué sitios phishing. Había desde sitios que ofrecen antivirus fraudulentos hasta sitios que contienen javascript maliciosos para descargas “drive-by”, servidores de comando y control y granjas de bots.
Conclusión
Ha sido muy interesante analizar la información DNS, y el interés que ha estado recibiendo la seguridad de DNS y los dominios maliciosos confirman que debemos seguir vigilando este protocolo.
Uno de mis colegas, Eugene Aseev, escribió un artículo interesante sobre la reciente lista de rechazados de dominios. Puedes leerlo aquí:
www.viruslist.com/sp/weblog?weblogid=208188453
Me sorprende mucho la cantidad de información que pude recolectar con transferencias AXFR, y la cantidad de sitios que todavía lo permiten. La enumeración es uno de los pasos más importantes en los ataques dirigidos, y las zonas de transferencias DNS pueden dar al atacante mucha información interesante y una lista completa de blancos potenciales. Recomiendo a todos muy en serio que revisen sus zonas y configuraciones para asegurarse de que no estén filtrando datos.
¿Qué pasó con la seguridad de los Servicios de Nombres de Dominio (DNS)?