SunSHIELD 基本セキュリティモジュール

監査クラスとイベント

セキュリティに関わりを持つ動作について監査を行います。 監査可能なシステム動作は監査イベントとして /etc/security/audit_event ファイル内に定義します。 各監査可能イベントは、記号名、イベント番号、事前選択クラスのセット、および短い説明によって定義します (audit_event(4) のマニュアルページを参照)。

ほとんどのイベントは個々のユーザの動作が原因で発生します。 しかし、一部のイベントはカーネル割り込みレベルで発生したり、ユーザが識別され認証される前に発生したりするので、ユーザに帰因しないものもあります。ユーザに帰因しないイベントも監査されます。

各監査イベントは、1 つまたは複数の監査クラスに属するものとして定義します。イベントをクラスに割り当てると、管理者はより多くのイベントを、より簡単に処理できるようになります。 イベントをクラスに割り当てると、管理者はより多くのイベントを、より簡単に処理できるようになります。また、クラス自体も変更できます。これらの変更は audit_event ファイル内で行います。

管理者が特定のイベントを含むクラスを監査のために事前選択することによって、監査可能なイベントが監査トレールに記録されます。32 の監査クラスのうち、18 のクラスを定義します。この 18 のクラスには 2 つのグローバルクラス、allno が含まれます。

カーネルイベント

カーネルによって生成されるイベント (システムコール) には、1 から 2047 までのイベント番号が付けられます。カーネルイベントのイベント名は AUE_ たとえば、creat() システムコールのイベント番号は 4 でイベント名は AUE_CREAT です。

ユーザレベルのイベント

カーネルの外側でアプリケーションソフトウェアによって生成されるイベントの番号は、2048 から 65535 までの範囲にあります。 イベント名は AUE_ で始まり、その後にイベントを表す小文字のニーモニックが続きます。ファイル /etc/security/audit_event 内で各イベントの番号を調べてください。 表 2-1 に、ユーザに関連するイベントの一般的なカテゴリを示します。

表 2-1 監査イベントのカテゴリ

番号の範囲 

イベントのタイプ 

2048-65535 

ユーザレベルの監査イベント 

2048-32767 

SunOS ユーザレベルのプログラム用に予約 

32768-65536 

サードパーティアプリケーション用に使用可

監査レコード

監査レコードには、監査された 1 つのイベントの発生が記述されます。誰がその動作を行ったか、どのファイルが影響を受けたか、どのような動作が試みられたか、いつ、どこでその動作が発生したかといった情報が含まれます。

監査イベントごとに保存される情報は、監査トークンのセットとして定義されます。 1 つのイベントに対して監査レコードが作成されるたびに、イベントの内容に従って、トークンの一部またはすべてがそのレコードに書き込まれます。 付録 A には、各イベントに定義された監査トークンと各トークンの意味がすべてリストされています。

監査レコードはトレール内に収集され (audit.log(4) のマニュアルページを参照)、praudit コマンドによってユーザが読める書式に変換できます(praudit(1M) のマニュアルページを参照)。詳細については、第 3 章「監査トレールの分析」を参照してください。