JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Solaris のシステム管理: セキュリティーサービス     Oracle Solaris 10 1/13 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

パート I セキュリティーの概要

1.  セキュリティーサービス (概要)

パート II システム、ファイル、およびデバイスのセキュリティー

2.  マシンセキュリティーの管理 (概要)

3.  システムアクセスの制御 (タスク)

4.  デバイスアクセスの制御 (タスク)

5.  基本監査報告機能の使用方法 (タスク)

6.  ファイルアクセスの制御 (タスク)

UNIX アクセス権によるファイル保護

ファイルの監視と保護を行うコマンド

ファイルとディレクトリの所有権

UNIX ファイルアクセス権

特殊なファイルアクセス権 (setuidsetgid、スティッキービット)

setuid アクセス権

setgid アクセス権

スティッキービット

umask のデフォルト値

ファイルアクセス権のモード

アクセス制御リストによる UFS ファイルの保護

UFS ファイルの ACL エントリ

UFS ディレクトリの ACL エントリ

UFS ACL を制御するコマンド

実行可能ファイルを原因とするセキュリティーへの悪影響を防止する

ファイルの保護 (タスクマップ)

UNIX アクセス権によるファイルの保護 (タスクマップ)

ファイル情報を表示する方法

ローカルファイルの所有者を変更する方法

ファイルのグループ所有権を変更する方法

ファイルアクセス権を記号モードで変更する方法

ファイルアクセス権を絶対モードで変更する方法

特殊なファイルアクセス権を絶対モードで変更する方法

ACL による UFS ファイルの保護 (タスクマップ)

ファイルに ACL が設定されているかどうかを検査する方法

ファイルに ACL エントリを追加する方法

ACL をコピーする方法

ファイルの ACL エントリを変更する方法

ファイルから ACL エントリを削除する方法

ファイルの ACL エントリを表示する方法

セキュリティーリスクのあるプログラムからの保護 (タスクマップ)

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

プログラムが実行可能スタックを使用できないようにする方法

7.  自動セキュリティー拡張ツールの使用 (タスク)

パート III 役割、権利プロファイル、特権

8.  役割と特権の使用 (概要)

9.  役割に基づくアクセス制御の使用 (タスク)

10.  役割によるアクセス制御 (参照)

11.  特権 (タスク)

12.  特権 (参照)

パート IV 暗号化サービス

13.  Oracle Solaris の暗号化フレームワーク (概要)

14.  Oracle Solaris の暗号化フレームワーク (タスク)

15.  Oracle Solaris 鍵管理フレームワーク

パート V 認証サービスと安全な通信

16.  認証サービスの使用 (タスク)

17.  PAM の使用

18.  SASL の使用

19.  Secure Shell の使用 (タスク)

20.  Secure Shell (参照)

パート VI Kerberos サービス

21.  Kerberos サービスについて

22.  Kerberos サービスの計画

23.  Kerberos サービスの構成 (タスク)

24.  Kerberos エラーメッセージとトラブルシューティング

25.  Kerberos 主体とポリシーの管理 (タスク)

26.  Kerberos アプリケーションの使用 (タスク)

27.  Kerberos サービス (参照)

パート VII Oracle Solaris での監査

28.  Oracle Solaris 監査 (概要)

29.  Oracle Solaris 監査の計画

30.  Oracle Solaris 監査の管理 (タスク)

31.  Oracle Solaris 監査 (参照)

用語集

索引

セキュリティーリスクのあるプログラムからの保護 (タスクマップ)

次のタスクマップは、リスクのある実行ファイルをシステム内に見つけるタスクや、プログラムが実行可能スタックを不正利用しないように防ぐタスクなどの操作を説明した箇所を示しています。

タスク
説明
参照先
特殊なアクセス権を持つファイルを見つけます
setuid ビットがセットされているが、root ユーザーによって所有されていないというファイルを見つけます。
実行可能スタックがオーバーフローしないように防ぎます
プログラムが実行可能スタックを不正に利用しないように防ぎます。
実行可能スタックのメッセージがロギングを防ぎます
実行可能スタックのメッセージのログ記録を無効にします。

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

管理者はシステムを監視し、プログラム上で承認を得ることなく setuid アクセス権および setgid アクセス権が使用されていないかをチェックする必要があります。setuid アクセス権と setgid アクセス権を使用すると、通常のユーザーでもスーパーユーザー権限を取得できてしまいます。疑わしい実行可能ファイルによって、所有権が root または bin ではなく、通常のユーザーに与えられることがあります。

  1. Primary Administrator 役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Oracle Solaris の管理: 基本管理』の第 2 章「Solaris 管理コンソールの操作 (タスク)」を参照してください。

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

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

    -user root

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

    -perm -4000

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

    -exec ls -ldb

    find コマンドの出力を ls -ldb 形式で表示します。

    /tmp/filename

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

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

    setuid アクセス権の詳細については、setuid アクセス権」を参照してください。

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

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

この出力は、/var/tmp/chkprm ディレクトリを /export/sysreports/ckprm ディレクトリに移動することによって、今後の参照用に保存されています。

# find / -user root -perm -4000 -exec ls -ldb {} \; > /var/tmp/ckprm
# cat /var/tmp/ckprm
-r-sr-xr-x 1 root bin 38836 Aug 10 16:16 /usr/bin/at
-r-sr-xr-x 1 root bin 19812 Aug 10 16:16 /usr/bin/crontab
---s--x--x 1 root sys 46040 Aug 10 15:18 /usr/bin/ct
-r-sr-xr-x 1 root sys 12092 Aug 11 01:29 /usr/lib/mv_dir
-r-sr-sr-x 1 root bin 33208 Aug 10 15:55 /usr/lib/lpadmin
-r-sr-sr-x 1 root bin 38696 Aug 10 15:55 /usr/lib/lpsched
---s--x--- 1 root rar 45376 Aug 18 15:11 /usr/rar/bin/sh
-r-sr-xr-x 1 root bin 12524 Aug 11 01:27 /usr/bin/df
-rwsr-xr-x 1 root sys 21780 Aug 11 01:27 /usr/bin/newgrp
-r-sr-sr-x 1 root sys 23000 Aug 11 01:27 /usr/bin/passwd
-r-sr-xr-x 1 root sys 23824 Aug 11 01:27 /usr/bin/su
# mv /var/tmp/ckprm /export/sysreports/ckprm

プログラムが実行可能スタックを使用できないようにする方法

実行可能スタックのセキュリティーリスクについては、「実行可能ファイルを原因とするセキュリティーへの悪影響を防止する」を参照してください。

  1. Primary Administrator 役割を引き受けるか、スーパーユーザーになります。

    Primary Administrator 役割には、Primary Administrator プロファイルが含まれます。役割を作成してユーザーに役割を割り当てるには、『Oracle Solaris の管理: 基本管理』の第 2 章「Solaris 管理コンソールの操作 (タスク)」を参照してください。

  2. /etc/system ファイルを編集し、次の行を追加します。
    set noexec_user_stack=1
  3. システムをリブートします。
    # init 6

例 6-13 実行可能スタックメッセージのログ記録を無効にする

この例では、実行可能スタックメッセージのログ記録が無効にされ、続いてシステムのリブートが行われます。

# cat /etc/system
set noexec_user_stack=1
set noexec_user_stack_log=0
# init 6