CVE-2014-6278
GNU GNU Bash
2025-10-02
GNU Bash contains an OS command injection vulnerability which allows remote attackers to execute arbitrary commands via a crafted environment.
Технический анализ и план устранения
Суть уязвимости
Уязвимость CVE-2014-6278 является частью серии критических уязвимостей, известных как Shellshock. Она представляет собой ошибку в парсере командного интерпретатора GNU Bash.
Проблема возникает из-за того, что Bash некорректно обрабатывает специально сформированные переменные окружения, содержащие определения функций. Если злоумышленник передает строку, начинающуюся с () {, интерпретатор не останавливается на определении функции и продолжает выполнять любые команды, добавленные после нее.
Поскольку многие системные службы (например, веб-серверы через CGI-скрипты, SSH-серверы через ForceCommand, клиенты DHCP) принимают внешние данные и передают их в Bash в виде переменных окружения, злоумышленник может удаленно выполнить произвольный код (RCE) с правами уязвимого процесса. Данная CVE описывает обход предыдущих неполных патчей (CVE-2014-6271 и CVE-2014-7169).
Как исправить
Единственным надежным способом устранения уязвимости является обновление пакета bash до актуальной версии, в которой парсер переменных окружения был полностью переписан и исправлен.
Для систем на базе Debian / Ubuntu:
apt-get update && apt-get install --only-upgrade bash
Для систем на базе RHEL / CentOS / AlmaLinux / Rocky Linux:
yum update bash
Для систем на базе Fedora:
dnf update bash
Для систем на базе Alpine Linux (если Bash установлен дополнительно):
apk update && apk upgrade bash
После обновления рекомендуется проверить систему на наличие уязвимости. Если система уязвима, команда выведет слово "vulnerable". Если система пропатчена, будет выведено только "test" или сообщение об ошибке синтаксиса:
env x='() { :;}; echo vulnerable' bash -c "echo test"
Временные меры
Если немедленное обновление пакета невозможно по техническим причинам, необходимо применить компенсирующие меры для снижения риска эксплуатации:
- Настройте Web Application Firewall (WAF) или систему предотвращения вторжений (IPS) на блокировку входящих HTTP-запросов (включая заголовки User-Agent, Referer, Cookie и кастомные заголовки), содержащих сигнатуру
() {. - Отключите использование CGI-скриптов на веб-серверах (например, модуль
mod_cgiв Apache), если они не являются критически важными для бизнес-процессов. - Измените командный интерпретатор по умолчанию для системных скриптов. Убедитесь, что символическая ссылка
/bin/shуказывает на безопасный интерпретатор (например,dashилиash), а не наbash. - Ограничьте доступ к SSH. Если используется директива
ForceCommandилиcommand=вauthorized_keys, убедитесь, что доступ к этим учетным записям строго контролируется, так как они могут стать вектором атаки. - Отфильтруйте недоверенные ответы DHCP на уровне сетевого оборудования, чтобы предотвратить атаки на DHCP-клиенты, использующие Bash-скрипты для настройки сети.