私はUbuntu 10.04サーバーを使用しています...
ルートとして ps aux を実行するとすべてのプロセスが表示されますが、非ルートとして ps aux を実行すると現在のユーザーのプロセスだけが表示されます。
少し調べた後、次の解決策を見つけました。
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 は正常であり、奇妙な方法でマウントされているようには見えません...
2 つ目の考えは、ルートキットがあるかもしれないということでした。しかし、それはルートキットではありません... 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 が実行中かどうかを確認する別の方法はありますか?
答え1
マシンにインストールされてからなのか、アップデートが付属していたからなのかはわかりません。マシンに zabbix-agent をインストールしたところ、正常に動作していないことに気付きました...
grsecurity
ユーザーがすべてのプロセスを表示できないようにブロックできると思います。
答え2
答え3
ps
情報を取得できるプロセスに関する情報のみを表示します。/proc/12747
読み取り可能ではないため、root でない場合は表示されません。
注記: これは Ubuntu と、Ubuntu がシステムを変更する (奇妙な) 方法によるものと思われます。Ubuntu がシステムを「安全」にすると信じて権限をランダムに削除するのは今回が初めてではありませんが、最終的にはプログラムが「期待どおりに」動作しなくなることになります — cf.https://bugs.launchpad.net/ubuntu/+source/libpam-mount/+bug/117736通常のカーネルでは、/proc/xyz ディレクトリ (必ずしもその中のすべてのファイルではありません) が誰でも読み取り可能です。
答え4
sysctlはすでにチェックしましたが、結果はありませんでした
sysctl -a | grep ps sysctl -a | grep proc
grsecurity のヒントをありがとうございます。少しグーグルで検索してみました。dpkg によると、標準カーネルを使用しているようですが、grsecurity はインストールされていないようです。また、/dev/grsec も存在しません。
apparmor も停止しましたが、それでも同じ問題が残ります。
dpkg は、libselinux1 はインストールされているが、selinux パッケージはインストールされていないことを示しています...
grsecrity、selinux が実行中かどうかを確認する別の方法はありますか?