Обнаружена критическая уязвимость Terminal2Shell, присутствующая во всех операционных системах, начиная с 1971 года

Раскрыта информацию о критической уязвимости Terminal2Shell, которая присутствующая во всех операционных системах начиная с 1971 года. Баг позволяет любому, кто открывает терминал, получить полноценную интерактивную командную оболочку (shell). Мгновенно. Без какой-либо дополнительной аутентификации, помимо той, что уже была пройдена. Исправление от производителей ОС отсутствуют. До их выпусков рекомендуется задействовать компенсирующие меры.

Terminal2Shell — это уязвимость на уровне проектирования, затрагивающая эмуляторы терминала. При запуске терминала автоматически создаётся процесс командной оболочки (shell), который напрямую подключается к клавиатуре пользователя. После этого злоумышленник может выполнять произвольные команды, обладая всеми правами текущего пользователя системы.

Исследователи подтвердили, что командная оболочка выполняет любые введённые в неё команды — в том числе те, которые удаляют файлы, устанавливают программное обеспечение или изменяют конфигурацию системы. В ряде случаев было зафиксировано выполнение команд, которые вводил сам пользователь.

Этапы эксплуатации: откройте терминал. Этапа 2 не существует. Для эксплуатации необходим локальный доступ, исправная клавиатура и возможность найти приложение «Терминал».

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

Подверженные проблеме ОС:

Признаки компрометации:

  • если вы видите любой из следующих символов, за которым следует мигающий курсор, значит, ваша система скомпрометирована: $%>❯#

  • Символ # означает, что злоумышленник получил права суперпользователя (root). Отключитесь от сети, а затем — и от общества.

Меры по снижению рисков:

  • исправление от производителя отсутствует. До его выхода рекомендуются следующие компенсирующие меры: Не открывайте терминалы. Это наиболее эффективная мера.

  • Стоит отметить, что многие разработчики открывают терминалы «для работы» — специалистам по безопасности следует расценивать это как тревожный сигнал.

  • Закрывайте терминалы сразу после их открытия.

  • Частичная мера: при повторном открытии терминала уязвимость снова становится актуальной. Печатайте медленнее Это снижает количество вводимых команд в минуту и, следовательно, интенсивность атаки.

  • Отключите клавиатуру. Эффективно, однако использование экранной клавиатуры позволяет обойти это ограничение.

  • Установите значение SHELL=/bin/false Полностью устраняет уязвимость. А заодно — и возможность пользоваться компьютером.

Хронология раскрытия информации по этой проблеме:

  • 1971 год — В состав Unix v1 входит уязвимый код: командная оболочка Thompson shell.

  • 1979 год — Выпущена командная оболочка Bourne shell. Уязвимость сохранена в целях обеспечения полной обратной совместимости.

  • 1989 год — Выпущена оболочка Bash. Само название подтверждает, что атака является намеренной.

  • 2009 год — Растет популярность оболочки zsh. Теперь она еще и выглядит привлекательно — по мнению исследователей, это заманивает больше жертв.

  • 2026 год — Исследователи одновременно уведомляют всех разработчиков программного обеспечения.

  • 2026 год — Разработчики отвечают: «Так ведь это и есть терминал».

  • 2026 год — Исследователи регистрируют домен, создают логотип и связываются с прессой. Процесс скоординированного раскрытия информации считается завершённым.

Часто задаваемые вопросы:

  • затронуло ли это меня? Если у вас есть компьютер — да. Если у вас есть телефон — тоже затронуло, просто вы ещё не обнаружили терминал.

  • Используется ли это в реальных условиях? Да. Телеметрия показывает, что миллионы разработчиков ежедневно используют Terminal2Shell — зачастую десятки раз в час. Некоторые даже настроили его так, чтобы он открывался автоматически при входе в систему.

  • Может ли злоумышленник получить права суперпользователя (root)? Только в том случае, если он знает пароль пользователя. К сожалению, в наиболее распространённом сценарии атаки злоумышленником выступает сам пользователь.

  • Почему у неё есть логотип? У каждой серьёзной уязвимости должны быть логотип, доменное имя и название, состоящее из числа, за которым следует существительное. Здесь есть всё три компонента — значит, уязвимость наверняка серьёзная.

  • Связано ли это с другими уязвимостями семейства 2Shell? Напрямую. Мы проанализировали общедоступные концепты эксплойтов (PoC) для всех уязвимостей 2Shell, которые удалось найти, и почти все они начинаются одинаково: исследователь открывает терминал и вводит команду. Каждый из этих эксплойтов опирается на Terminal2Shell. Это «уязвимость в основе уязвимостей» — единственная, которая предоставляет готовый командный интерпретатор (shell) ещё до начала самой атаки. Устранение Terminal2Shell позволило бы в одночасье нейтрализовать большую часть семейства *2Shell. Но это также лишило бы исследователей возможности написать очередную статью в блог — именно поэтому ни один вендор не хочет браться за исправление этой проблемы.

  • Стоит ли паниковать? Да. Паника — это рекомендуемая реакция на любую уязвимость веб-сайта. Пожалуйста, поделитесь этой страницей со своим директором по информационной безопасности (CISO), своей мамой и как минимум тремя новостными изданиями.

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев