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

ドキュメントの情報

はじめに

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

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

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

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

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

4.  ウイルススキャンサービス (タスク)

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

6.  BART を使用したファイル整合性の検証 (タスク)

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

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

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

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

UNIX ファイルアクセス権

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

setuid アクセス権

setgid アクセス

スティッキービット

umask のデフォルト値

ファイルアクセス権を設定するモード

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

10.  Oracle Solaris のセキュリティー属性 (参照)

パート IV 暗号化サービス

11.  暗号化フレームワーク (概要)

12.  暗号化フレームワーク (タスク)

13.  鍵管理フレームワーク

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

14.  プラグイン可能認証モジュールの使用

15.  Secure Shell の使用

16.  Secure Shell (参照)

17.  簡易認証セキュリティー層の使用

18.  ネットワークサービスの認証 (タスク)

パート VI Kerberos サービス

19.  Kerberos サービスについて

20.  Kerberos サービスの計画

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

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

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

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

25.  Kerberos サービス (参照)

パート VII Oracle Solaris での監査

26.  監査 (概要)

27.  監査の計画

28.  監査の管理 (タスク)

29.  監査 (参照)

用語集

索引

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

プログラムは、スタック上のデータの読み取りと書き込みを行います。通常、それらはコード用に特別に指定されたメモリーの読み取り専用部分から実行されます。スタック上のバッファーをオーバーフローさせる一部の攻撃では、新しいコードをそのスタックに挿入し、プログラムにそれを実行させようとします。スタックメモリーから実行権を削除すると、これらの攻撃が成功するのを防ぐことができます。つまり、ほとんどのプログラムは、実行可能スタックを使用せずに正しく機能できます。

64 ビットプロセスには通常、非実行可能スタックがあります。デフォルトでは、32 ビット SPARC プロセスには実行可能スタックがあります。noexec_user_stack 変数を使用すると、32 ビットプロセスのスタックを実行可能にするかどうかを指定できます。

この変数が設定されている場合、プログラムがスタック上でコードを実行しようとすると SIGSEGV シグナルが送信されます。このシグナルが送信されると、通常、プログラムはコアダンプして終了します。このようなプログラムは、違反しているプログラム名、プロセス ID、およびプログラムを実行した実ユーザー ID を含む警告メッセージも生成します。例:

a.out[347] attempt to execute code on stack by uid 555 

メッセージは、syslog kern 機能が notice レベルの設定されているときに、syslog デーモンによってログに記録されます。このログへの記録は、デフォルトで syslog.conf ファイルに設定されていて、メッセージがコンソールと /var/adm/messages ファイルの両方に送信されることを意味します。詳細は、syslogd(1M) および syslog.conf(4) のマニュアルページを参照してください。

syslog メッセージは、潜在的なセキュリティーの問題を調べるときに役立ちます。また、このメッセージで、noexec_user_stack 変数を設定したために正しく動作しなくなった、実行可能スタックに依存する有効なプログラムを特定することもできます。メッセージを記録しない場合は、/etc/system ファイルで noexec_user_stack_log 変数を 0 に設定します。メッセージは記録されなくなりますが、SIGSEGV シグナルは引き続き送られるので、実行中のプログラムはコアダンプで終了します。

プログラムは、スタック実行を明示的にマークまたは防止することができます。プログラム内の mprotect() 関数は、スタックを実行可能として明示的にマークします。詳細は、mprotect(2) のマニュアルページを参照してください。-M /usr/lib/ld/map.noexstk でコンパイルされたプログラムは、システム全体の設定には関係なく、スタックを非実行可能にします。