La familia de sistemas operativos *BSD tiene una vulnerabilidad que
permite la ejecución de código arbitrario en el servidor, con
privilegios de administrador o «root».
*BSD es una familia de sistemas operativos UNIX, cuyos componentes más
conocidos son NetBSD, FreeBSD y OpenBSD, todos ellos gratuitos y de alta
calidad.
A finales de enero de 2002 se dió a conocer una vulnerabilidad que
afecta a los tres *BSD. Se trata de una «race condition» entre el
lanzamiento de un proceso SETUID o SETGID, y la interfaz «ptrace()».
La mayoría de los UNIX modernos no permiten «trazar» un proceso SETUID o
SETGID, por razones de seguridad, ya que un proceso de ese tipo tiene
más privilegios que el usuario que lo invoca, y si éste pudiera
«trazarlo» podría modificar el código o la memoria del proceso
«privilegiado» durante su ejecución. Ello, evidentemente, supondría un
grave compromiso de seguridad.
La vulnerabilidad de *BSD se basa en una «race condition» entre la
ejecución de un proceso SETUID o SETGID, y el intento de «trazar» el
proceso mediante «ptrace()». Bajo determinadas circunstancias existe una
pequeña probabilidad de éxito (una «ventana de oportunidad»).
Insistiendo un número suficiente de intentos, la vulnerabilidad acaba
por activarse, tarde o temprano. Dichos reintentos, por supuesto, pueden
automatizarse y realizar decenas de ellos por segundo.
La recomendación es:
FreeBSD: Actualizar a la versión 4.4-STABLE actual.
OpenBSD: Aplicar al kernel el pequeño parche cuyo enlace se muestra al
final de este boletín.
NetBSD: Corregido en cualquiera de los kernel posteriores al 14 de Enero
de 2002.
jcea@hispasec.com
Más información:
Close-on-exec, SUID and ptrace(2)
ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2002-001.txt.asc
# 012: SECURITY FIX: January 21, 2002
A race condition between the ptrace(2) and execve(2) system calls allows
an attacker to modify the memory contents of suid/sgid processes which
could lead to compromise of the super-user account.
http://www.openbsd.org/errata.html#ptrace
Parche para OpenBSD
ftp://ftp.openbsd.org/pub/OpenBSD/patches/3.0/common/012_ptrace.patch
race condition during exec may allow local root compromise
ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-02%3A08.exec.asc
Deja una respuesta