Не удалось при попытке обновить glibc на RHEL4 из-за GHOST

Из-за недавней уязвимости GHOST я пытался обновить версию glibc на нашем RHEL4.

Команда, которую я попытался использовать, была:rpm -Uvh glibc-2.3.4-2.57.x86_64.rpm

Результат был: [root@rhel4-test ~]# rpm -Uvh glibc-2.3.4-2.57.i686.rpm warning: glibc-2.3.4-2.57.i686.rpm: V3 DSA signature: NOKEY, key ID db42a60e Preparing... ########################################### [100%] package glibc-2.3.4-2.57 is already installed

Список изменений на сайте поддержки RedHat кажется довольно старым, хотя версия совпадает.

Кому-нибудь удалось обновить RHEL4 против уязвимости GHOST (CVE-2015-0235)?

8 ответов

Решение

RHEL 4 находится в том, что Red Hat называет расширенной жизненной фазой.

... Для версий продуктов на этапе расширенной жизни Red Hat будет предоставлять ограниченную текущую техническую поддержку. На этом этапе не будет доступно исправлений безопасности, исправлений ошибок, аппаратного обеспечения или анализа первопричин, а поддержка будет предоставляться только в существующих установках.

Для расширенной поддержки вы можете приобрести подписку на расширенную поддержку жизненного цикла (ELS).

Доступный на расширенной жизненной фазе жизненного цикла продукта для Red Hat Enterprise Linux 4 и 5, надстройка поддержки расширенного жизненного цикла предоставляет исправления безопасности с критическим воздействием и выбранные исправления ошибок срочно, которые доступны и соответствуют последним версиям. из опубликованного подмножества пакетов в конкретном основном выпуске Red Hat Enterprise Linux после окончания фазы 3 производства.

Если у вас есть подписка ELS, значит, доступно обновление под номером RHSA-2015: 0101-1.

Ваша система RHEL 4 должна подписаться на правильные каналы на портале RHN или на вашем сервере Satellite, а затем вы запустите up2date -u glibc,

У Саши это почти правильно, и, поскольку я не могу комментировать, я опубликую это как отдельный ответ.

Игнорирование ошибок зависимости - очень плохая идея ™. Это также не нужно в этом случае, так как есть обновленная версия nscd для поддержки glibc.

Запатентованные пакеты glibc действительно доступны в Oracle, и я подтвердил, что их установка исправляет уязвимость GHOST. Я предлагаю загрузить все пакеты, связанные с пропатченным glibc, а затем обновить только те, которые уже установлены в вашей системе, с обновлением RPM.

Для 32 бит:

wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-profile-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-utils-2.3.4-2.57.0.1.el4.1.i386.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/nscd-2.3.4-2.57.0.1.el4.1.i386.rpm

sudo rpm -Fvh *.rpm

Для 64 бит:

wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-profile-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-utils-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget http://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/nscd-2.3.4-2.57.0.1.el4.1.x86_64.rpm

sudo rpm -Fvh *.rpm

После этого перезапустите все работающие службы, которые используют glibc. Вы можете получить их список, запустив lsof | grep libc | awk '{print $1}' | sort | uniq, В зависимости от вашей ситуации, возможно, проще просто перезапустить весь сервер.

Если у вас нет подписки RHEL, Oracle любезно выпустила обновленные пакеты для вашей старой коробки RH4.

Для обеих систем (i386 и X86_64):

mkdir glibc2015
cd glibc2015

Для системы i386 (обратите внимание, мне пришлось заменить http на h**p, чтобы избежать спам-фильтров здесь.):

wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.i386.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.i386.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/i386/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.i386.rpm

Для системы X86_64:

wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.i686.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-common-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-common-2.3.4-2.57.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-devel-2.3.4-2.57.0.1.el4.1.x86_64.rpm
wget h**p://public-yum.oracle.com/repo/EnterpriseLinux/EL4/latest/x86_64/getPackage/glibc-headers-2.3.4-2.57.0.1.el4.1.x86_64.rpm

Для всех систем:

rpm -Uvh glibc*rpm

Если вы получаете сообщение об ошибке nscd в зависимости от glibc, это нормально:

rpm -Uvh glibc*rpm --nodeps

Не забудьте перезапустить все службы, поддерживающие сеть, после обновления. Если вы не уверены, какие сервисы, это может не повредить просто перезагрузить сервер.

Большинство серверов, на которых я работал, на самом деле не работают под NSCD.

пс топор | grep nscd

Или chkconfig - список nscd

Если оба из них показывают, что он не работает, то можно безопасно удалить nscd (и nss_ldap), а затем rpm -Uv glibc-*

Я просто зеркало, я не создавал RPM.

Редактировать: Я только что посмотрел, и Oracle Linux действительно обновил свое репо сегодня. Лучше использовать их вместо этого. Посмотрите вышеупомянутый пост о том, где его взять.

С Уважением,

стог

Я зеркалировал RPM по адресу http://users.axess.com/rickm/glibc для el4.

Примечание: я просто отражаю их для кого-то в Бразилии. Полный исходный файл и файл спецификации доступны, если вы им не доверяете.

Протестировано на Centos 4.6 и 4.9

Перезагрузился чисто и сообщил как не уязвимый.

В прошлом я обнаружил, что существуют жизнеспособные варианты сборки пакетов RHEL4 с использованием источника, найденного в версиях Oracle Linux. https://oss.oracle.com/el4/SRPMS-updates/?C=M;O=D всякий случай, если вы не можете заставить работать RHN. Возможно, вам придется немного подождать (пару дней), чтобы появился новый src.rpm.

Есть патч, RPM должен быть glibc-2.3.4-2.57.el4.2.i686.rpm,
См.: https://rhn.redhat.com/errata/RHSA-2015-0101.html

Другие вопросы по тегам