De Hispasec – Una al Día: Grave vulnerabilidad en la librería glibc (17/02/2016)

Saludos nuevamente.

Bueno, sigo desaparecido porque estoy ocupado con OSSIM, jejejeje. Vengo con una noticia no muy agradable sobre GNU/Linux, y es que se encontró, por casualidad, una grave vulnerabilidad de tipo «buffer overflow» en la librería glibc. Tanto en Hispasec – Una al Día, como en We Leave Security, publicaron la noticia. En este post reproduciré la de Hispasec – Una al día y en el siguiente la de We Leave Security.

¿Recomendación? Que actualicen cuanto antes (los que puedan hacerlo directamente desde Inet, los que no… a luchar la última copia de los repos). Esta vulnerabilidad es bien seria. 🙁

Aquí les va la primera:

Grave vulnerabilidad en la librería glibc
miércoles, 17 de febrero de 2016

Google ha confirmado la existencia de una vulnerabilidad de desbordamiento de búfer en la librería glibc (empleada mayoritariamente en distribuciones, aplicaciones y dispositivos Linux), que podría permitir la ejecución remota de código.

Tux

glib es la «GNU LIB C». La «librería C» es librería estándar del lenguaje C, usada por prácticamente cualquier programa que se compile en un entorno UNIX. La glibc es la versión de «LIBC» creada por el proyecto GNU, y utilizada por prácticamente todas las distribuciones Linux.

Según describen, el problema saltó a la luz cuando un ingeniero de Google comprobó que su cliente SSH sufría un fallo de segmentación cada vez que intentaba conectar a un host específico. Tras una investigación intensa descubrieron que el problema residía en glibc y no en SSH como creían inicialmente.

Fruto de la investigación comprobaron que el problema podía permitir la ejecución remota de código. Sorprendentemente el equipo de mantenimiento de glibc ya había sido alertado de este problema, a través de su gestor de fallos en julio de 2015. Por otra parte, destacan la colaboración con dos investigadores de Red Hat que también estaban estudiando el impacto de forma independiente.

La vulnerabilidad ha pasado desapercibida durante mucho tiempo, realmente se introdujo en la versión 2.9 de la librería, lanzada en mayo de 2008, y afecta a todas las versiones publicadas desde entonces.

El problema, al que se le ha asignado el CVE-2015-7547, reside en que la resolución DNS en el lado del cliente es vulnerable a un desbordamiento de búfer basado en pila cuando se usa la función getaddrinfo (); al tratar respuestas DNS de un tamaño superior a 2.048 bytes. Esto podría permitir al atacante ejecutar código arbitrario en los sistemas afectados con los privilegios del usuario relacionado.

Todo el software que utilice esta función puede ser explotado con nombres de dominio controlados por un atacante, servidores DNS controlados por atacantes, o por medio ataques hombre en el medio.

Fruto de la colaboración de los técnicos de Google y Red Hat se ha podido investigar el problema, desarrollar un parche y realizar todos los test de regresión. Aunque se destaca el trabajo realizado principalmente por el equipo de la distribución de Linux.

El parche publicado está disponible desde:

https://sourceware.org/ml/libc-alpha/2016-02/msg00416.html

Google confirma que el problema no es fácil de explotar, aunque es posible lograr la ejecución remota de código. Es necesario evitar mitigaciones de seguridad existentes como ASLR. Como es obvio no publican el código para explotar el problema, aunque sí ofrecen una prueba de concepto para comprobar si se está afectado por este problema.

La librería glibc es uno de los pilares de muchos sistemas, distribuciones, aplicaciones, entornos o sistemas empotrados. Prácticamente casi todo el software nativo y no nativo hace uso de la librería. Eso convertiría en virtualmente vulnerable a casi todos los programas que hagan uso de la función afectada. En breve aparecerán actualizaciones para múltiples productos que usen esta librería.

Las principales distribuciones Linux ya ofrecen actualizaciones:

Debian: http://www.debian.org/security/2016/dsa-3481

Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=574880

Ubuntu: http://www.ubuntu.com/usn/usn-2900-1/

Red Hat: https://rhn.redhat.com/errata/RHSA-2016-0225.html y

https://rhn.redhat.com/errata/RHSA-2016-0176.html

 

Más Información:

CVE-2015-7547: glibc getaddrinfo stack-based buffer overflow

https://googleonlinesecurity.blogspot.com.es/2016/02/cve-2015-7547-glibc-getaddrinfo-stack.html

[PATCH] CVE-2015-7547 — glibc getaddrinfo() stack-based buffer overflow

https://sourceware.org/ml/libc-alpha/2016-02/msg00416.html

Sourceware Bugzilla – Bug 18665

https://sourceware.org/bugzilla/show_bug.cgi?id=18665

Proof of concept for CVE-2015-7547

https://github.com/fjserna/CVE-2015-7547

Debian Security Advisory

DSA-3481-1 glibc — security update

https://www.debian.org/security/2016/dsa-3481

USN-2900-1: GNU C Library vulnerability

http://www.ubuntu.com/usn/usn-2900-1/

Gentoo’s Bugzilla – Bug 574880

(CVE-2015-7547) – <sys-libs/glibc-2.21-r2: stack overflow in getaddrinfo

https://bugs.gentoo.org/show_bug.cgi?id=574880

Critical: glibc security update

https://rhn.redhat.com/errata/RHSA-2016-0225.html

Security Advisory Critical: glibc security and bug fix update

https://rhn.redhat.com/errata/RHSA-2016-0176.html

 

Antonio Ropero

Twitter:@aropero

Acerca de Hector Suarez Planas

Es Licenciado en Ciencia de la Computación (3 de julio de 2002). Ha sido Administrador de Red en varias organizaciones, Programador y Analista de Sistemas. Actualmente se desempeña como Administrador de Red del Telecentro Tele Turquino de Santiago de Cuba. Tiene experiencia con sistemas Windows y GNU/Linux, Infraestructura de Redes (Cisco, AlliedTelesis, Netgear y HP ProCurve, Vyatta/VyOS), Servidores tanto físicos como virtuales (plataformas VMWare, Proxmox VE y Xen), Sistemas de Seguridad Informática (Snort/Suricata IDS, appliances AlienVault OSSIM), programador (Delphi, C++ Builder, Perl [poco], Python [algo]), entre otras cosas. Actualmente estoy incursionando en todo lo que tiene relación con Cloud Computing (OpenStack) y Centros de Datos. :-)
Esta entrada fue publicada en Actualizaciones, Linux, Seguridad, Vulnerabilidades. Guarda el enlace permanente.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *