Vulnerabilidad glibc de GHOST (CVE-2015-0235): ¿es necesario reiniciar un servidor después de la actualización de glibc?

Respuestas:

23

Técnicamente , no es necesario reiniciar , porque solo los programas que usan glibc deben reiniciarse, y el núcleo no usa glibc.

Dicho esto, reiniciar todo lo que usa glibc es lo suficientemente amplio como para reiniciarlo .

Por ejemplo, /sbin/initusa glibc. Sin embargo, reiniciarlo es trivial (ejecutarse init ucomo root).

gowenfawr
fuente
3
OTOH Dudo seriamente que initsea ​​vulnerable debido a la CVE :)
Erbureth dice Reinstate Monica
11
@Erbureth, estoy de acuerdo, pero creo que "creo que este programa es vulnerable, creo que ese programa no es" es "un juego extraño. El único movimiento ganador es no jugar".
gowenfawr
sysvinit es seguro (no hay llamadas DNS y, a menudo, pero no siempre está estáticamente vinculado). systemdparece tener un resolutor propio. En mi experiencia, reemplazar las bibliotecas utilizadas por procesos de larga duración puede causar inestabilidades. Reinicia y sé feliz.
Sr.Spuratic
2
sysvinit se puede reiniciar. Emita el comando init u y se ejecutará / sbin / init.
Joshua
FYI: Reiniciando init sin reiniciar el sistema
Gilles 'SO- deja de ser malvado'
9

Si está satisfecho con reiniciar manualmente los servicios individuales que utilizan la biblioteca vulnerable, puede ejecutar este comando y reiniciar los procesos enumerados:

# lsof | awk '/libc-/ {print $1}' | sort -u

Probablemente encontrará que será más fácil reiniciar la máquina por completo.

escritura02392
fuente
99
lsof | awk '/DEL.*libc/{print $1}' | sort -upara que coincida solo con aquellos que enlazan con la libc ahora eliminada (después de la actualización).
sch
2
¿Alguien realmente verificó la salida de lsof | grep libc? Coincide con un montón de bibliotecas, incluidas libcurl, libcups, libcairo, etc. Grepping for libc-parece producir los resultados correctos.
Es un método bastante indirecto e impreciso. ¿Cómo detecto procesos en ejecución usando un paquete de biblioteca? De todos modos, para glibc, la respuesta es prácticamente todos los procesos. Lo que sería útil sería saber qué procesos quedan con la copia anterior, y este comando no le dirá.
Gilles 'SO- deja de ser malvado'
7

Sí, entonces los procesos que dependen de la versión anterior de glibc comienzan nuevamente con la nueva versión de la biblioteca. Los programas vinculados estáticamente también necesitan ser recompilados por este motivo.

Ohnana
fuente
Sin embargo, la vinculación estática es probablemente rara, dadas las interacciones de las funciones de DNS con NSS, glibc y los sesgos históricos del antiguo mantenedor de glibc .
Sr.Spuratic