Bash уязвима, что это — угроза кибер пространству?

Ошибка Shellshock обнаруженная 25 сентября стала одной из самых значимых в области кибербезопасности в 2014 году. Ошибкой является уязвимость в Bash (Bourne Again SHell), являющейся командной оболочкой широко используемой в скриптах операционнох систем UNIX и Linux. Свободный софт не перестаёт преподносить сюрпризы, но в этом году судьба почему-то особенно щедра на сюрпризы неприятные. Bash — командная оболочка (программный интерфейс) между пользователем и операционной системой, это та самая консоль, которую так обожают все пользователи  Linux и UNIX-систем.

bash1

Именно на bash работает бесчисленное множество программ, как офлайновых, так и онлайновых. Сложные программы частенько вызывают bash, чтобы выполнить ту или иную высокоуровневую системную операцию — и каждая такая программа теперь потенциально может стать распахнутой дверью для злоумышленников. Bash пользуются серверы (в первую очередь Apache, на котором держится половина всего киберпространства). На Bash опираются тысячи проприетарных прикладных программных продуктов: Oracle, например, только что предупредила, что три десятка её программ завязаны на bash. К услугам Bash прибегают и многие свободные приложения. Хуже того, bash встроен в миллионы «умных» (но увы, зачастую не подлежащих обновлению) интернет-устройств, начиная прямо с домашних точек беспроводного доступа.

bash2

Институт NIST (известный в вопросах кибербезопасности) оценил опасность Shellshock в 10 баллов из 10 возможных: эксплуатируется Shellshock элементарно, достаточно скормить программе, использующей bash, особым образом сформированный запрос (где вредоносные команды замаскированы под переменные среды), и — готово, нападающий «получает шелл» (то есть доступ к командной оболочке на атакуемом компьютере).

Но что мешает залатать дыру? Наверное потому, что Shellshock — это не одна конкретная уязвимость в коде, которую можно исправить, заменив в исходниках bash команду X командой Y. Скорее это огромная дыра, обусловленная фундаментальным недосмотром на ранней стадии разработки. Вам даже проверить свою систему на наличие Shellshock будет не так-то просто: сегодня известны пять уязвимостей, подпадающих под определение Shellshock, и три способа проверки (см. Shellshocker.net ) — и если один даёт отрицательный результат, не факт, что два других не сработают тоже.

bash3

Это же объясняет и почему до сих пор нет универсальной заплатки: даже трёх месяцев труда (первая из уязвимостей была обнаружена ещё летом, с тех пор шла тихая работа по созданию патчей) не хватило, чтобы устранить проблему. Есть мнение, что для полного решения придётся менять структуру bash — а это совместимость со старыми версиями оболочки и потребует невероятных усилий, чтобы перепроверить на корректность каждую системную и прикладную программу, так или иначе bash использующую.

По материалам: techworld.com