Назад | Перейти на главную страницу

ps aux без полномочий root не отображает все процессы

Я использую сервер ubuntu 10.04 ...

когда я запускаю ps aux как root, я вижу все процессы, когда я запускаю ps aux как не root, я вижу ТОЛЬКО процессы текущего пользователя

после небольшого исследования я нашел следующее решение:

root@m85:~# ls -al /proc/
total 4
dr-xr-xr-x 122 root      root         0 2010-12-23 14:08 .
drwxr-xr-x  22 root      root      4096 2010-12-23 13:30 ..
dr-x------   6 root      root         0 2010-12-23 14:08 1
dr-x------   6 root      root         0 2010-12-23 14:08 10
dr-x------   6 root      root         0 2010-12-23 14:08 1212
dr-x------   6 root      root         0 2010-12-23 14:08 1227
dr-x------   6 root      root         0 2010-12-23 14:08 1242
dr-x------   6 zabbix    zabbix       0 2010-12-24 23:52 12747
[...]

Моя первая идея заключалась в том, что он смонтирован странным образом: / etc / fstab в порядке, и, похоже, он не смонтирован странным образом ...

моя вторая идея заключалась в том, что там может быть руткит: но это не руткит ... rkhunter сообщает мне, что руткит не установлен ...

Я не знаю, так ли это с тех пор, как машина была установлена ​​или пришла с обновлением. я только что установил zabbix-agent на машину и понял, что он работает некорректно ...

Что могло вызвать такие странные разрешения (500) и как мне вернуть их на нормальный уровень (555)?

Сумасшедший, я никогда не видел ничего подобного ...

заранее спасибо за любую помощь и счастливого Рождества :)


Я уже проверял sysctl, но безрезультатно.

sysctl -a | grep ps
sysctl -a | grep proc

спасибо за совет по grsecurity: я немного погуглил за это. dpkg показывает, что я использую стандартное ядро ​​и, похоже, не установлен grsecurity. также не существует / dev / grsec.

Я также остановил apparmor, но проблема осталась прежней.

dpkg показывает, что установлен libselinux1, но не пакет selinux ...

есть ли другой способ проверить, запущены ли grsecrity, selinux?

ps показывает только информацию о процессах, о которых он может получить информацию. поскольку /proc/12747 не читается, он не покажет его, если вы не root.

НОТА: Похоже, это связано с Ubuntu и (странным) способом, которым они модифицируют свои системы. Это не первый раз, когда они случайным образом сбрасывают разрешения где-то в надежде, что это «обезопасит» их системы, но в конечном итоге приводит к тому, что программы больше не работают «как ожидалось» - ср. https://bugs.launchpad.net/ubuntu/+source/libpam-mount/+bug/117736 . Любое нормальное ядро ​​имеет каталоги / proc / xyz (хотя не обязательно все файлы в нем), доступные для чтения всем!

Я бы не стал слишком беспокоиться о рутките. Это, скорее всего, даже скроет некоторые процессы для root. Но я должен добавить, что бег rkhunter на самой коробке не очень надежен - мог быть модифицирован руткитом.

Я никогда раньше не видел этой конкретной проблемы. Некоторые возможности могут быть:

Я не знаю, так ли это с тех пор, как машина была установлена ​​или пришла с обновлением. я только что установил zabbix-agent на машину и понял, что он работает некорректно ...

Я считаю grsecurity может заблокировать пользователю просмотр всех процессов.

я уже проверял sysctl, безрезультатно

sysctl -a | grep ps sysctl -a | grep proc

спасибо за совет по grsecurity: я немного погуглил за это. dpkg показывает, что я использую стандартное ядро ​​и, похоже, не установлен grsecurity. также не существует / dev / grsec.

Я также остановил apparmor, но проблема осталась прежней.

dpkg показывает, что установлен libselinux1, но не пакет selinux ...

есть ли другой способ проверить, запущены ли grsecrity, selinux?