Критичная уязвимость в Bash

Уязвимости позволяют удаленному пользователю выполнить произвольный код на целевой системе.
Уязвимость существует из-за ошибки обработки входных данных при выполнении синтаксического анализа кода. Удаленный пользователь может выполнить произвольные команды на целевой системе.Как уязвимость может затронуть пользователя?

bash и ОС хранят список переменных окружения, которые описывают текущего пользователя, путь к приложениям на жестком диске и прочие функции. Создав переменную окружения с особой структурой, взломщик сможет выполнить произвольный код на ПК жертвы во время следующего запуска bash.

Создать переменную окружения можно следующим образом:

  •  Установить удаленное соединение через SSH и попробовать войти в систему. Подобрав специфический логин или имя хоста, можно создать переменную окружения со специфическими данными;
  • Вынудить пользователя создать переменную окружения самостоятельно;
  • Вынудить определенные программы задать нужное значение переменной окружения. К примеру, пользователь запустил web-сервер и скрипт, устанавливающий собственную переменную окружения. Даже несмотря на то, что работа скрипта не изменяет системные переменные окружения, ОС уже уязвима.

Установив собственную переменную окружения, хакеры смогут выполнить произвольный код на устройстве пользователя при следующем запуске bash. Ситуация может стать еще опаснее при использовании команды sudo –s, запускающей bash с корневыми правами.

Отметим, что некоторые программы используют bash для совершения собственных операций. Даже если пользователь не использует bash, его ПК уже может быть уязвим.

Для того чтобы проверить, уязвима ли система, следует выполнить в терминале команду:
env x='() { :;}; echo vulnerable' bash -c 'echo hello'

Если система пользователя защищена, bash вернет следующее сообщение:
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
hello

Если система пользователя уязвима, bash вернет следующее сообщение:
vulnerable
hello

Исправление
Разработчики Bash выпустили срочное исправление, устраняющее эту уязвимость. Всем пользователям ОС Linux (особенно дистрибутивов Ubuntu и Debian) рекомендуется как можно скорее загрузить последние обновления для данного программного продукта.

URL производителя: http://ftp.gnu.org/pub/gnu/bash/

Решение: Установите последнюю версию 4.3 с сайта производителя.

Ссылки: http://seclists.org/oss-sec/2014/q3/649

Источник: http://www.securitylab.ru/vulnerability/458762.php securitylab

 

От себя хочу добавить примечание : версия 4.3 от  26-Feb-2014 т.е. исправления данной уязвимости там еще нет.

Для того чтобы закрыть уязвимость необходимо еще наложить последний патч.

Вот небольшой скрипт для автоматизации процесса (запускать от рута)

 


mkdir /install
cd /install
wget http://ftp.gnu.org/pub/gnu/bash/bash-4.3.tar.gz
tar xzvf ./bash-4.3.tar.gz
cd ./bash-4.3
wget http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-025
patch -p0 < ./bash43-025
./configure
make && make install

Вы можете воспользоваться такси санкт-петербурга .

Не работает интернет из-за DNS

Встретился довольно-таки противный вирус, который, во-первых, при открытии любого браузера выставляет поиском по умолчанию сайт mailsearchengine.ru, во-вторых, на сайте вконтакте vk.com перестают отображаться картинки, и, в-третьих, при выборе различных пунктов сайта вконтакте, да и любых других сайтов, идет перенаправление на различные сайты с рекламой, чаще всего на сайт wowimpulse.ru. Также через небольшое время просмотра страниц на любых сайтах, вылетает баннер. Причем эти проблемы возникают во всех установленных браузерах.

Во всех встреченных случаях проблема одна и та же : стандартный DNS меняется на 5.199.140.Х

Х может быть любая цифра и отличаться от случая к случаю.

Проблема не настолько велика — в настройках сетевой карты (подключение по локальной сети) в свойствах протокола TCP/IP выставить либо «Получить DNS автоматически» и «Получить IP адрес автоматически» или же ввести данные от своего провайдера интернет.

Уязвимость предположительно кроется в Java Environment. Можно либо удалить через панель управления и поставить свежую версию. Или просто своевременно обновлять Java.