URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 3400
[ Назад ]

Исходное сообщение
"Ограничение вывода ps в Linux"

Отправлено Одминчег , 31-Июл-07 21:40 
Привет, подскажите как в Linux сделать ограничение - по команде ps выводить только процессы пользователя вызвавшего ее.

Содержание

Сообщения в этом обсуждении
"Ограничение вывода ps в Linux"
Отправлено Vaso Petrovich , 31-Июл-07 22:50 
>Привет, подскажите как в Linux сделать ограничение - по команде ps выводить
>только процессы пользователя вызвавшего ее.

man ps
в разных версия и разных дистра по разному...


"Ограничение вывода ps в Linux"
Отправлено vic , 01-Авг-07 13:19 
>>Привет, подскажите как в Linux сделать ограничение - по команде ps выводить
>>только процессы пользователя вызвавшего ее.
>
>man ps
>в разных версия и разных дистра по разному...

всю жизнь ps выводил процессы запущенные этим юзером на этом терминале.
показать процессы этого пользователя (не только на этом терминале): ps u
т.е. то что вы хотите - не ограничение, а расширение :)


"Ограничение вывода ps в Linux"
Отправлено Одминчег , 01-Авг-07 13:35 
>>>Привет, подскажите как в Linux сделать ограничение - по команде ps выводить
>>>только процессы пользователя вызвавшего ее.
>>
>>man ps
>>в разных версия и разных дистра по разному...
>
>всю жизнь ps выводил процессы запущенные этим юзером на этом терминале.
>показать процессы этого пользователя (не только на этом терминале): ps u
>т.е. то что вы хотите - не ограничение, а расширение :)

Мне надо сделать с помощью sysctl ограничение. Чтобы юзер какие бы опции ps не использовал - видел только свои процессы!


"Ограничение вывода ps в Linux"
Отправлено vic , 01-Авг-07 14:59 
>[оверквотинг удален]
>>>
>>>man ps
>>>в разных версия и разных дистра по разному...
>>
>>всю жизнь ps выводил процессы запущенные этим юзером на этом терминале.
>>показать процессы этого пользователя (не только на этом терминале): ps u
>>т.е. то что вы хотите - не ограничение, а расширение :)
>
>Мне надо сделать с помощью sysctl ограничение. Чтобы юзер какие бы опции
>ps не использовал - видел только свои процессы!

Э-э, а вопрос такой, а нафига? Что он там такое криминальное увидит???

Юзер ведь и в /proc влезет если захочет что-нить увидить. Или софтинко какое-нить запустит, которое системные функции вызовет возвращающие список процессов...



"Ограничение вывода ps в Linux"
Отправлено Одминчег , 01-Авг-07 17:09 
>[оверквотинг удален]
>>>т.е. то что вы хотите - не ограничение, а расширение :)
>>
>>Мне надо сделать с помощью sysctl ограничение. Чтобы юзер какие бы опции
>>ps не использовал - видел только свои процессы!
>
>Э-э, а вопрос такой, а нафига? Что он там такое криминальное увидит???
>
>
>Юзер ведь и в /proc влезет если захочет что-нить увидить. Или софтинко
>какое-нить запустит, которое системные функции вызовет возвращающие список процессов...

Знаю что во фрибсд - sysctl kern.ps_showallprocs=0

поскольку опция ядра то не думаю что он там куда-то залезит..


"Ограничение вывода ps в Linux"
Отправлено vic , 01-Авг-07 17:53 
>[оверквотинг удален]
>>
>>Э-э, а вопрос такой, а нафига? Что он там такое криминальное увидит???
>>
>>
>>Юзер ведь и в /proc влезет если захочет что-нить увидить. Или софтинко
>>какое-нить запустит, которое системные функции вызовет возвращающие список процессов...
>
>Знаю что во фрибсд - sysctl kern.ps_showallprocs=0
>
>поскольку опция ядра то не думаю что он там куда-то залезит..

По первому вопросу все (ну как минимум я) подумали про ограничение для команды ps, а не про системные ограничения.
С ходу не нашел подобных опций для Linux, либо их нет, либо надо еще поискать :(

По запуску процесса в /proc создается каталог с именем == pid процесса, где содержится некоторая доступная инфа. Т.е. в случае ввода такого ограничения, доступ в эти каталоги должен быть блокирован или ко всей /proc, если блокировать не всю /proc, а тольк о подкаталоги процессов, то все равно остается часть инфы (каталог принадлежит запущенному процессу, например для postfix владелец каталога будет postfix (ls -l /proc), а это уже утечка информации.

Если не секрет, то какого рода информация из вывода ps должна быть скрыта?


"Ограничение вывода ps в Linux"
Отправлено Одминчег , 01-Авг-07 19:07 
>[оверквотинг удален]
>По запуску процесса в /proc создается каталог с именем == pid процесса,
>где содержится некоторая доступная инфа. Т.е. в случае ввода такого ограничения,
>доступ в эти каталоги должен быть блокирован или ко всей /proc,
>если блокировать не всю /proc, а тольк о подкаталоги процессов, то
>все равно остается часть инфы (каталог принадлежит запущенному процессу, например для
>postfix владелец каталога будет postfix (ls -l /proc), а это уже
>утечка информации.
>
>Если не секрет, то какого рода информация из вывода ps должна быть
>скрыта?

Ну там прям секретных процессов нету в принципе. Но это хостинг сервер и shell имеет некое кол-во незнакомых людей. Вот я и хотел сделать ограничение чтобы поменьше инфы получали..во FreeBSD ограничить - не проблема. Но вот под линукс что-то никто не подскажет. Есть идея сделать alias для ps aux чтобы пускалось ps -u :)


"Ограничение вывода ps в Linux"
Отправлено Ray Dudu , 02-Авг-07 10:50 
>Ну там прям секретных процессов нету в принципе. Но это хостинг сервер
>и shell имеет некое кол-во незнакомых людей. Вот я и хотел
>сделать ограничение чтобы поменьше инфы получали..во FreeBSD ограничить - не проблема.
>Но вот под линукс что-то никто не подскажет. Есть идея сделать
>alias для ps aux чтобы пускалось ps -u :)

под линух есть офигенные инструменты для ограничения вообще всего: grsec - он вроде как попроще выглядит и конечно SELinux - замечательнейший пакет, если его всетаки нормально зарулить.
Но самый главный вопрос: существует множество способов обойти разного типа ограничения. если например убрать вывод процессов в ps, то останется /proc, если и его убрать, найдется еще з 10ок способов атаковать систему и получить нужную информацию. Если у вас реально встал вопрос защиты то нужно защищать ВСЮ систему, если вы хотите защиту от дяди Васи, ну тогда можно убрать проц и ps но это не поможет защитить систему целяком.


"Ограничение вывода ps в Linux"
Отправлено vic , 02-Авг-07 12:27 
>[оверквотинг удален]
>>утечка информации.
>>
>>Если не секрет, то какого рода информация из вывода ps должна быть
>>скрыта?
>
>Ну там прям секретных процессов нету в принципе. Но это хостинг сервер
>и shell имеет некое кол-во незнакомых людей. Вот я и хотел
>сделать ограничение чтобы поменьше инфы получали..во FreeBSD ограничить - не проблема.
>Но вот под линукс что-то никто не подскажет. Есть идея сделать
>alias для ps aux чтобы пускалось ps -u :)

ага, на top тоже алиас?


"Ограничение вывода ps в Linux"
Отправлено Одминчег , 02-Авг-07 13:33 

>ага, на top тоже алиас?

На многие программы я ставлю просто права нужные.

# ls -la /usr/bin/top
-r-xr-x---  1 root root 52348 Jan  1  2006 /usr/bin/top

$ top
-bash: /usr/bin/top: Permission denied


С ps я хотел поступить более цивилизованно, думал раз во FreeBSD есть опция sysctl то тут тоже есть. Ну похоже нету, просмотрел весь листинг.. За grsec спасибо, погляжу..


"Ограничение вывода ps в Linux"
Отправлено azimin , 09-Авг-07 16:50 
Вобщем стандартного решения в Linux нет.
Т.е. нельзя скрыть от пользователя например процессы c UID=0, как в FreeBSD kern.ps_showallprocs.
Но есть патчи которые делают это.
Например http://www.grsecurity.net/. Накладываешь патч и ставишь все что нужно в ядре и пересобираешь его.