Защита от вилочной бомбы не работает: количество процессов не ограничено

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

user@thebe:~$ cat /etc/security/limits.conf | grep user
user        hard    nproc   512
user@thebe:~$ ulimit -u
1024
user@thebe:~$ :(){ :|:& };:
[1] 2559
user@thebe:~$ ht-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
-bash: fork: Cannot allocate memory
...
Connection to thebe closed by remote host.

ошибка или почему она игнорирует предел в limits.conf и почему не применяет предел, который ulimit -n утверждает, что это?

PS: Я действительно не думаю, что предел памяти поражен раньше предел процесса.

EDIT:

Мне удалось воспроизвести это на живом компакт-диске. Поэтому я предполагаю, что это ошибка. Это в конечном итоге убивает все процессы, в том числе критические вещи, такие как X11, SSHD и т. Д.

Любой пользователь может сбой системы.

1
задан 7 February 2017 в 23:53

0 ответов

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

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