Tips記事
» 2002年03月06日 00時00分 UPDATE

必要が無いsuidビットは落としておこう

[木田佳克,ITmedia]

 suidビットが設定されている実行ファイルは,所有ユーザー権で実行される。このため,次のような実行ファイルがある場合には,例え一般ユーザーの実行でもroot権限で動作するのだ。

 まず最初に,次のように指定してsuidビットが設定されているファイルを検索してみよう。

# find / -type f \( -perm -04000 -o -perm -02000 \) -exec ls -ald {} \;

-rwsr-xr-x1 root root13884 Nov 27 23:38 /bin/su
-rwsr-xr-x1 root root60416 Jul 242001 /bin/mount
-rwsr-xr-x1 root root27268 Jul 242001 /bin/umount
-rwsr-xr-x1 root root24572 Jul 242001 /bin/ping
-rwsr-xr-x1 root root32252 Jul 242001 /bin/ping6
-r-sr-xr-x1 root root28676 Jul 242001 /sbin/pwdb_chkpwd
-r-sr-xr-x1 root root29698 Jul 242001 /sbin/unix_chkpwd
-rwxr-sr-x1 root root 3896 Jul 312001 /sbin/netreport

......以下略.......

 「su」や「passwd」コマンドはroot権限で実行されることが必須であるが,環境によってはほかの実行ファイルにはsuidビットが必要ない場合が多い。

 そこで,必要がないと思われる実行ファイルは,次のように指定してビットを解除(ビットを落とすと表現することが多い)させておこう。極力セキュアな環境を構築するためには,必要となる地道な作業だ。

# ls -l /bin/ping
-rwsr-xr-x1 root root24572 Jul 242001 /bin/ping*
# chmod a-s /bin/ping
# ls -l /bin/ping
-rwxr-xr-x1 root root24572 Jul 242001 /bin/ping*

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ