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

ドキュメントの情報

はじめに

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

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

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

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

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

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

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

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

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

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

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

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

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

パート IV 暗号化サービス

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

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

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

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

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

15.  PAM の使用

16.  SASL の使用

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

18.  Secure Shell (参照)

パート VI Kerberos サービス

19.  Kerberos サービスについて

20.  Kerberos サービスの計画

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

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

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

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

25.  Kerberos サービス (参照)

パート VII Oracle Solaris での監査

26.  監査 (概要)

27.  監査の計画

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

29.  監査 (参照)

監査サービス

監査サービスのマニュアルページ

監査を管理するための権利プロファイル

監査と Oracle Solaris ゾーン

監査クラス

監査クラスの構文

監査プラグイン

監査ポリシー

非同期イベントおよび同期イベントの監査ポリシー

プロセスの監査特性

監査トレール

バイナリ監査ファイルの命名規則

監査レコードの構造

監査レコード分析

監査トークンの形式

acl トークン

argument トークン

attribute トークン

cmd トークン

exec_args トークン

exec_env トークン

file トークン

fmri トークン

group トークン

header トークン

ip address トークン

ip port トークン

ipc トークン

IPC_perm トークン

path トークン

path_attr トークン

privilege トークン

process トークン

return トークン

sequence トークン

socket トークン

subject トークン

text トークン

trailer トークン

use of authorization トークン

use of privilege トークン

user トークン

xclient トークン

zonename トークン

用語集

索引

監査トークンの形式

各監査トークンにはトークンの種類識別子と、そのあとにトークン固有のデータが続いています。次の表は、各トークンの名前と簡単な説明の一覧です。廃止されたトークンは、以前の Solaris リリースとの互換性のために維持されています。

表 29-1 監査のための監査トークン

トークン名
説明
参照先
acl
アクセス制御エントリ (ACE) とアクセス制御リスト (ACL) の情報
arbitrary
書式情報と型情報が付いたデータ
audit.log(4) のマニュアルページを参照してください。
argument
システムコールの引数値
属性
ファイル vnode の情報
cmd
コマンド引数と環境変数
exec_args
exec システムコールの引数
exec_env
exec システムコールの環境変数
exit
プログラム終了情報
audit.log(4) のマニュアルページを参照してください。
ファイル
監査ファイル情報
fmri
フレームワーク管理リソースインジケータ
group
プロセスグループ情報
header
監査レコードの始まりを示します
ip
IP ヘッダー情報
audit.log(4) のマニュアルページを参照してください。
ip address
インターネットアドレス
ip port
インターネットポートアドレス
ipc
System V IPC 情報
IPC_perm
System V IPC オブジェクトアクセス情報
opaque
構造化されていないデータ (形式が未指定)
audit.log(4) のマニュアルページを参照してください。
path
パス情報
path_attr
アクセスパス情報
特権
特権設定情報
process
プロセス情報
return
システムコールのステータス
sequence
シーケンス番号
socket
ソケットの種類とアドレス
サブジェクト
サブジェクト情報 (process と同じ形式)
text
ASCII 文字列
trailer
監査レコードの終わりを示します
use of authorization
承認の使用
use of privilege
特権の使用
user
ユーザー ID とユーザー名
xclient
X クライアント ID
zonename
ゾーンの名前
Trusted Extensions トークン
label と X Window System の情報

次のトークンは廃止されました。

廃止されたトークンについては、そのトークンが含まれていたリリースの参照資料を参照してください。

監査レコードは常に header トークンで始まります。header トークンは、監査トレール内で監査レコードの始まりを示します。ユーザーの動作に起因するイベントの場合、subjectprocess トークンは、イベントを発生させたプロセスの値を参照します。ユーザーに起因しないイベントの場合、process トークンはシステムを参照します。

acl トークン

acl トークンには、ZFS ファイルシステムのアクセス制御エントリ (ACE) と、UFS ファイルシステムのアクセス制御リスト (ACL) に関する情報を記録するための 2 つの形式があります。

acl トークンが UFS ファイルシステムに対して記録される場合、praudit -x コマンドでは、フィールドは次のように表示されます。

<acl type="1" value="root" mode="6"/>

acl トークンが ZFS データセットに対して記録される場合、praudit -x コマンドでは、フィールドは次のように表示されます。

<acl who="root" access_mask="default" flags="-i,-R" type="2"/>

argument トークン

argument トークンには、システムコールへの引数に関する情報、つまり、システムコールの引数の数、引数の値、および省略可能な説明が含まれています。このトークンを使用すると、監査レコード内で 32 ビット整数のシステムコール引数を指定できます。

praudit -x コマンドでは、argument トークンのフィールドは次のように表示されます。

<argument arg-num="2" value="0x5401" desc="cmd"/>

attribute トークン

attribute トークンには、ファイル vnode からの情報が含まれています。

attribute トークンには通常、path トークンが付いています。attribute トークンはパスの検索中に生成されます。パス検索エラーが発生すると、必要なファイル情報を取得するための v ノードが利用できません。このため、attribute トークンは監査レコードの一部として組み込まれません。praudit -x コマンドでは、attribute トークンのフィールドは次のように表示されます。

<attribute mode="20620" uid="root" gid="tty" fsid="0" nodeid="9267" device="108233"/>

cmd トークン

cmd トークンは、コマンドに割り当てられた引数のリストおよび環境変数のリストを記録します。

praudit -x コマンドでは、cmd トークンのフィールドは次のように表示されます。次に示すのは、切り詰められた cmd トークンです。行は、表示の都合上、折り返して記載されています。

<cmd><arge>WINDOWID=6823679</arge>
<arge>COLORTERM=gnome-terminal</arge>
<arge>...LANG=C</arge>...<arge>HOST=machine1</arge>
<arge>LPDEST=printer1</arge>...</cmd>

exec_args トークン

exec_args トークンは、exec() システムコールへの引数を記録します。

praudit -x コマンドでは、exec_args トークンのフィールドは次のように表示されます。

<exec_args><arg>/usr/bin/sh</arg><arg>/usr/bin/hostname</arg></exec_args>

注 - exec_args トークンは、argv 監査ポリシーオプションが有効なときにだけ出力されます。


exec_env トークン

exec_env トークンは、exec() システムコールの現在の環境変数を記録します。

praudit -x コマンドでは、exec_env トークンのフィールドは次のように表示されます。行は、表示の都合上、折り返して記載されています。

<exec_env><env>_=/usr/bin/hostname</env>
<env>LANG=C</env><env>PATH=/usr/bin:/usr/ucb</env>
<env><env>LOGNAME=jdoe</env><env>USER=jdoe</env>
<env>DISPLAY=:0</env><env>SHELL=/bin/csh</env>
<env>HOME=/home/jdoe</env><env>PWD=/home/jdoe</env><env>TZ=US/Pacific</env>
</exec_env>

注 - exec_env トークンは、argv 監査ポリシーオプションが有効なときにだけ出力されます。


file トークン

file トークンは、古い監査ファイルが終了した時点で、新しい監査ファイルの開始と古い監査ファイルの終了をマークする特殊なトークンです。最初の file トークンは、監査証跡の前のファイルを特定します。最後の file トークンは、監査証跡の次のファイルを特定します。これらのトークンは、連続した監査ファイルを 1 つの監査トレールにまとめて「リンク」します。

praudit -x コマンドでは、file トークンのフィールドは次のように表示されます。行は、表示の都合上、折り返して記載されています。

<file iso8601="2009-04-08 14:18:26.200 -07:00">
/var/audit/machine1/files/20090408211826.not_terminated.machine1</file>

fmri トークン

fmri トークンは、障害管理リソースインジケータ (FMRI) の使用を記録します。詳細は、smf(5) のマニュアルページを参照してください。

praudit -x コマンドでは、fmri トークンの内容は次のように表示されます。

<fmri service_instance="svc:/system/cryptosvc"</fmri>

group トークン

group トークンは、プロセスの資格からグループエントリを記録します。

praudit -x コマンドでは、groups トークンのフィールドは次のように表示されます。

<group><gid>staff</gid><gid>other</gid></group>

注 - group トークンは、group 監査ポリシーオプションがアクティブな場合にのみ出力されます。


header トークン

header トークンは、監査レコードの開始を示すという意味で、特殊なトークンです。trailer トークンとの組み合わせでレコード内のほかのすべてのトークンを囲む特殊なトークンです。

まれに、header トークンに 1 つまたは複数のイベント修飾子が含まれている場合があります。

praudit コマンドでは、header トークンは次のように表示されます。

header,756,2,execve(2),,machine1,2010-10-10 12:11:10.209 -07:00

praudit -x コマンドでは、header トークンのフィールドは監査レコードの先頭に表示されます。行は、表示の都合上、折り返して記載されています。

<record version="2" event="execve(2)" host="machine1" 
iso8601="2010-10-10 12:11:10.209 -07:00">

ip address トークン

ip address トークンには、インターネットプロトコルアドレス (IP アドレス) が含まれています。IP アドレスは、IPv4 または IPv6 の形式で表示できます。IPv4 アドレスは 4 バイトを使用します。IPv6 アドレスは、1 バイトを使って種類を記述し、さらに 16 バイトを使ってアドレスを記述します。

praudit -x コマンドでは、ip address トークンの内容は次のように表示されます。

<ip_address>machine1</ip_address>

ip port トークン

ip port トークンには、TCP または UDP ポートアドレスが含まれています。

praudit コマンドでは、ip port トークンは次のように表示されます。

ip port,0xf6d6

ipc トークン

ipc トークンには、呼び出し元が特定の IPC オブジェクトを識別するために使用する System V IPC メッセージハンドル、セマフォーハンドル、または共有メモリーハンドルが含まれています。


注 - IPC オブジェクト識別子は、監査トークンの、コンテキストに依存しない性質に準拠していません。IPC オブジェクトを一意に識別するグローバルな「名前」はありません。代わりに、IPC オブジェクトはハンドルで識別されます。これらのハンドルは、IPC オブジェクトの動作中にのみアクティブです。しかし IPC オブジェクトの識別は問題となりません。System V の IPC メカニズムはあまり使用されず、すべてのメカニズムが同じ監査クラスを共有するからです。


次の表は、IPC オブジェクトの形式フィールドに指定できる値の一覧です。値は /usr/include/bsm/audit.h ファイル内で定義されます。

表 29-2 IPC オブジェクトの形式フィールドの値

名前
説明
AU_IPC_MSG
1
IPC メッセージオブジェクト
AU_IPC_SEM
2
IPC セマフォーオブジェクト
AU_IPC_SHM
3
IPC 共有メモリーオブジェクト

praudit -x コマンドでは、ipc トークンのフィールドは次のように表示されます。

<IPC ipc-type="shm" ipc-id="15"/>

IPC_perm トークン

IPC_perm トークンには、System V IPC アクセス権のコピーが含まれています。このトークンは、IPC 共有メモリーイベント、IPC セマフォーイベント、および IPC メッセージイベントによって生成される監査レコードに追加されます。

praudit -x コマンドでは、 IPC_perm トークンのフィールドは次のように表示されます。行は、表示の都合上、折り返して記載されています。

<IPC_perm uid="jdoe" gid="staff" creator-uid="jdoe" 
creator-gid="staff" mode="100600" seq="0" key="0x0"/>

値は、IPC オブジェクトに関連付けられた IPC_perm 構造から取り出されます。

path トークン

path トークンには、オブジェクトのアクセスパス情報が含まれています。

praudit -x コマンドでは、path トークンの内容は次のように表示されます。

<path>/export/home/srv/.xsession-errors</path>

path_attr トークン

path_attr トークンには、オブジェクトのアクセスパス情報が含まれています。アクセスパスは、path トークンオブジェクトの下の属性ファイルオブジェクトのシーケンスを指定します。openat() などのシステムコールは、属性ファイルにアクセスします。属性ファイルオブジェクトについての詳細は、fsattr(5) のマニュアルページを参照してください。

praudit コマンドでは、path_attr トークンは次のように表示されます。

path_attr,1,attr_file_name

privilege トークン

privilege トークンは、プロセス上での特権の使用を記録します。privilege トークンは、基本セットの特権に対して記録されません。特権が管理者の処理により基本セットから削除された場合、その特権の使用は記録されます。特権についての詳細は、「特権 (概要)」を参照してください。

praudit -x コマンドでは、privilege トークンのフィールドは次のように表示されます。

<privilege set-type="Inheritable">ALL</privilege>

process トークン

process トークンには、シグナルの受信者など、プロセスに関連付けられたユーザーに関する情報が含まれています。

praudit -x コマンドでは、process トークンのフィールドは次のように表示されます。行は、表示の都合上、折り返して記載されています。

<process audit-uid="-2" uid="root" gid="root" ruid="root" 
rgid="root" pid="567" sid="0" tid="0 0 0.0.0.0"/>

return トークン

return トークンには、システムコールの戻りステータス (u_error) とプロセスの戻り値 (u_rval1) が含まれています。

return トークンは、必ずシステムコールに関してカーネルによって生成される監査レコードの一部として返されます。アプリケーションの監査中、このトークンは終了ステータスとその他の戻り値を返します。

praudit では、システムコールの return トークンは次のように表示されます。

return,failure: Operation now in progress,-1

praudit -x コマンドでは、return トークンのフィールドは次のように表示されます。

<return errval="failure: Operation now in progress" retval="-1/">

sequence トークン

sequence トークンには、シーケンス番号が含まれています。シーケンス番号は、監査レコードが監査トレールに組み込まれるたびに 1 ずつ増分します。このトークンはデバッグに使用されます。

praudit -x コマンドでは、sequence トークンの内容は次のように表示されます。

<sequence seq-num="1292"/>

注 - sequence トークンは、seq 監査ポリシーがアクティブなときにだけ出力されます。


socket トークン

socket トークンには、インターネットソケットを記述する情報が含まれています。場合によっては、このトークンにリモートポートとリモート IP アドレスのみが含まれていることがあります。

praudit コマンドでは、socket トークンのインスタンスは次のように表示されます。

socket,0x0002,0x83b1,localhost

拡張されたトークンによって、ソケットの種類やローカルポートなどの情報が追加されます。

praudit -x コマンドでは、socket トークンのこのインスタンスは次のように表示されます。行は、表示の都合上、折り返して記載されています。

<socket sock_domain="0x0002" sock_type="0x0002" lport="0x83cf" 
laddr="example1" fport="0x2383" faddr="server1.Subdomain.Domain.COM"/>

subject トークン

subject トークンは、ある操作を実行するユーザーまたは実行を試みるユーザーを記述します。形式は process トークンと同じです。

subjectトークンは、必ずシステムコールに関してカーネルによって生成される監査レコードの一部として返されます。praudit コマンドでは、subject トークンは次のように表示されます。

subject,jdoe,root,root,root,root,1631,1421584480,8243 65558 machine1

praudit -x コマンドでは、subject トークンのフィールドは次のように表示されます。行は、表示の都合上、折り返して記載されています。

<subject audit-uid="jdoe" uid="root" gid="root" ruid="root" 
rgid="root" pid="1631" sid="1421584480" tid="8243 65558 machine1"/>

text トークン

text トークンには、テキスト文字列が含まれています。

praudit -x コマンドでは、text トークンの内容は次のように表示されます。

<text>booting kernel</text>

trailer トークン

headertrailer の2 つのトークンは、監査レコードの終端を区別し、ほかのすべてのトークンを囲むという意味で、特殊なトークンです。header トークンは監査レコードを開始します。trailer トークンは監査レコードを終了します。trailer トークンは省略可能です。trailer トークンは、trail 監査ポリシーオプションが設定されているときにだけ、各レコードの最後のトークンとして追加されます。

trailer トークンを含む監査レコードが生成された場合、 auditreduce コマンドは、 trailer がレコードの header を正しくポイントしているかどうかを検証します。また、trailer トークンを使用すると監査トレールを逆方向に検索できます。

praudit コマンドでは、trailer トークンが次のように表示されます。

trailer,136

use of authorization トークン

use of authorization トークンは、承認の使用を記録します。

praudit コマンドでは、use of authorization トークンは次のように表示されます。

use of authorization,solaris.role.delegate
XXXX<use_of_authorization result="successful use of auth">solaris.role.delegate</use_of_auth>

use of privilege トークン

use of privilege トークンは、特権の使用を記録します。

praudit -x コマンドでは、use of privilege トークンのフィールドは次のように表示されます。

<use_of_privilege result="successful use of priv">proc_setid</use_of_privilege>

user トークン

user トークンは、ユーザー名とユーザー ID を記録します。このトークンは、ユーザー名が呼び出し側と異なる場合に存在します。

praudit -x コマンドでは、user トークンのフィールドは次のように表示されます。

<user uid="123456" username="tester1"/>

xclient トークン

xclient トークンには、X サーバーへのクライアント接続の数が含まれています。

praudit -x コマンドでは、xlient トークンの内容は次のように表示されます。

<X_client>15</X_client>

zonename トークン

zonename トークンは、監査イベントが発生したゾーンを記録します。文字列「global」は、大域ゾーンで発生した監査イベントを示します。

praudit -x コマンドでは、zonename トークンの内容は次のように表示されます。

<zone name="graphzone"/>