[spoiler]Суть уязвимости заключается в следующем. После обработки определения функции оболочка не завершает выполнение операции, а продолжает выполнять дальнейшие команды. Что, в свою очередь, позволяет управлять удалённой системой, вплоть до получения на ней прав суперпользователя. В теории выглядит крайней неприятно.
Но на практике эта уязвимость существует более двадцати лет. А информации о использующих эту брешь взломах нет. Иными словами, никаких негативных последствий не было. О причинах гадать не буду — важен факт.
Кстати, использовать эту уязвимость действительно непросто. Для этого нужна система, которая позволяет «снаружи» получить доступ к bash. То есть, shell должен быть как-то задействован в серверной конструкции, которой как-то передаётся изменяемый снаружи shell environment. Теоретически возможно, но практически не очень сильно распространено.
Иными словами, BYOD-пользователям Linux-десктопа нет причин срочно переходить на zsh. Тем более, что в соответствии с традициями СПО работы по устранению уязвимости идут полным ходом и первый патч уже дошёл до репозиториев некоторых дистрибутивов.
Для проверки своей системы рекомендуется запустить команду env x='() { :;}; echo vulnerable' bash -c "echo this is a test" и посмотреть на отклик.
В системе РОСА уязвимость ещё есть:
А вот в Arch Linux она уже исправлена:
Правда, способ обхода первого патча найден. Поэтому, следует ждать второго исправления, которое уже подготовлено.