Как защитить Ubuntu от вилочной бомбы

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

Я слышал, что некоторые ОС позволяют администратору накладывать некоторые ограничения на пользовательские процессы, чтобы смягчить последствия вилочных бомб. Является ли эта защита в Ubuntu по умолчанию или кто-то с привилегией sudo должен ее установить? Если да, то как?

72
задан 27 January 2011 в 18:47

2 ответа

Мне нравится простой способ создать псевдоним, хотя псевдоним не всегда применяется, проверьте ответ выше.

alias :="echo No."

Сейчас

$ :(){ :|: & };:
bash: syntax error near unexpected token `('
0
ответ дан 27 January 2011 в 18:47

Вы можете легко ограничить количество процессов, которые могут быть запущены в Ubuntu и большинстве других дистрибутивов Linux, изменив /etc/security/limits.conf

sudoedit /etc/security/limits.conf

Затем добавьте эту строку в конец этого файла:

*    hard     nproc     nnn

где:

  • hard устанавливает ограничение на уровне ядра, чтобы его нельзя было изменить без перезагрузки.
  • nproc - максимальное количество процессов на пользователя.
  • nnn - это число, которое вы должны рассчитать для своей системы по:

    ps aux -L | cut --delimiter=" " --fields=1 | sort | uniq --count | sort --numeric-sort | tail --lines=1
    

Приведенная выше команда выведет список всех процессов для всех пользователей , включая потоки , суммируйте их и перечислите имя пользователя с наибольшим количеством процессов. Чтобы быть в безопасности, перед запуском вышеуказанной команды откройте столько приложений, сколько вам обычно нужно, а затем удвойте это число в целях безопасности.

После того, как этот лимит будет установлен, вам нужно будет перезагрузиться, но это повлияет на каждого не-root пользователя в системе. Так что, если любой пользователь без полномочий root выполнит разветвленную бомбу, у него будет такое жесткое ограничение.

Ограничения групп и подстановочных знаков не применяются к пользователю root по умолчанию . Используйте буквальное имя пользователя root в правилах, если вы хотите применить правило к суперпользователю.

Кроме того, если вы не хотите перезапускать в ближайшее время, вы можете использовать sudo ulimit -u 800, который наложит ограничение только на запущенный сеанс , но может быть легко обойден вилочной бомбой с привилегиями sudo !

После перезапуска будет использовано все, что находится в /etc/security/limits.conf.

1130 Некоторая дополнительная информация о вилочных бомбах: они не являются вредоносными программами или чем-то ужасным. Как правило, они состоят из чего-то такого базового, как скрипт, который вызывает себя дважды, тем самым экспоненциально увеличивая свое присутствие на компьютере. Несмотря на то, что у них небольшой объем памяти, учитывая их быстрый темп, они быстро заполняют всю доступную оперативную память, и машина зависает или перезагружается. Единственная опасность - потеря несохраненной информации. Я бы классифицировал вилочную бомбу как шутку, а не как вредоносное ПО.

Важное напоминание:

Вы редко когда-либо выполняете что-либо в командной строке, если вы не уверены на 98% в его действиях. Если вы не можете прочитать команды, которые выполняете - не делайте этого. Это применяет двойные к нечитаемым кускам шестнадцатеричных / base64 символов, которые могут использоваться, чтобы скрыть все виды злобности. Если вы не уверены в команде, вы всегда можете найти ее действия в Справочных страницах Ubuntu и соблюдать особую осторожность при использовании sudo, поскольку она будет выполняться от имени пользователя root.

0
ответ дан 27 January 2011 в 18:47

Другие вопросы по тегам:

Похожие вопросы: