| |
В командном интерпретаторе Bash выявлена опасная уязвимость (CVE-2014-6271), позволяющая организовать выполнение кода в контексте другого сеанса bash. Проблема вызвана недоработкой в организации экспорта переменных окружения и shell-функций в другие экземпляры bash, что приводит к выполнению блоков кода из специально оформленных переменных окружения, полученных от других процессов.
Во многих типовых конфигурациях уязвимость может быть эксплуатирована по сети, если bash вызывается в качестве shell-интерпретатора. Потенциально может быть атаковано любое приложение которые запускает bash или скрипты на bash с установкой переменных окружения на основе внешних данных (манипуляция с подобными suid-программами может привести к повышению привилегий в системе). В том числе могут быть атакованы CGI-скрипты (написанные на bash или в которых вызывается bash), dhclient, CUPS и конфигурации OpenSSH.
Текущие версии bash используют переменные окружения для экспорта функций, при этом если в переменной содержится "() {", то её содержимое воспринимается как функция. Из-за ошибки, после завершения тела функции, обработка продолжается и после символа "}". Если после функции указана команда, то bash выполнит и её (например, "VAR=() { ignored; }; /bin/id"). Уязвимость проявляется для любых переменных окружения, имя не имеет значения.
В случае с OpenSSH атака может быть проведена через подстановку переменной окружения SSH_ORIGINAL_COMMAND:
ssh -o 'rsaauthentication yes' 0 '() { ignored; }; /usr/bin/id'
После выполнения указанной команды в переменную окружения будет скопирована в том числе строка '() { ignored; }; /usr/bin/id', которая инициирует запуск команды /usr/bin/id на стороне удалённой системы. Аналогичные атаки могут быть проведены через переменную окружения TERM или при запуске CGI-скриптов через переменные REMOTE_USER, HTTP_CUSTOM, QUERY_STRING и т.п. (например, можно передать значение "() {" вместо имени пользователя или в теле HTTP-заголовка "Custom:").
Для устранения проблемы подготовлена серия патчей. Обновления пакетов с bash уже выпущены для Debian, Ubuntu, RHEL, CentOS. Оценить появление обновлений для других систем можно на следующих страницах: Fedora, openSUSE, SLES, Slackware, Gentoo, OpenBSD, NetBSD, FreeBSD.
Для проверки системы на наличие уязвимости можно выполнить команду:
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
В качестве обходного временного пути защиты может быть применена блокировка по маске через iptables:
iptables using -m string --hex-string '|28 29 20 7B|'
Дополнение 1: Выявлены методы (CVE-2014-7169) обхода патча, представленного вчера для устранения критической уязвимости в Bash. Для решения проблемы подготовлен новый патч. В дистрибутивах проблема пока остаётся неисправленной. Для проверки на наличие обходного пути эксплуатации уязвимости можно использовать команду (успешно срабатывает после установки вчерашнего обновления bash в Ubuntu и Debian):
env X='() { (a)=>\' sh -c "echo date"; cat echo
Дополнение 2: Проведена попытка массового сканирования серверов на предмет наличия уязвимости в Bash. Первый же эксперимент выявил около 3 тысяч хостов, подверженных уязвимости в Bash при запросе корневой страницы по IP, без заполнения заголовка Host (при полноценном сканировании с указанием корректных имён домена таких сайтов может оказаться в 50 раз больше). Организация целевых атак на конкретные CGI-скрипты, например, на /cgi-sys/defaultwebpage.cgi из CPanel позволяет как минимум в 10 раз расширить область действия атаки. Так как уязвимость очень проста в эксплуатации не исключается появление в ближайшее время червей, нацеленных на поражение конкретных проблемных CGI-скриптов.
|
|
- Главная ссылка к новости (http://www.openwall.com/lists/oss-securi...)
| Тип: Интересно / Проблемы безопасности | Ключевые слова: bash, shell, (найти похожие документы) | При перепечатке указание ссылки на opennet.ru обязательно | Реклама |
id=adv>
| |
| 2.31, qqq, 22:40, 24/09/2014 [ ^] [ ответить] [ смотреть все] [ показать ветку] –4 +/– теперь в новой упаковке и с обновленным вкусом Дырявый баш буквально преобра... весь текст скрыт [ показать] [ показать ветку]
1.2, Аноним, 21:03, 24/09/2014 [ответить] [смотреть все] –1 +/–ОПА а в щлюзах на лине наверное тоже такое прокатит на сколько я понял это ... весь текст скрыт [ показать]
1.5, Xasd, 21:09, 24/09/2014 [ответить] [смотреть все] +/–
классная уязвимость!
1.6, Аноним, 21:12, 24/09/2014 [ответить] [смотреть все] +2 +/–
1.8, онаним, 21:15, 24/09/2014 [ответить] [смотреть все] +4 +/–
Да уж. Понятия "безопасность" и "защищенность" в мире ИТ довольно условны. А сколько еще таких уязвимостей? И я почему-то не уверен, что кто-то не знал об их существовании задолго до уведомления общественности.
7.28, Аноним, 22:31, 24/09/2014 [ ^] [ ответить] [ смотреть все] +/– gt оверквотинг удален Справедливо, но немного сомнительно по той причине чт... весь текст скрыт [ показать] 7.34, metallica, 22:49, 24/09/2014 [ ^] [ ответить] [ смотреть все] +5 +/–Какой же бред то несёте Сможешь, не сможешь, определяется врождёными умственным... весь текст скрыт [ показать] 7.56, Michael Shigorin, 02:06, 25/09/2014 [ ^] [ ответить] [ смотреть все] –2 +/–
> зачем объяснять:
Дяденька, эти преставления устарели, ещё когда Вы в младших классах были -- лет десять-двенадцать тому. Когда криминальный бузинес допетрил, что и тут тоже бабки.
rtfm://"black hat" и не порите больше чушь с уверенным видом, когда ничего ВООБЩЕ не понимаете в обсуждаемом вопросе. Если очень неймётся -- облепливайте "имхо" со всех сторон, чтоб кто-нить ещё более юный не купился с разбегу.
|
9.62, Michael Shigorin, 04:00, 25/09/2014 [^] [ответить] [смотреть все] | –1 +/– |
> ну что же я твоего imho не вижу? :) в этом твоём сообщении
Потому что я _знаю_, о чём говорю, а не делаю допущения. Первые ключевые слова указаны.
|
| |
|
10.64, Xasd, 04:06, 25/09/2014 [^] [ответить] [смотреть все] | –1 +/– |
ды, блин.. чы чё такой буйный-то?
расслабся же! хоть чуть чуть :)
на меня вот щаз орёшь.. на мать свою орал (прочитал тут https://2ch.hk/s/res/1046617.html , но не знаю правда ли это )
какое именно выступление black hat мне надо глянуть чтобы понять о том что ты пытаешься мне сказать?
| | |
|
11.66, Michael Shigorin, 05:58, 25/09/2014 [^] [ответить] [смотреть все] | +/– |
> на меня вот щаз орёшь.. на мать свою орал
Вы готовы подписаться под этим утверждением и отвечать за него?
> какое именно выступление black hat мне надо глянуть
Не выступление. А хотя бы немножко о том, чем такой контингент отличается от "серых" коллег.
В #34 изложено грубовато, но верно.
|
| | 2.30, Аноним, 22:37, 24/09/2014 [ ^] [ ответить] [ смотреть все] [ показать ветку] +/–Согласен, даже если брать - супер сборку для безопасности , то всегда когда ниб... весь текст скрыт [ показать] [ показать ветку]
1.12, Нанобот, 21:27, 24/09/2014 [ответить] [смотреть все] +3 +/–
проверил на bash 2.05 (десятилетней давности) - работает
1.21, Аноним, 22:07, 24/09/2014 [ответить] [смотреть все] +/–--- Package bash i386 0 3 2-33 el5 1 set to be updated... весь текст скрыт [ показать]
1.35, metallica, 22:52, 24/09/2014 [ответить] [смотреть все] +/–
Интересно сколько уверенных в суперсекурности своего openbsd, жили
все эти годы с этой дырой на своём суперсекурном сервере на опенке?
1.39, Аноним, 23:19, 24/09/2014 [ответить] [смотреть все] +/–Не, ну конечно экранирование в шелле всегда вымораживало Но чтоб настолько ... весь текст скрыт [ показать]
1.44, Аноним, 23:35, 24/09/2014 [ответить] [смотреть все] +/–Звучит эпично, но где, собственно, уязвимость Если я могу выполнить любую ком... весь текст скрыт [ показать]
1.45, Аноним, 23:37, 24/09/2014 [ответить] [смотреть все] +/–Мде OS X 10 9 x таже беда ... весь текст скрыт [ показать]
1.46, Аноним, 23:45, 24/09/2014 [ответить] [смотреть все] +/–bash уязвим, а вот через ssh не получилось даже себя запывнить ... весь текст скрыт [ показать]
1.47, asavah, 00:02, 25/09/2014 [ответить] [смотреть все] +/–
ктулху благослови unattended-upgrades в дебиановых
полез проверять на всякий есть ли дырко на серверах, а они уже все пропатченные и хвостиком виляют )
|
3.52, Stax, 00:38, 25/09/2014 [^] [ответить] [смотреть все] | +1 +/– |
А в уже запущенном bash эту уязвимость не выйдет эксплуатировать. Только в новом сабшелле. Так что обновления достаточно, перезапускать ничего не нужно.
| | | 3.58, Etch, 02:22, 25/09/2014 [ ^] [ ответить] [ смотреть все] +1 +/–
unattended-upgrades умеет перезапускать сервер после обновлений при необходимости. И в случе heartbleed он это сделал, если был настроен на это.
1.55, emg81, 01:37, 25/09/2014 [ответить] [смотреть все] +/–
а куда писать-то тест?
в любую открытую консоль? что-то не работает.
1.67, бедный буратино, 07:05, 25/09/2014 [ответить] [смотреть все] +/–
в OpenBSD - ksh.
1.69, Адекват, 07:41, 25/09/2014 [ответить] [смотреть все] +1 +/–
Вы все идиоты, чтобы применить данную "уязвимость" на удаленной машине, на ней нужно сначала авторизоваться, попробуйте сами:
env x='() { :;}; echo *' bash -c "ssh openssh.com"
Это не уязвимость, я не знаю что это, это какая-то хе...фигня, нет разницы между командам
env x='() { :;}; echo *' bash -c "ssh openssh.com"
и
echo *
echo * - выводит список файлов в текущей директории.
То есть чтобы заюзать данную багу, нужно:
1. авторизоваться
2. прменять ее можно только к процессам с тем же id что и у вас.
|
|
4.80, Andrey Mitrofanov, 10:30, 25/09/2014 [^] [ответить] [смотреть все] [к модератору] | +/– |
>> По ssh не только пользователи работают, но и удалённо запускаются разные агенты,
>> конфигурации, мониторинга и бэкапа.
> Без авторизации ?
Без пароля по незашифрованному ключу, с _жёстко заланной (command= для ключа) командой. А тут опа -- досвидания "_жёстко заланная". Провелил -- на моём ssh входе на el6 исполнил [вместо того скрипта на bash-е] этот самый id...
| | | 3.77, Moomintroll, 10:06, 25/09/2014 [ ^] [ ответить] [ смотреть все] [ к модератору] +1 +/–
> По ssh не только пользователи работают, но и удалённо запускаются разные агенты, конфигурации, мониторинга и бэкапа.
man sshd_config:
AcceptEnv
…
The default is not to accept any environment variables.
1.74, Аноним, 09:45, 25/09/2014 [ответить] [смотреть все] [к модератору] +/–Я не понял, они нашли bashrc ... весь текст скрыт [ показать]
1.75, Аноним, 09:52, 25/09/2014 [ответить] [смотреть все] [к модератору] –1 +/–GNU во всей красе Не, только zsh, только подальше от GNU ... весь текст скрыт [ показать]
|
2.76, Я, 10:04, 25/09/2014 [^] [ответить] [смотреть все] [показать ветку] [к модератору] | +/– |
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
bash: внимание: x: ignoring function definition attempt
bash: ошибка при импортировании определения функции'x'
this is a test
[email protected]:~# uname -a
Linux ubuntu 3.13.0-36-generic #63-Ubuntu SMP Wed Sep 3 21:30:45 UTC 2014 i686 athlon i686 GNU/Linux
| | |
1.78, Сергей, 10:16, 25/09/2014 [ответить] [смотреть все] [к модератору] +/–
Никогда не использовал bash, точнее пытался, но изучить возможности стандартного sh оказалось быстрее и при применение его оказалось, что он покрывает нужное мне на 100%
1.81, Аноним, 10:37, 25/09/2014 [ответить] [смотреть все] [к модератору] +/–Я реально не понимаю эту новость Если я верно понял оригинальное описание уязви... весь текст скрыт [ показать]
1.85, Аноним, 11:12, 25/09/2014 [ответить] [смотреть все] [к модератору] +/–Может имелось виду Вместо env X a sh -c echo date cat echo Это ... весь текст скрыт [ показать]
2.88, Xaionaro, 11:50, 25/09/2014 [^] [ответить] [смотреть все] [показать ветку] [к модератору] +/–
Да даже без этого, идея всё равно обречена, ибо всякие https-ы с ssh-ами трафик шифруют ;)
Ваш комментарий
Read more |