Как последний «Bash Bug» или эксплоит затрагивают системы, требующие аутентификации?

Мне любопытно узнать, как последний Bash Bug влияет на системы, для которых требуется вход пользователя для доступа к оболочке.

Разве UNIX / Linux обычно не настроен так, что вы должны быть аутентифицированным пользователем для выполнения команд bash в системе?

Как недавний «Bash Bug» или эксплоит затрагивают системы, требующие входа в систему перед выполнением каких-либо команд, и каким образом кто-то может потенциально нарушить систему входа в систему, используя эту ошибку?

  • Исходный код патчей для Shellshock
  • Почему способность определять функции в переменной окружающей среды не является угрозой безопасности сама по себе?
  • Как обновить bash на версиях EOL Ubuntu?
  • Обновление bash против shellshock в Linux Mint 16
  • Как работает `env X = '() {(a) => \' sh -c" эхо-дата "?
  • Непоследовательная эксплуатация shellshock
  • Shellshock - не уязвим с версией bash 4.1?
  • как можно использовать shellshock через SSH?
  • 2 Solutions collect form web for “Как последний «Bash Bug» или эксплоит затрагивают системы, требующие аутентификации?”

    Это краткое изложение – это лучшее, что я нашел в Интернете о Shell Shock (он же Bash Bug), он объясняет:

    Риск сосредотачивается вокруг способности произвольно определять переменные среды в оболочке Bash, которые определяют определение функции. Проблема начинается, когда Bash продолжает обрабатывать команды оболочки после определения функции, что приводит к тому, что мы классифицируем как «инъекцию инъекции кода». Давайте снова рассмотрим пример Роберта, и мы просто возьмем эту строку:

    http-header = Cookie:() { :; }; ping -c 3 209.126.230.74 

    Определение функции: () {:; }; и команда оболочки – это оператор ping и последующие параметры. Когда это обрабатывается в контексте оболочки Bash, выполняется произвольная команда. В контексте сети это будет означать с помощью такого механизма, как сценарий CGI, а не как заголовок запроса. Стоит ознакомиться с рекомендациями seclists.org, где они будут более подробными, включая указание, что строка пути и запроса может быть потенциальными векторами для атаки.

    Конечно, одним из способов смягчения этого конкретного вектора атаки является просто отключить любую функциональность CGI, которая вызывает вызовы оболочки, и некоторые из них рекомендуют это. Во многих случаях, однако, это будет серьезное изменение и, по крайней мере, тот, который потребует некоторого обширного тестирования, чтобы гарантировать, что он не вызывает проблем на веб-сайте, что во многих случаях будет.

    Вышеприведенный HTTP-протокол является простым, но эффективным, хотя и является одним вариантом реализации общего протокола. Как только вы начнете бросать в Telnet и SSH и, по-видимому, даже в DHCP, масштаб резко возрастает, поэтому мы просто не говорим об использовании серверов веб-приложений здесь. (Очевидно, что риск присутствует только в SSH post-auth, но на такой ранней стадии публичного раскрытия мы неизбежно увидим, что другие векторы атаки еще не появились).

    Сетевые службы (например, веб-сервер), запущенные в системе, работают как аутентифицированные пользователи. Если эти службы используют bash для любых вычислений, что является довольно распространенным явлением, то внешний пользователь может запускать произвольный код в качестве веб-сервера, заменяя переменную среды командой оболочки.

    Interesting Posts

    Почему команда `reset` включает задержку?

    Загрузка собственной Arch Linux на Android-устройстве

    Загрузка Linux с файловой системой USB

    Почему команды post-up в / etc / network / interfaces выполняются несколько раз при загрузке?

    Командная строка 7z добавляет файл в плоский каталог 7z-файл

    GParted не находит раздел в зашифрованном диске

    Есть ли смысл использовать `sudo`, когда вы являетесь единственным пользователем вашей машины?

    Как изменить пароль LUKS?

    AIX ftpd – как установить umask для данного пользователя?

    Сохранение вывода команды в переменную в bash приводит к тому, что «Unescaped left brace in regex устарела»

    Любой инструмент для просмотра использования ресурсов исторического процесса? (IE: комбинация сар и pidstat)

    Сценарий Bash, чтобы проверить, изменен ли файл или нет.

    Как диагностировать висит на выключении

    Как ввести тайм-аут для сценариев оболочки?

    почему бы нагрузка равна 5, если в runq есть нулевые процессы?

    Linux и Unix - лучшая ОС в мире.