Yum сообщает об обновлении bash, но двоичный файл сообщает о старой версии

Я пытаюсь обновить систему CentOS 5 для исправления уязвимости bash, описанной в CVE-2014-6271 / RHSA-2014: 1293-1, но столкнулся с проблемой.

После, казалось бы, успешного обновления Bash через yum update bash и перезапустить сервер, yum list bash отображает установленную версию как исправленную (3.2.33.e15.1), но /bin/bash --version отображает 3.2.25(1)-релиз.

По всем счетам (через rpm -ql bash), двоичное местоположение является правильным и find / -name bash возвращает только это одно местоположение.

Любые мысли о том, почему может возникнуть расхождение версии?

2 ответа

Решение

Оказывается, несмотря на несоответствие версий, обновление прошло успешно. Выполнение вводного примера успешно выполняется там, где его раньше не было:

user [~]# env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
this is a test

В Red Hat они обычно исправляют старые версии вместо непосредственного обновления до новейших, чтобы не сломать какие-либо системы. Поскольку это всего лишь исправление уязвимости, оно гарантирует, что двоичный файл и весь пакет остаются обратно совместимыми.

Ты можешь использовать rpm проверить журнал изменений для пакета. Таким образом, вы всегда можете проверить, используете ли вы самую последнюю версию бэкпорта.

# rpm -q --changelog <the rpm package that just got installed>

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