Почему я могу перечислить процессы других пользователей без разрешения root?

22

Используя ps -auxили top, я могу перечислить других пользователей, выполняющих процессы, но я не работаю как root и не использую sudo, почему?

Магисья Темная Леди
источник

Ответы:

29

По умолчанию вы всегда можете перечислить процессы других пользователей в Linux.

Для того, чтобы изменить эту ситуацию , необходимо установить procв /etc/fstabс hidepid=2:

proc            /proc           proc    defaults,hidepid=2

Эта функциональность поддерживается начиная с ядра v3.2. Он скрывает / proc и, следовательно, psактивность от всех пользователей, кроме root.

Взято из этой статьи о hidepid:

hidepid = 2 - это означает, что hidepid = 1 плюс все / proc / PID / будут невидимы для других пользователей. Это усложняет задачу злоумышленника по сбору информации о запущенных процессах, о том, работает ли какой-либо демон с повышенными привилегиями, выполняет ли какой-либо другой пользователь какую-либо чувствительную программу, запускают ли другие пользователи вообще какую-либо программу и т. Д.

Руи Ф Рибейро
источник
1
Это решает часть «возможность перечислять других пользователей, выполняющих процесс», но не понимает, почему это не так по умолчанию с самого начала.
Магисья Темная Леди
7
Потому что это нарушает путь Unix и совместимость с некоторыми демонами.
Руи Ф Рибейро
4
Это просто старая традиция, что система разделения времени будет открытым сообществом.
Бармар
Если мистер Плохой парень запустит программы в вашей системе, игра все равно закончится. Это просто сокрытие вещей, которые жизненно необходимы для нормального функционирования системы. взломать взломщика. «Театр безопасности» у него самый славный.
vonbrand
Я управлял фермой подобных серверов, и на самом деле ваш комментарий дает мне идею для хорошего вопроса. Напишу это позже в 3 часа ночи здесь, и потребуется время, чтобы сообщить о моих выводах
Руи Ф. Рибейро