Comments 17
Что за год такой. Интересно, когда Apple пошевелится.
+3
А конкретно Apple причем тут? Уязвим bash и десктопным ОС практически пофиг а Linux сервера находятся в намного большей опасности.
0
Bash по умолчанию присутствует в поставке OSX, и его надо пропатчить до выхода йосемити.
0
Если у вас смотрящий в интернет сервер на OS X, то имеет смысл пропатчить bash, это дело пары минут.
На десктопе эта уязвимость погоды не делает.
На десктопе эта уязвимость погоды не делает.
+1
UFO just landed and posted this here
UFO just landed and posted this here
Анализ ботнета, который подсовывают. Написан на асме, вызывает сисколлы через int 80
blog.malwaremustdie.org/2014/09/linux-elf-bash-0day-fun-has-only-just.html
blog.malwaremustdie.org/2014/09/linux-elf-bash-0day-fun-has-only-just.html
0
«spawning the shell „/bin//sh“ upon connected»
«I think I saw this as shellcode, was used in about a lot in 2011 or 2012»
Весь анализ можно было свести к тому, что использовался шеллкод, сгенеренный через msfpayload и shell_reverse_tcp.
«I think I saw this as shellcode, was used in about a lot in 2011 or 2012»
Весь анализ можно было свести к тому, что использовался шеллкод, сгенеренный через msfpayload и shell_reverse_tcp.
+1
С анатомической точки зрения (в kill chain) это еще и отличная возможность насовать в «хорошие» веб сайты всяких iframe-редиректов на эксплойты и их связки (да и самих эксплойтов тоже можно насовать). Одно дело выпотрошить себе БД сервера, другое — отгрузить эксплойт (пробить уязвимость) почти каждому его посетителю. Риск посадить трояна на рабочий компьютер (даже внутри периметра) резко увеличился.
Братцы, убирайте Java-машины из браузеров пользователей (и у себя в первую очередь), а также все «любимые» плагины. Лучше портативная Java и/или отдельный браузер с Java, Flash и т.п. для работы с корпоративными бизнес-приложениями (которые вечно требуют какую-нибудь особо винтажную дырявую версию).
Сколько ж еще неоткрытых дырок в «проверенном годами» open source сидят…
Братцы, убирайте Java-машины из браузеров пользователей (и у себя в первую очередь), а также все «любимые» плагины. Лучше портативная Java и/или отдельный браузер с Java, Flash и т.п. для работы с корпоративными бизнес-приложениями (которые вечно требуют какую-нибудь особо винтажную дырявую версию).
Сколько ж еще неоткрытых дырок в «проверенном годами» open source сидят…
+1
Для OS X тоже есть способ, добавьте:
mac-how-to.wonderhowto.com/how-to/every-mac-is-vulnerable-shellshock-bash-exploit-heres-patch-os-x-0157606/
mac-how-to.wonderhowto.com/how-to/every-mac-is-vulnerable-shellshock-bash-exploit-heres-patch-os-x-0157606/
0
Как бы напрашивается уже вопрос — Кто таки спонсирует «такие» опенсорсы?
-3
Можно подробности про магический () {}? Что он делает, почему допускается в заголовке, почему сразу не писать код без этого пролога?
+1
Подробности можно посмотреть, например, здесь и здесь.
В моем понимании это выглядит так:
Bash при работе использует переменные окружения, которые задаются командой
Помимо переменных окружения bash поддерживает список внутренних функций, также задаваемых командой
Насколько я понимаю, эти функции должны выполняться только при непосредственном их вызове. Однако в старых версиях
Беда-печаль состоит в том, что «дополнительные» команды исполняются не при вызове внутренней функции, а при загрузке нового экземпляра интерпретатора, что и видно из примера. Почему это так, объясняется в посте, доступном по второй ссылке.
Резюмируя, ответ на ваш вопрос получается такой: магические скобочки — это определение функции; они допускаются в заголовке, так как являются стандартной конструкцией языка; просто написать вредоносный код без них нельзя, ибо в этом случае
P.S. А вот что для меня загадка — так это назначение двоеточия и точек с запятыми. Но особенно двоеточия.
env
.Помимо переменных окружения bash поддерживает список внутренних функций, также задаваемых командой
env
. Вот пример команды:$ export foo='() { echo "Inside function"; }'
$ bash -c 'foo'
Inside function
Насколько я понимаю, эти функции должны выполняться только при непосредственном их вызове. Однако в старых версиях
bash
не проверяет определение функции на корректность и интерпретирует всю строку целиком, из-за чего возникает возможность дописать после определения функции другие исполняемые команды — как-то так:$ export dummy='() { echo "hi"; }; echo "pwned"'
$ bash
pwned
Беда-печаль состоит в том, что «дополнительные» команды исполняются не при вызове внутренней функции, а при загрузке нового экземпляра интерпретатора, что и видно из примера. Почему это так, объясняется в посте, доступном по второй ссылке.
Резюмируя, ответ на ваш вопрос получается такой: магические скобочки — это определение функции; они допускаются в заголовке, так как являются стандартной конструкцией языка; просто написать вредоносный код без них нельзя, ибо в этом случае
bash
посчитает вводимый параметр не функцией, а обычной строковой переменной окружения.P.S. А вот что для меня загадка — так это назначение двоеточия и точек с запятыми. Но особенно двоеточия.
0
Исправьте ссылку для Ubuntu на www.ubuntu.com/usn/usn-2364-1/
0
Sign up to leave a comment.
Уязвимость ShellShock эксплуатируется in-the-wild