miércoles, 16 de noviembre de 2011

Corregido 0-day que afecta a servidores DNS BIND 9

El ISC (Internet Systems Consortium) ha publicado un parche que corrige una vulnerabilidad 0-day de denegación de servicio  en el servidor DNS BIND 9.

BIND 9 es uno de los servidores DNS más extendidos que tiene su origen en el proyecto de cuatro estudiantes de la universidad de Berkley a principio de los años 80. BIND es código libre, publicado bajo la licencia BSD.

La vulnerabilidad, hasta ahora desconocida, fue reportada por varias organizaciones independientes al ISC como un error que afectaba a las consultas recursivas. En concreto, el mensaje que quedaba en los logs era:

"INSIST(! dns_rdataset_isassociated(sigrdataset))"

El error apuntaba al archivo fuente 'query.c'.

Según la descripción del ISC, el error provoca el almacenamiento de un registro DNS no valido. Si ese registro es consultado posteriormente (o sea, se intenta resolver de nuevo) el proceso entra en un estado de error de aserción (assert) y muere.

ISC no ha publicado detalles técnicos sobre el parche aplicado e incluso se encuentra en fase de estudio sobre la naturaleza y forma del o los exploits usados en los ataques que se han observado.

Sobre el parche, ISC comenta que se centra en la parte de código que procesa la consulta a la caché de la petición efectuada por el cliente. Por una parte se impide a la caché devolver datos inconsistentes (un registro no válido) y por otro lado se previene la caída del proceso 'named' (nombre del proceso de BIND) si se ha detectado una petición de registro con formato no válido.

La vulnerabilidad, con el CVE-2011-4313, afecta a las versiones: 9.4-ESV, 9.6-ESV, 9.7.x, 9.8.x.

El error es explotable en remoto y no precisa de autenticación previa. Los parches están disponibles desde la página web del fabricante.

Más información:

BIND 9 Resolver crashes after logging an error in query.c



David García



No hay comentarios:

Publicar un comentario en la entrada