Этот сценарий потенциально опасен!
Различия для вас могут различаться в зависимости от того, как это было вызвано. Если это то, что вы намеренно запускаете для отладки консоли или создания учебников, возможно, это нормально. Однако это не пахнет, как в этом. Если это было преднамеренно, и опасности, которые он вводит, были учтены, ему не нужно было бы знать многопользовательский режим, и он не мог войти в общедоступное место. Если он запускается автоматически как часть системы входа на вашем компьютере по нечетко документированным причинам, Я бы сказал, что у вас есть сильно скомпрометированная машина.
Во-первых, что скрипт устанавливает личность пользователя и создает файл журнала для них в общедоступном каталоге. Предполагая, что ваши пользователи имеют настройки по умолчанию umask
, эти файлы журнала, вероятно, могут быть прочитаны всеми пользователями в системе.
Следующее, что он делает - это запуск новой оболочки. Уловкой является то, что производится вывод новой оболочки. Команда tee
собирается разделить выход на два места. Вывод всего, что происходит в оболочке, будет записываться в консоль, но дополнительная копия всего будет добавлена к ранее установленному файлу журнала.
На запуске этого скрипта, вы будете оставаться в оболочке, которая выглядит так же, как тот, который вы начали с, но выход все теперь уже не частные к вашей защищенной оболочке. Если это нужно было вызывать из пользовательских или системных профилей, вывод всего, что когда-либо делалось в системе, может быть общедоступным.
Вы, вероятно, НЕ хотите, чтобы это произошло.
Что он должен делать? (esp last line) – anubhava
@anubhava Unsure, попросили исследовать систему, чтобы найти ошибки, и этот файл сбил меня с толку (был сохранен как странное имя) – JWyatt
Вы имеете в виду, кроме того, что если сценарий каким-то образом запускается с повышенными привилегиями , он предоставляет корневую оболочку на машине? – chepner