Уразливість GHOST glibc (CVE-2015-0235): чи потрібно перезапустити сервер після оновлення glibc?


Відповіді:


23

Перезапуск технічно не вимагається , оскільки потрібно лише перезапустити лише програми, які використовують glibc, а ядро ​​не використовує glibc.

Незважаючи на це, перезапуск всього, що використовує glibc, є достатньо широким, щоб ви могли просто перезавантажити .

Наприклад, /sbin/initвикористовує glibc. Однак перезапуск це тривіально (запустити init uяк root).


3
OTOH Я серйозно сумніваюся, що initвін вразливий через CVE :)
Ербурет говорить, що повернеться Моніка

11
@Erbureth, я згоден, але я думаю, що "я думаю, що ця програма є вразливою, я думаю, що програма не є" це "дивна гра. Єдиний хід, який виграє, - це не грати".
gowenfawr

sysvinit безпечний (без дзвінків DNS і часто, але не завжди також статично пов’язаний). systemdяк видається, має роздільну здатність все своє. На мій досвід, заміна бібліотек, використовуваних тривалими процесами, може спричинити нестабільність. Перезавантажтесь і будьте щасливі.
mr.spuratic

2
sysvinit можна перезапустити. Видайте команду init u, і вона виконає / sbin / init.
Джошуа


9

Якщо ви задоволені перезавантаженням вручну окремих служб, які використовують вразливу бібліотеку, ви можете запустити цю команду та перезапустити перелічені процеси:

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

Напевно, ви побачите, що буде легше повністю перезапустити машину.


9
lsof | awk '/DEL.*libc/{print $1}' | sort -uвідповідати лише тим, що посилаються на видалений (після оновлення) libc.
sch

2
Хтось насправді перевіряв вихід lsof | grep libc? Він відповідає тоні бібліотек, включаючи libcurl, libcups, libcairo і т. Д. Перехоплення, libc-здається, дає правильні результати.

Це досить крутий і неточний метод. Як виявити запущені процеси за допомогою бібліотечного пакета? У будь-якому випадку, для glibc відповідь - це майже кожен процес. Що було б корисно було б знати, які процеси залишилися зі старою копією, і ця команда не скаже вам.
Жиль "ТАК - перестань бути злим"

7

Так, процеси, які залежать від старої версії glibc, починаються знову з нової версії бібліотеки. З цієї причини також потрібно перекомпілювати статично пов'язані програми.


Статичне зв’язування, мабуть, є рідкісним, враховуючи взаємодію функцій DNS з NSS, glibc та історичні ухили колишнього сервісу glibc .
mr.spuratic
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.