Go to main content
Oracle® Solaris 11.3 でのファイルのセキュリティー保護とファイル整合性の検証

印刷ビューの終了

更新: 2016 年 1 月
 
 

特殊なファイルアクセス権が設定されたファイルを見つける方法

この手順では、プログラムでの setuid および setgid アクセス権が承認なしで使用される可能性を検出します。疑わしい実行可能ファイルによって、所有権が root または bin ではなく、通常のユーザーに与えられることがあります。

始める前に

root 役割になる必要があります。詳細は、Oracle Solaris 11.3 でのユーザーとプロセスのセキュリティー保護 の割り当てられている管理権利の使用を参照してください。

  1. find コマンドを使用して setuid アクセス権が設定されているファイルを検索します。
    # find directory -user root -perm -4000 -exec ls -ldb {} \; >/tmp/filename
    find directory

    指定したディレクトリから始めて、マウントされているすべてのパスを検査します。ディレクトリとしてルート (/)、usropt などを指定できます。

    –user root

    root が所有するファイルを表示します。

    –perm –4000

    アクセス権が 4000 に設定されているファイルだけを表示します。

    –exec ls –ldb

    find コマンドの出力を ls -ldb 形式で表示します。ls(1) のマニュアルページを参照してください。

    /tmp/filename

    find コマンドの結果が書き込まれるファイルです。

    詳細は、find(1) のマニュアルページを参照してください。

  2. 結果を /tmp/filename に出力します。
    # more /tmp/filename

    背景知識については、setuid アクセス権を参照してください。

使用例 6  setuid アクセス権が設定されているファイルを検索する

次の例の出力は、rar というグループのユーザーが /usr/bin/rlogin のコピーを作成し、そのアクセス権を root への setuid に設定したことを示しています。この結果、/usr/rar/bin/rlogin プログラムは root アクセス権で実行されます。

/usr/rar ディレクトリを調べ、/usr/rar/bin/rlogin コマンドを削除したあと、管理者は find コマンドの出力をアーカイブします。

# find /usr -user root -perm -4000 -exec ls -ldb {} \; > /var/tmp/ckprm
# cat /var/tmp/ckprm
-rwsr-xr-x  1 root   sys   32432  Jul 14 14:14  /usr/bin/atq
-rwsr-xr-x  1 root   sys   32664  Jul 14 14:14  /usr/bin/atrm
-rwsr-xr-x  1 root   bin   82836  Jul 14 14:14  /usr/bin/cdrw
-r-sr-xr-x  1 root   sys   41448  Jul 14 14:14  /usr/bin/chkey
-r-sr-xr-x  1 root   bin    7968  Jul 14 14:14  /usr/bin/mailq
-r-sr-sr-x  1 root   sys   45364  Jul 14 14:14  /usr/bin/passwd
-rwsr-xr-x  1 root   bin   37740  Jul 14 14:14  /usr/bin/pfedit
-r-sr-xr-x  1 root   bin   51472  Jul 14 14:14  /usr/bin/rcp
---s--x---  1 root   rar   41592  Jul 24 16:14  /usr/rar/bin/rlogin
-r-s--x--x  1 root   bin  213092  Jul 14 14:14  /usr/bin/sudo
-r-sr-xr-x  4 root   bin   24056  Jul 14 14:14  /usr/bin/uptime
-r-sr-xr-x  1 root   bin   79540  Jul 14 14:14  /usr/bin/xlock
# mv /var/tmp/ckprm /var/share/sysreports/ckprm