185
2005 年 3 月 強制的アクセス制御に基づく Web サーバーに関する 調査・設計に関する調査 報告書

強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

2005 年 3 月

強制的アクセス制御に基づく Web サーバーに関する

調査・設計に関する調査 報告書

Page 2: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐i‐

目次

1 はじめに .........................................................................................................................1

1.1 背景.....................................................................................................................1

1.2 本調査の目的 ......................................................................................................4

1.3 調査方法 .............................................................................................................4

1.4 本調査報告書の想定される利用者 ........................................................................5

1.5 本報告の構成 ......................................................................................................5

2 Webサーバー・システムのモデリング................................................................................8

2.1 Web コンテンツの分類 ..........................................................................................9

2.2 ユーザ ...............................................................................................................10

2.2.1 Web クライアント・ユーザ.................................................................................. 11

2.2.2 Web コンテンツ管理者 .................................................................................... 11

2.2.3 Webシステム管理者 ....................................................................................... 11

2.3 オペレーティング・システムとの対応 .....................................................................12

2.3.1 Web コンテンツ ...............................................................................................12

2.3.2 ユーザ............................................................................................................13

2.4 Webサーバーの内部モジュール.........................................................................15

2.4.1 Webサーバーの内部モジュール .....................................................................15

2.4.2 Webサーバーが利用するオペレーティング・システムの機能 .............................19

2.5 Webサーバー内の処理フロー ............................................................................22

3 Webサーバー・システムの脆弱性分析 ...........................................................................28

3.1 脅威の対象 ........................................................................................................28

3.1.1 コンテンツ .......................................................................................................29

3.1.2 ネットワークを流れるデータ ..............................................................................30

3.1.3 Webサーバー ................................................................................................32

3.1.4 Web クライアント..............................................................................................33

3.2 Webサーバーに対する攻撃手段の分析..............................................................34

3.2.1 攻撃の種類 ....................................................................................................34

3.2.2 なりすまし .......................................................................................................35

3.2.3 バグの利用 .....................................................................................................38

3.2.4 設定ミスの利用 ...............................................................................................39

Page 3: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐ii‐

3.2.5 仕様上の問題の利用 ......................................................................................41

3.2.6 バックドアの利用 .............................................................................................42

3.2.7 DoS ...............................................................................................................44

3.2.8 クロスサイト・スクリプティング.............................................................................46

3.2.9 盗聴 ...............................................................................................................47

3.3 脆弱性対策の方針 .............................................................................................49

3.4 脅威に対する対策 ..............................................................................................51

3.4.1 なりすましに対する対策 ...................................................................................52

3.4.2 バグの利用に対する対策 ................................................................................53

3.4.3 設定ミスの利用に対する対策 ...........................................................................54

3.4.4 仕様上の問題に対する対策 ............................................................................54

3.4.5 バックドアの利用に対する対策.........................................................................55

3.4.6 DoS攻撃に対する対策...................................................................................55

3.4.7 クロスサイト・スクリプティングに対する対策 ........................................................56

3.4.8 盗聴に対する対策 ..........................................................................................56

3.5 脆弱性分析のまとめ............................................................................................56

4 アクセス制御に対する要件.............................................................................................58

4.1 強制的アクセス制御実現のための要件 ................................................................58

4.2 Webサーバー・システムのための要件 .................................................................60

5 関連セキュリティ・ポリシー・モデルの分析........................................................................62

5.1 Hoffman’s RBAC..............................................................................................65

5.1.1 RBAC と TEを組み合わせる利点 ...................................................................65

5.1.2 ポリシー・モデルの概要 ...................................................................................66

5.1.3 ポリシー・モデルの特徴 ...................................................................................68

5.1.4 Webサーバーへの適応性分析 .......................................................................69

5.2 DAFMAT..........................................................................................................70

5.2.1 RBAC と DTEを組み合わせる利点 ................................................................71

5.2.2 ポリシー・モデルの概要 ...................................................................................71

5.2.3 ポリシー・モデルの特徴 ...................................................................................77

5.2.4 Webサーバーへの適応性分析 .......................................................................79

5.3 PARBAC...........................................................................................................80

5.3.1 RBAC と DTEを組み合わせる利点 ................................................................80

5.3.2 ポリシー・モデルの特徴 ...................................................................................91

Page 4: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐iii‐

5.3.3 Webサーバーへの適応性分析 .......................................................................92

5.4 SELinux SPM ..................................................................................................94

5.4.1 ポリシー・モデルの概要 ...................................................................................94

5.4.2 ポリシー・モデルの特徴 ...................................................................................95

5.4.3 Webサーバーへの適応性分析 .......................................................................99

5.5 Trusted Solaris SPM ..................................................................................... 100

5.5.1 ポリシー・モデルの概要 ................................................................................. 101

5.5.2 ポリシー・モデルの特徴 ................................................................................. 101

5.5.3 Webサーバーへの適応性分析 ..................................................................... 106

5.6 各モデルの比較 ............................................................................................... 108

5.6.1 サブジェクトに付与されるラベルの決定因子 ................................................... 108

5.6.2 アクセス制御の特徴 ...................................................................................... 108

5.6.3 異なるアクセス制御を行う仕組み.................................................................... 109

5.6.4 ドメイン(機密ラベル)の追加に影響される要素................................................ 111

5.6.5 被害範囲 ...................................................................................................... 112

6 実装システムの調査 .................................................................................................... 116

6.1 RBAC/Web ..................................................................................................... 116

6.2 PDRBAC ........................................................................................................124

6.3 SELinux .........................................................................................................128

6.3.1 オブジェクト・タイプの付与 ............................................................................. 128

6.3.2 ドメインの付与 ............................................................................................... 128

6.3.3 アクセス制御 ................................................................................................. 129

6.3.4 ユーザとロール、ロールとドメイン .................................................................... 130

6.3.5 オブジェクト・クラスとアクセス・ベクターの一覧 ................................................. 131

6.3.6 ドメイン遷移の動的な選択 ............................................................................. 150

6.4 Trusted Solaris .............................................................................................. 151

6.4.1 格付けとコンパートメントの設定 ...................................................................... 151

6.4.2 特権 ............................................................................................................. 154

6.5 Apache............................................................................................................159

6.5.1 認証(Authentication)................................................................................. 159

6.5.2 認可(Authorization) .................................................................................. 161

6.6 IIS................................................................................................................... 168

6.6.1 認証(Authentication)................................................................................. 168

Page 5: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐iv‐

6.6.2 認可(Authorization) .................................................................................. 170

7 おわりに...................................................................................................................... 175

Page 6: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐v‐

図目次

図 1-1 WEBサーバーのアクセス制御 .............................................................................................. 3

図 1-2 調査方法 ............................................................................................................................ 5

図 2-1 WEBサーバー・システム...................................................................................................... 8

図 2-2 オペレーティング・システムアクセス制御を考慮したサブジェクト分類 .................................. 10

図 2-3 WEBクライアントとオペレーティング・システムにおけるアカウントの対応............................. 13

図 2-4 WEBサーバー・システムの内部モジュール・モデル .......................................................... 15

図 2-5 設定時における処理フロー................................................................................................ 23

図 2-6 基本サービス・フロー・モデル ............................................................................................ 24

図 2-7 認証サービス・フロー・モデル ............................................................................................ 25

図 2-8 セッション・サービス・フロー・モデル ................................................................................... 27

図 3-1 WEBサーバー・システムにおける脅威の対象 .................................................................... 29

図 3-2 なりすまし:ユーザ名とパスワードの利用............................................................................. 37

図 3-3 なりすまし:セッション情報の利用 ....................................................................................... 37

図 3-4 バグの利用 ....................................................................................................................... 39

図 3-5 設定ミスの利用 ................................................................................................................. 41

図 3-6 仕様上の問題 ................................................................................................................... 42

図 3-7 バックドアの利用 ............................................................................................................... 44

図 3-8 DOS攻撃 ......................................................................................................................... 46

図 3-9 クロスサイト・スクリプティング .............................................................................................. 47

図 3-10 盗聴 ............................................................................................................................... 48

図 5-1 RBACの基本モデルとWEBサーバーへの適応例............................................................ 63

図 5-2 HOFFMANによる RBAC と TEの混合モデル概要 ............................................................ 67

図 5-3 HOFFMANによる RBAC と TEのモデル構造 ................................................................... 67

図 5-4 DAFMATにおける承認エンティティ相関図 ...................................................................... 76

図 5-5 パーパス・ヒエラルキー例 .................................................................................................. 82

図 5-6 PARBACモデル構造 ..................................................................................................... 87

図 5-7 PARBACの承認プロセス ................................................................................................. 91

図 5-8 DAC と SELINUXモジュールの関係................................................................................. 95

図 5-9 SELINUXのセキュリティ・ポリシー・モデルの構造............................................................... 98

図 5-10 サブジェクトのドメインが決まる過程 .................................................................................. 99

Page 7: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐vi‐

図 5-11 DAC とMAC................................................................................................................ 101

図 5-12 格付けとアクセス可能範囲............................................................................................. 103

図 5-13 TRUSTED SOLARISのセキュリティ・ポリシー・モデルの構造............................................. 106

図 6-1 RBAC/WEB ADMIN TOOLでのロール・ヒエラルキーの表示例 ......................................... 122

図 6-2 RBAC/WEB エンド・ユーザの視点 ................................................................................. 124

図 6-3 CDSA(COMMON DATA SECURITY ARCHITECTURE)...................................................... 125

図 6-4 PLのポリシー強制.......................................................................................................... 126

図 6-5 PDRBACによって拡張した CDSA................................................................................. 127

図 6-6 SETEXECCONとドメイン遷移........................................................................................... 151

Page 8: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐vii‐

表目次

表 2-1 WEBサーバーの各モジュールが必要なオペレーティング・システム機能 ........................... 22

表 3-1 攻撃の種類と対策の有効性 .............................................................................................. 57

表 5-1 DAFMATにおける承認エンティティのマッピング .............................................................. 75

表 5-2 RERBACにおけるエンティティのマッピング ...................................................................... 87

表 5-3 機密ラベルの例 .............................................................................................................. 103

表 5-4 サブジェクトに付与されるラベルの決定因子..................................................................... 108

表 5-5 アクセス制御の特徴 ........................................................................................................ 109

表 5-6 異なるアクセス制御を行う仕組み ..................................................................................... 110

表 5-7 ドメイン(機密ラベル)の追加に影響される要素 ................................................................. 112

表 5-8 WEBサーバーの改竄による被害範囲 ............................................................................. 113

表 5-9 動的コンテンツの改竄による被害範囲 ............................................................................. 114

表 6-1 RBAC/WEBのコンポーネント.......................................................................................... 117

表 6-2 オブジェクト・クラス .......................................................................................................... 132

表 6-3 ユーザスペース・オブジェクトクラス................................................................................... 134

表 6-4 ファイル関連共通アクセス・ベクター ................................................................................. 135

表 6-5 ソケット関連で共通のアクセス・ベクター ........................................................................... 136

表 6-6 プロセス間通信関連共通アクセス・ベクター...................................................................... 136

表 6-7 FILESYSTEMのアクセス・ベクター .................................................................................. 137

表 6-8 DIRのアクセス・ベクター .................................................................................................. 137

表 6-9 FILEのアクセス・ベクター ................................................................................................ 137

表 6-10 CHR_FILEのアクセス・ベクター ...................................................................................... 138

表 6-11 FDのアクセス・ベクター ................................................................................................. 138

表 6-12 TCP_SOCKETのアクセス・ベクター................................................................................ 139

表 6-13 UDP_SOCKETのアクセス・ベクター................................................................................. 139

表 6-14 RAWIP_SOCKETのアクセス・ベクター ............................................................................. 139

表 6-15 NODEのアクセス・ベクター............................................................................................. 140

表 6-16 NETIFのアクセス・ベクター ............................................................................................ 140

表 6-17 UNIX_STREAM_SOCKETのアクセス・ベクター ................................................................. 141

表 6-18 PROCESSのアクセス・ベクター........................................................................................ 142

Page 9: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐viii‐

表 6-19 MSGQのアクセス・ベクター............................................................................................. 142

表 6-20 MSGのアクセス・ベクター............................................................................................... 142

表 6-21 SHMのアクセス・ベクター............................................................................................... 143

表 6-22 SECURITYのアクセス・ベクター ...................................................................................... 143

表 6-23 SYSTEMのアクセス・ベクター ......................................................................................... 144

表 6-24 CAPABILITYのアクセス・ベクター ................................................................................... 145

表 6-25 PASSWDのアクセス・ベクター ......................................................................................... 145

表 6-26 その他オブジェクト・クラスのアクセス・ベクター................................................................ 150

表 6-27 格付けの設定時に使用できるタグ.................................................................................. 152

表 6-28 コンパートメントの設定時に使用できるタグ ..................................................................... 153

表 6-29 格付けとコンパートメントの組み合わせを制約するためのタグ .......................................... 154

表 6-30 ファイルシステム関連の特権.......................................................................................... 155

表 6-31 SYSTEMV IPC関連の特権 ......................................................................................... 155

表 6-32 ネットワーク関連の特権 ................................................................................................. 156

表 6-33 プロセス関連の特権 ...................................................................................................... 157

表 6-34 システム関連の特権 ...................................................................................................... 158

表 6-35 ウィンドウ関連の特権..................................................................................................... 159

表 6-36 APACHEの認証方式..................................................................................................... 161

表 6-37 APACHEの実装するアクセス制御 .................................................................................. 163

表 6-38 POSIX準拠のファイルシステムのアクセス権限................................................................ 163

表 6-39 NTFSのアクセス権限と論理グループ ........................................................................... 167

表 6-40 APACHEの認可の対象の種類....................................................................................... 167

表 6-41 IISの認証方式 ............................................................................................................ 170

表 6-42 IISの実装するアクセス制御.......................................................................................... 171

表 6-43 NTFSのアクセス権限と論理グループ ........................................................................... 174

表 6-44 IISの認可の対象の種類 .............................................................................................. 174

Page 10: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐1‐

1 はじめに

本報告書は、「強 制 的 アクセス制 御 に基づく We b サーバーに関する

調 査 ・設 計 」に関 する調 査 報 告 書 である。本 調 査 報 告 書 は、「強 制 的

アクセス制 御 に関するセキュリティ・ポリシー・モデルの We b サーバーへの

適用性の調査編 」、および「既 存 We b サーバー・システムにおけるアクセ

ス制 御 の調査編 」の 2 部から構 成 される。

1 .1 背景

中央省庁のインターネット We b サーバー・システムのように、データのイ

ンテグリティが強 く求 められているシステムの開 発 ・構 築 においては、総

合 的 なセキュリティ設 計 に基 づくことが望 まれている。このような中 で、近

年 、セキュアシステム構 築 のための基 盤 ソフトウェアとして、セキュアオペ

レーティング・システムに代 表 される強 制 的 アクセス制 御 機 能 を有 するオ

ペレーティング・システムが注 目 されている。オペレーティング・システムに

よる強 制 的 アクセス制 御 は、オペレーティング・システム上 のすべてのリソ

ースおよびアプリケーションに対 してセキュリティ・ポリシーに沿 ったアクセ

ス制 御 を強制することができるため、インターネット We b サーバー・システ

ムにおける効 果的 な改 ざん防止対策 としての活用 が望 まれている。

We b サーバー・システムのように、あらゆる攻 撃 に晒 され易 いシステムに

おいては、 1 0 0 %安 全 なシステムを構 築 することは現 実 的 に不 可 能 であ

る。そのため、We b サーバーが仮 に悪 意 ある者 により攻 撃 された場 合 で

も、その被 害 の範 囲 を予 測 可 能 な限 定 的 なものにすることが必 要 となる。

被 害 の範囲 を予測可能 な限定的 なものにするには、We b サーバーに与

えられる権 限 の細 分化 と最 少 化 、および、そのセキュリティ・ポリシーの強

制的 な適 用 が必要 となる。つまり、アプリケーションの任 意 性 に依存せず、

セキュリティ管 理 者 により設 定 されたセキュリティ・ポリシーを、強 制 的 に

Page 11: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐2‐

適用する強制的 アクセス制 御 が必要 となる。

強 制 的 アクセス制 御 の導 入 により、セキュリティ管 理 者 の定 めたセキュ

リティ・ポリシーが回 避 されることを避 け、必 ずセキュリティ・ポリシーに沿 っ

た運用 を保障するものである。これを We b サーバーに適用することにより、

We b サーバーがアクセス制 御 の主 体 を担 うのではなく、オペレーティン

グ・システムがアクセス制 御 の主 体 を担 うことで、オペレーティング・システ

ムのセキュリティ管 理 者 が We b サーバーのアクセス制 御 についても管 理

することが可 能 になる。また、アクセス権 を設 定 するセキュリティ管 理 者 と、

サービスを実 行する We b サーバーの権限 が分離 される。これは、セキュリ

ティにおいての権限 の細分化になり、We b サーバーの安全性 を高めるた

めに有効 となる。

しかし、従 来 の We b サーバーは、オペレーティング・システム上 で動作

する 1 つのアプリケーションとして実 現 されていた (図 1 - 1 )。汎 用 オペレ

ーティング・システムの一 般 的 な機 能 のみに依 存 し、特 定 のプラットフォ

ームに依存 しない形 で実現 される We b サーバーは、ポータビリティが高

い、というメリットがある。特 定 のプラットフォームに依 存 しないため、任 意

のハードウェアとソフトウェアの組 み合 わせで運 用 できるため、運 用 コスト

を低 くすることが可 能 である。しかし、この汎 用 性 というメリットは、セキュリ

ティを考 えた場合 、メリットが低 い。

We b サーバーは、オペレーティング・システム上 の特 定 の権 限 で動 作

し、We b サーバーが稼動 している間 は、常 に同 じ権 限 で We b クライアン

トの要 求 に応 える。We b クライアントからのリクエストは、We b サーバーが

承 認 し、リクエストに応 えるため、オペレーティング・システムのアクセス制

御 が介 在 することは基 本 的 に無 い。特 にプラットフォーム非 依 存 に設 計

されているため、この特 徴 は顕著 に現 れる、つまり、アクセス制 御 が、オペ

レーティング・システムの持 つセキュリティ・ポリシーに関 わらず、任 意 に行

われる可 能 性 を意 味 する。これにより、結 果 として、アクセス制 御 を行 う

主 体 と、実 際 に権限 を行使する主体 が同 じになる。このため、We b サー

Page 12: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐3‐

バーがリクエストに応 えるために必要 な権限 の全 てが、常 に We b サーバ

ーには与 えられている。一 般 的 に、We b サーバーが悪 意 のある利 用 者

に乗 っ取 られると、危 険 に晒 される範 囲 が非 常 に広 くなる。本 来 であれ

ば、利 用 者 が得 るべき権 限 は、非 常 に少 なくあるべきではあるが、We b

サーバーが持つ権限が、全 てのアクセス可 能 なコンテンツから We b サー

バーの設 定 ファイルにまで、多 岐 に渡 るため、従 来 のシステムでは被 害

の範囲が広 くなる傾 向 にあった。

セキュリティ・ポリシー・モデル

Webクライアントインターネット

アクセス制御アクセス制御

アクセス制御

OS

Webサーバー

Webサーバーにおけるリソース管理(仮想ドメイン、Webコンテンツ等)

OSにおけるリソース管理

(ファイル等)

セキュリティ・ポリシー・モデル

Webクライアントインターネット

アクセス制御アクセス制御アクセス制御アクセス制御

アクセス制御

OS

Webサーバー

Webサーバーにおけるリソース管理(仮想ドメイン、Webコンテンツ等)

OSにおけるリソース管理

(ファイル等)

図 1 - 1 We b サーバーのアクセス制 御

Page 13: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐4‐

1 .2 本調査の目的

インターネット環 境 で運用 される We b サーバー・システムにおいて、オペ

レーティング・システムによる強 制 的 アクセス制 御 を有 効 活 用 するために

は、オペレーティング・システムと調 和 的 にアクセス制 御 を実 現 する We b

サーバーの実現 が不可欠 である。本 プロジェクトは、中 央 省 庁等 で利用

されるインターネット We b サーバー・システムを想 定 し、オペレーティング・

システムによる強 制的 アクセス制 御機構 を有する We b サーバー・システ

ムの実現 を目指す。本 調査 の目的は、We b サーバーに適 したセキュリテ

ィ・ポリシー・モデルを明 らかにすることである。

1 .3 調査方法

本調査作業は、下 図 に示す手順で進 める。

ポリシー適応性の分析ポリシー適応性の分析

Webサーバー・システムにおけるリソース管理とアクセス制御のモデリング(要求仕様の定義)

Webサーバー・システムにおけるリソース管理とアクセス制御のモデリング(要求仕様の定義)

強制的アクセス制御に関するセキュリティ・ポリシー・モデルの調査

強制的アクセス制御に関するセキュリティ・ポリシー・モデルの調査

既存Webサーバー・システム(OS, Webサーバ)の調査

既存Webサーバー・システム(OS, Webサーバ)の調査

調査報告書「既存Webサーバー・システムにおけるアクセス制御の調査編」

調査報告書「強制的アクセス制御に関するセキュリティ・ポリシー・モデルのWebサーバーへの適用性の調

査編」

既存の問題を分析

既存の問題を分析

ポリシー適応性の分析ポリシー適応性の分析ポリシー適応性の分析ポリシー適応性の分析

Webサーバー・システムにおけるリソース管理とアクセス制御のモデリング(要求仕様の定義)

Webサーバー・システムにおけるリソース管理とアクセス制御のモデリング(要求仕様の定義)

Webサーバー・システムにおけるリソース管理とアクセス制御のモデリング(要求仕様の定義)

Webサーバー・システムにおけるリソース管理とアクセス制御のモデリング(要求仕様の定義)

強制的アクセス制御に関するセキュリティ・ポリシー・モデルの調査

強制的アクセス制御に関するセキュリティ・ポリシー・モデルの調査

強制的アクセス制御に関するセキュリティ・ポリシー・モデルの調査

強制的アクセス制御に関するセキュリティ・ポリシー・モデルの調査

既存Webサーバー・システム(OS, Webサーバ)の調査

既存Webサーバー・システム(OS, Webサーバ)の調査

既存Webサーバー・システム(OS, Webサーバ)の調査

既存Webサーバー・システム(OS, Webサーバ)の調査

調査報告書「既存Webサーバー・システムにおけるアクセス制御の調査編」

調査報告書「既存Webサーバー・システムにおけるアクセス制御の調査編」

調査報告書「強制的アクセス制御に関するセキュリティ・ポリシー・モデルのWebサーバーへの適用性の調

査編」

調査報告書「強制的アクセス制御に関するセキュリティ・ポリシー・モデルのWebサーバーへの適用性の調

査編」

既存の問題を分析

既存の問題を分析

Page 14: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐5‐

図 1 - 2 調 査 方 法

本 調 査 では、まず、リソース管 理 やアクセス制 御 に関 する We b サーバ

ー・システムのモデリングを行 いアクセス制 御 に関 する要 求 仕 様 を定 義

する。次 に、強 制 的 アクセス制 御 に関 するセキュリティ・ポリシー・モデル

が We b サーバーシステム・モデルの要求仕様 をどの程度満 たすことがで

きるかを分 析する。この分 析 結果は、調 査 報告書 「強 制 的 アクセス制 御

に関するセキュリティ・ポリシー・モデルの We b サーバーへの適用性の調

査編 」としてとりまとめる。

また、既 存 のオペレーティング・システムと既 存 We b サーバーから構 成 さ

れる既 存 We b サーバー・システムのアクセス制 御機能 、およびこれらのシ

ステムに対する攻 撃や脆弱性に関する調査 を行 い、先 に定義 した We b

サーバー・システム・モデルと比 較 することで、既 存 システムの問 題 点 を

抽出する。この調 査結果は、調 査報告書 「既 存 We b サーバー・システ

ムにおけるアクセス制 御 の調査編 」としてとりまとめる。

1 .4 本調査報告書の想定される利用者

本 調 査 報 告 書 は、個 人 情 報 を扱 う企 業 や電 子 政 府 等 において、高 い

情報セキュリティ管 理 が要求 される部 署 で利用 される We b サーバー・シ

ステムの導 入 担 当 者 、および、これらの環 境 への導 入 をターゲットとした

We b サーバーおよびオペレーティング・システムの開発 に携わる者 を主 な

読者 に想定する。

1 .5 本報告の構成

本調査報告書の第 1 部 「強 制 的 アクセス制 御 に関するセキュリティ・

ポリシー・モデルの We b サーバーへの適用性の調査編 」では、強 制的 ア

クセス制 御 を採用するセキュリティ・ポリシー・モデルを調査 し、その We b

Page 15: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐6‐

サーバーへの適用性 を検証する。この検 証 にあたり、始 めに We b サーバ

ーをモデル化 すると共 に、We b サーバーの脆 弱 性 を検 証 する。そして、

アクセス制 御 の要 件 定 義 を行 う。この結 果 を元 に、既 存 のセキュリティ・

ポリシー・モデルの適用性 を検証する。

続 く第 2 部の「既 存 We b サーバー・システムにおけるアクセス制 御 の

調査編 」では、強 制的 アクセス制 御 を実現する既存 We b サーバーにお

いて、どのようなアクセス制 御 が行 われているかを調 査 し、その問 題 点 を

検証する。

本 調 査 報 告 書 の構 成 は、本 章 以 降 、次 の通 りである。 2 章 では、

We b サーバーが、どのようにオペレーティング・システムのサービスを利 用

し、利 用 者へのサービスを行 うのか、という視 点 から We b サーバー・シス

テムのモデリングを行 う。3 章 では、We b サーバー・システムのセキュリティ

分 析 を行 い、どのような脆 弱性 が起 こりえるかを論 ずる。4 章では、2 章 と

3 章の議論 を踏 まえ、We b サーバー・システムに求められるアクセス制 御

の要件 を論ずる。5 章では、R o l e B a s e d A c c e s s C o n t r o l ( R B A C )と

Ty p e E n f o r c e m e n t ( T E )に関連 した 3 つのモデルと 2 つのオペレーティ

ング・システムの計 5 種類の既存 のセキュリティ・ポリシー・モデルについ

て述べる。6 章 では、既 存 の We b サーバー・システムが、どのようなアクセ

ス制 御機構 を整理する。最 後 に、7 章で、本 報告書 を総 じて論ずる。

Page 16: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐7‐

強制的アクセス制御に関するセキュリティ

ポリシー・モデルの Web サーバーへの

適応性の調査編

Page 17: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐8‐

2 Web サーバー・システムのモデリング

図 2 - 1 We b サーバー・システム

We b サーバー・システムは、We b コンテンツ管 理者 が作成 した We b コ

ンテンツを We b サーバーが管理 し、We b クライアントからの要 求 に応 じて

We b コンテンツが We b サーバーから We b クライアントへと転 送 されるシス

テムである(図 2 - 1 参照 )。We b サーバーでは、We b クライアントと We b

コンテンツに関するアクセス制 御 を行 い、その設定は We b サーバー管理

者 もしくは We b コンテンツ管 理 者 によって行 われる。

現 在 、インターネット環 境 や組 織 内 のイントラネット環 境 において、多

くの We b サーバー・システムが構築 ・運 用 されているが、これら We b サー

バー・システムの構 成 や機能 は、採 用 するソフトウェアの種 類 や設 定 によ

り様 々である。本 章 では、We b サーバー・システムの分析 にあたり、多 くの

We b サーバー・システムが持つ標準的 な機能および構成 をモデリングす

ることにより、分 析 のためのリファレンス・プラットフォームを定 義する。

ネットワーク

Webクライアント Webコンテンツ

Webクライアントユーザ

インターネット

Webコンテンツ管理者

Webサーバー

ネットワーク

Webクライアント Webコンテンツ

インターネット

Webサーバー

Webコンテンツ管理者

Webシステム管理者

Webクライアントユーザ

ネットワーク

Webクライアント Webコンテンツ

Webクライアントユーザ

インターネット

Webコンテンツ管理者

Webサーバー

ネットワーク

Webクライアント Webコンテンツ

インターネット

Webサーバー

Webコンテンツ管理者

Webシステム管理者

Webクライアントユーザ

Page 18: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐9‐

本モデリングは、アクセス制 御 の対象 となる We b コンテンツ、We b クラ

イアントや We b コンテンツ管 理 者等 のユーザ、We b サーバーについて行

う。コンテンツのモデリングにより、本 調 査 の対 象 となっているアクセス制

御 機 能 が管 理対 象 とするコンテンツの特 徴 をまとめる。ユーザのモデリン

グにより、アクセス制 御 におけるサブジェクトの種 類 とそれぞれの目 的およ

びアクセスの特徴 を整理する。We b サーバーのモデリングは、システム内

のモジュールを機 能 別 に分 類 し、各 機 能 がタスク遂 行 に必 要 とする権

限 、モジュール間の処理 フローと関 係 についてまとめる。

2 .1 Web コンテンツの分類

We b コンテンツは、We b サーバー・システムのアクセス制 御 における(ア

クセス対 象 )オブジェクトである。We b コンテンツの特徴 を調査することに

より、アクセス制 御 におけるアクセスの種 類 と権 限 を定 義 することができ

る。

We b コンテンツは、その特徴により、静 的 We b コンテンツと動 的 We b

コンテンツの2種 類 に分類することができる。以 下 に、それぞれの We b コ

ンテンツの特徴 、および、これらに分類 される代 表的 な We b コンテンツに

ついて述べる。

• 静的 We b コンテンツ

静的 We b コンテンツは、コンテンツ・アクセスに際 して新 たなプログラム

実 行 を伴 わないコンテンツである。We b クライアントからのリクエストに応 じ

て返 送 される We b コンテンツの内容は、We b コンテンツ自 体 がコンテン

ツ管 理 者 によって変 更 されない限 り、常 に同 じである。アスキーテキスト、

X H T M L 等のドキュメントや J P E G 等の画像 ファイルが、静 的 We b コン

テンツに分類できる。

Page 19: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐10‐

• 動的 We b コンテンツ

動的 We b コンテンツは、あらかじめコンテンツの内容 が定 まっておらず、

We b クライアントからのアクセス要 求 に応 じて、動 的 に内容が生成 される

We b コンテンツである。We b クライアントからのリクエストに引 数 を伴 うよう

なインタラクティブな We b コンテンツ、時 刻 等 の外部事象により変 化 する

内 容 を含む We b コンテンツ、We b サーバーを経由 した外部 アクセスを実

現する等 の目的で動的 We b コンテンツが用 いられる。C G I や S S I と呼

ばれる We b コンテンツが、動 的 We b コンテンツに分類 できる。コンテンツ

内 容 の生成方法は、動 的 We b コンテンツに関連づけられたプログラムの

実行 による。

2 .2 ユーザ

図 2 - 2 オペレーティング・システムアクセス制 御 を考慮 したサブジェ

クト分 類

We b サーバーにアクセスする主 なユーザは、ネットワーク経 由 で We b コ

ンテンツへのアクセスをリクエストする We b クライアント ・ユーザである。

We b クライアント・ユーザ以外 に We b サーバー・システムへアクセスを行 う

ユーザには、We b コンテンツを作 成 ・管 理 する We b コンテンツ管 理者 と

システムの管理 を行 う We b システム管 理者 がいる。以 下 に、それぞれの

特徴 をまとめる。

WebクライアントユーザWebクライアントユーザ

Webシステム管理者

Webアカウントユーザ

Webアカウントユーザ

匿名(anonymous)Webクライアントユーザ

Webコンテンツ管理者

WebクライアントユーザWebクライアントユーザ

Webシステム管理者

Webアカウントユーザ

Webアカウントユーザ

匿名(anonymous)Webクライアントユーザ

Webコンテンツ管理者

Page 20: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐11‐

2 .2 .1 We b クライアント・ユーザ

We b サーバーに対 して We b コンテンツへのアクセスをリクエストするユ

ーザが We b クライアント・ユーザである。We b クライアント・ユーザは、認 証

等 による素 性 の特定 の有無によって、匿 名 (a n o n y m o u s)We b クライア

ント・ユーザと We b アカウント・ユーザの2種 類存在する。匿 名 We b クライ

アント・ユーザは、ユーザの素性 にかかわらず、We b サーバーにおけるリク

エスト処 理 が行 われる。We b アカウント・ユーザは、送 信 したリクエスト処

理 に先立 って、あらかじめ We b サーバーに登録 されたアカウント情 報 を

使 って素性 を特定する。

2 .2 .2 We b コンテンツ管理者

We b コンテンツ管 理 者は、We b コンテンツの作成および管理 を担 うユ

ーザである。多 くの We b サーバー・システムでは、We b サーバーに対 して

We b コンテンツの更新 をリクエストするより、We b サーバーが稼動する計

算 機 上 、もしくは、ファイルシステムを共 有 する計 算 機 上 にアカウントを

持 ち、直 接的 もしくは F T P 等 We b サーバー以外のシステムサービスを

経 由 してコンテンツの更新 を行 う。

また、We b コンテンツ管 理者は、自 らが管理するコンテンツに対するア

クセス制 御 の設 定 権 限 を持 つことができる。システム設 定 によっては、後

述 のシステム管 理 者 が設 定 したアクセス制 御 設 定 をオーバーライドする

ような設 定変更 の権限 を与 えることが可 能 である。

2 .2 .3 We b システム管理者

We b システム管 理者は、We b サーバー・システムの管理 を担 うユーザ

である。上 述 の We b コンテンツ管 理者 と同 様 に、We b サーバーに対 して

管理 のためのリクエストを送 信するわけではなく、We b サーバーの動作設

Page 21: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐12‐

定 、We b コンテンツに対 するアクセス制 御 設定 、監 査 ログ・ファイルの閲

覧 、We b サーバーの起動 ・終 了 を行 う権 限 を持つ。

また、We b サーバーの管理方針によっては、特 定 の We b コンテンツ管

理者 に属 さない We b コンテンツの管理 を We b システム管 理者 が担 う場

合 がある。

2 .3 オペレーティング・システムとの対応

前節では、We b サーバー・システムとして場 合の We b コンテンツ、We b

クライアントの分 類 を行 った。現 存 の We b サーバー・システムのほとんどは、

オペレーティング・システムが稼動する計算機上 に We b サーバー・ソフト

ウェアをインストールすることでシステムを構 築する。オペレーティング・シス

テムは、We b サーバーを含む計算機上 で稼動するソフトウェアおよび計

算機上のリソースを低 レベルで管理する。本 節 では、We b サーバーの各

エンティティが、オペレーティング・システム上 でどのプロパティにマッピン

グされ、管 理 されているかについて分析する。

2 .3 .1 We b コンテンツ

オペレーティング・システムにおいて、静 的および動的にかかわらず、We b

コンテンツはファイルに格納 され、扱 われる。静 的 We b コンテンツは、ひと

つのコンテンツが1ファイルと対 応 する。We b サーバーが受 理 した静 的

We b コンテンツへのアクセスは、コンテンツに対応するファイルのオープン

(o p e n)と内 容 読み出 し( r e a d)アクセスの組み合わせで実現 される。

動的 We b コンテンツは、コンテンツ内 容 を生成するプログラムファイル、

あるいは、プログラムファイルとデータファイルの集 合 と対 応 づけされる。

We b サーバーが受 理 する動 的 We b コンテンツへのアクセスは、静 的

We b コンテンツと同 じく、コンテンツに対する「閲 覧 」アクセスとして扱 う。し

かし、オペレーティング・システムでは、上 述 の「閲 覧 」アクセスが、プロセ

Page 22: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐13‐

スの生 成 ( f o r k )、プログラムファイルの実 行 ( e x e c)、実 行 したプログラム

が行 うさまざまなアクセス(o p e n , r e a d , w r i t e , e x e c 等 )の組 み合わせ

により実 現 される。

図 2 - 3 We b クライアントとオペレーティング・システムにおけるアカウン

トの対 応

2 .3 .2 ユーザ

We b クライアントから送 信 された We b コンテンツへのアクセス・リクエスト

は、We b サーバーにより処 理 される。オペレーティング・システムが管理す

る範 囲 が稼 動 する計 算 機 内 のみであるため、ネットワーク上 に存 在 する

We b クライアントを意 識することができない。We b クライアントから We b コ

ンテンツへのアクセスは、We b サーバーが図 2 - 3 We b クライアントとオ

ペレーティング・システムにおけるアカウントの対 応 We b クライアントの代

理 として We b コンテンツのファイルへアクセスするように扱 われる。しかし、

Webサーバー

WebクライアントユーザWebクライアントユーザ

Webシステム管理者

Webアカウントユーザ

Webアカウントユーザ

匿名(anonymous)Webクライアントユーザ

オペレーティングシステム ユーザアカウントユーザアカウント

Webサーバーアカウント

Webサーバーアカウント

システムアカウント

(root)

システムアカウント

(root)

Webコンテンツ管理者Web

サーバー

WebクライアントユーザWebクライアントユーザ

Webシステム管理者

Webアカウントユーザ

Webアカウントユーザ

匿名(anonymous)Webクライアントユーザ

オペレーティングシステム ユーザアカウントユーザアカウント

Webサーバーアカウント

Webサーバーアカウント

システムアカウント

(root)

システムアカウント

(root)

Webコンテンツ管理者

Page 23: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐14‐

We b クライアントの素 性 をオペレーティング・システムから知 ることができな

いため、匿 名 もしくはアカウント・ユーザの種別 にかかわらず、We b サーバ

ーに対 して割 り当 てられた単 一 のアカウントからのアクセスに変 換 される。

ただし、一 部 の We b サーバー実装では、We b アカウント・ユーザをオペレ

ーティング・システム上 のアカウントに割 り当 てることができる機 能 を持つも

のがある。この機 能 を持つ We b サーバーでは、We b アカウント・ユーザの

代理 として、割 り当 てられたアカウントの権 限 でコンテンツ・アクセスのため

のプロセスが生成 され、コンテンツ・アクセスが行 われる。

We b コンテンツ管 理 者は、オペレーティング・システム上 のアカウントに

一 意 的 に割 り当 てられていることが多 い。We b コンテンツ管 理 者 が行 う

We b コンテンツの更新は、オペレーティング・システムのアクセス制 御 にお

いて、書 き込 みが許可 されている We b コンテンツ格 納領域 の一部 (コン

テンツ格 納 ディレクトリ内 のあるサブディレクトリ下 など)に対 してのみ実 行

可 能 である。所 有 する We b コンテンツに対 するアクセス制 御 設 定 は、

We b サーバーの機能 の一部 としてコンテンツ管 理 者 が任意 に設定可能

である。

オペレーティング・システム上 では、We b クライアントのリクエスト処 理 以

外 の目的 で We b サーバーが行 うリソースへのアクセスもリクエスト処 理 と

同 様 に管理 される。リクエスト処 理 以外の We b サーバーの処理は、We b

サーバーの設 定 ファイルへのアクセス、監 査 ログの書 き込 み、ネットワー

ク・アクセス等 が含 まれる。We b サーバーは、システム・アカウント( r o o t)も

しくは専 用 のアカウント等 の単 一 アカウントを用 意 して動 作 させることが

多 い。We b サーバーが行 うさまざまなアクセスは、リクエスト処 理 やログ書

き込 み等 の処理内容 にかかわらず、この割 り当 てられたアカウントの権 限

で行 われるものとして扱 われる。

Page 24: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐15‐

2 .4 Web サーバーの内部モジュール

前節で述べたとおり、We b サーバー・システムにおける We b クライアント

から We b コンテンツへのアクセス・リクエスト処 理 は、We b サーバー内で

処 理 され、オペレーティング・システム・レベルのファイル・アクセスに分 解

され、実 現 される。本 節 では、We b サーバー内 およびオペレーティング・

システム内 の処 理 内 容 の詳 細 を分 析することにより、各 処 理 の詳 細 、お

よび、各 処 理 モジュールが必 要 とする権 限 を明 確 にする。本 分 析 結 果

は、次 章 におけるセキュリティ分 析 において、脆 弱 箇 所 および危 険 箇 所

の抽出 に用 いる。図 2 - 4 は、We b サーバー・システムの内 部 の処理 を

目 的 別 に分 類 した内 部 モジュール・モデルである。各 モジュールの処 理

内容 を説明する。

図 2 - 4 We b サーバー・システムの内 部 モジュール・モデル

2 .4 .1 We b サーバーの内部モジュール

• リクエスト受 信

We b クライアントからのリクエストを受 信するモジュールである。従 って、

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ静的

コンテンツ動的

コンテンツ動的

コンテンツ実行

プログラム実行

プログラム外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能

セッション情報

ネットワーク・アクセス機能

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ静的

コンテンツ動的

コンテンツ動的

コンテンツ実行

プログラム実行

プログラム外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能

セッション情報

ネットワーク・アクセス機能

Page 25: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐16‐

ネットワークからの T C P コネクション要 求 を待 ちうけ、接 続 要 求 があっ

た場 合 に受 理 してコネクションを確 立 する権 限 を必 要 とする。加 えて、

確 立 したコネクションから送 られてきたリクエストを読 む権 限 を必 要 とす

る。

• リクエスト解 析

リクエスト受 信 モジュールが受 信 したリクエストデータを解 析 して、ア

クセスの種 類 (メソッド)およびアクセスの対 象 (コンテンツ)を特 定 する

モジュールである。認 証 情 報 が付 与 されていたる場 合 には、認 証 モ

ジュールにデータ認 証 情 報 を渡 す。このモジュールは、メモリ内 上 で

のみの作業 で、ネットワーク・アクセスやファイル・アクセスなどの権限 を

必要 としない。

• 認証

このモジュールの目 的 は、We b コンテンツにアクセスをしようと試 み

ている We b クライアントを特 定することである。リクエスト解 析 モジュー

ルが特 定 した認 証 情 報 を基 に正 規 のユーザであるか否 かを判 断 す

る。

メソッドとコンテンツに対 して認 証 が必要 かどうかを We b 設定情報

から読 み出 し、決 定 するモジュールである。また、リクエスト解 析 モジュ

ールより渡 された解析結果に認証情報が含 まれている場 合 は、認 証

情報 を利用 しの確認 を行い We b クライアントの素 性 を特定 をする。

なお、認 証 が必 要 ないと判 断 した場合 は、匿 名 ユーザとして、特 定 さ

れる。本 モジュールが処 理 遂 行 に必 要 とする権 限 は、We b 設 定 情

報へのアクセス権 限 である。

• アクセス・チェック

リクエスト解 析 モジュールが特 定 したメソッドとコンテンツ、および認

Page 26: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐17‐

証 モジュールが特 定 したユーザに従 い、アクセスが不 許 可 になってい

ないかを確 認 するモジュールである。認 証 が必 要 と判 断 された場 合

には、コンテンツ・アクセスのモジュールをスキップして、認 証 情 報 を求

めるレスポンスを後 述 するレスポンス作 成 すモジュールで作 成 する。

We b 設定情報 を読み出すことで、指 定 されたコンテンツに対 して、指

定 されたメソッドが許 可 されるか否 かを決 定 する。本 モジュールが処

理 遂 行 に必 要 とする権 限 は、We b 設 定 情 報 に含 まれるアクセス制

御情報へのアクセス権 限 である。

• コンテンツ・アクセス

リクエスト解 析 モジュールによりが特 定 したメソッドとコンテンツに従

い、実 際 にコンテンツにアクセスするモジュールである。適 切 なオペレ

ーティング・システムオペレーティング・システムのアクセス命 令 (システ

ムコール)を呼 び出 し、コンテンツにメソッドを実 行 アクセスする。コンテ

ンツがファイルに格 納 されている場 合 は、ファイル・アクセスの権 限 を

行使する必要 がある。

• レスポンス作 成

レスポンス作 成 モジュールは、コンテンツ・アクセス・モジュールの取

得 したコンテンツを受 け取 り、H T T P の仕様 にしたがって整形 し、レス

ポンスを作 成する。このモジュールは、メモリ内 でのみの作 業 で、ネット

ワーク・アクセスやファイル・アクセスの権限 を必要 としない。

• レスポンス送 信

レスポンス作 成 モジュールが作成 した We b クライアントからのリクエ

ストに対 するレスポンスを返 送 する。レスポンス作 成 モジュールは、リク

エスト受 信 モジュールが確 立 したコネクションに対 して、レスポンス作

成 モジュールが生 成 したレスポンスを送 信 する。確 立 されたコネクショ

Page 27: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐18‐

ンに対するネットワーク・アクセス送 信権限 が必要 となる。

Page 28: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐19‐

• ログ記 録

レスポンス作 成 モジュールが作 成 したレスポンスの内 容 からログ情

報 を作成 して、ログ・ファイルに記録する。このモジュールは、ログ・ファ

イルへの書 き込 みを行 うため、ファイル・アクセス権 限 を必要 とする。

• We b 設定情報

We b サーバーの動作 、および、We b サーバーにおけるアクセス制 御

の振 る舞 いを決 定 する認 証 情 報 やアクセス制 御 設 定 情 報 を含 む。ア

クセス制 御 設 定 の項 目および方 法 は、We b サーバーの実 装 により異

なるが、ほとんどすべての We b サーバーにおいて、We b コンテンツ全 体

に対 するデフォルト設 定 および、サブコンテンツ領 域 毎 のアクセス制 御

を設定 できる。既 存 We b サーバー・ソフトウェアのデフォルトのアクセス

制 御 設 定 は、すべての We b クライアン トに対 して閲 覧 を許 可 する

a l l - a l l o w a n c e 原則に基づいていることが多 い。

本設定情報は、We b サーバー内の認証 モジュールおよびアクセス・

チェック・モジュールから必 要に応 じてアクセスされる。

2 .4 .2 We b サーバーが利用するオペレーティング・システムの機 能

前述のように内 部 モジュールがモデル化 される We b サーバーは、オペ

レーティング・システム上 で動作する 1 アプリケーションである。そのため、

We b サーバーがサービスを提 供するためには、オペレーティング・システム

の機能 を利用する。ここで We b サーバーが必要 とするオペレーティング・

システムの機能は、アクセス制 御 機能 、プログラム実 行機能 、ファイル・ア

クセス機 能 、ネットワーク・アクセス機 能 の 4 つである。以 下 に、それぞれ

の機能 と各 機能 を利用する We b サーバー内のモジュールについて整理

する。

Page 29: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐20‐

• アクセス制 御機能

オペレーティング・システムにおけるアクセスをチェックするオペレーテ

ィング・システム機 能 である。ファイルやネットワーク等 のリソースに対 す

るすべてのアクセスは、本 機 能 によりチェックされる。絶 対 権 限 を持 つ

システム・アカウント( r o o t)によるアクセスに対 しては、本 機能 によるアク

セス・チェックが無 効化 される。

• プログラム実 行機能

プロセスを生 成 して、プログラムファイルからコードを読 み出 し、実 行

するオペレーティング・システム機 能である。We b サーバーの動作や、リ

クエスト処 理 に応 じて必 要 となる処 理 プロセスの生 成 には、本 機 能 が

用いられる。動 的 We b コンテンツは、本 機能 により実 行 されたプログラ

ムにより内 容 が生成 される。

• ファイル・アクセス機 能

ファイルにアクセスするオペレーティング・システム機 能 である。We b コ

ンテンツに対 するアクセスは、本 ファイル・アクセス機 能 により、コンテン

ツを保 存するファイルを読 み出すことにより実 現 される。また、We b サー

バーのシステム処 理 としての、設 定 情 報 の読み出 しや監 査 ログへの書

き込 みも、本 機 能 を用いる。

• ネットワーク・アクセス機 能

ネットワークにアクセスするためのオペレーティング・システム機 能 であ

る。We b サーバー内のリクエスト受 信 モジュールによる We b クライアント

からの接 続 要求待 ちと We b コンテンツに対 するアクセス・リクエスト受

信 、レスポンス返 信 モジュールによるレスポンス返 信 に本 機能 が用 いら

れる。

Page 30: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐21‐

We b サーバーの各モジュールに必要 なオペレーティング・システム機

能 をまとめると、以 下 のようになる。

モジュー

機 能 ファイル・

アクセス

権 限

ネットワ

ーク・アク

セス機 能

プログラ

ム実 行

機能

アクセス

制 御 機能

リ ク エ ス ト

受 信

リ ク エ ス ト

の受 付

リ ク エ ス ト

解 析

リクエストメ

ッセージの

構文解析

認証 認 証 情 報

に 基 づ く

We b クライ

アントの認

○ ( ア カ ウ

ン ト 情 報

の 読 み 出

し)

ア ク セ ス ・

チェック

We b コ ン

テ ン ツ に

対するアク

セ ス 権 確

○ ( ア ク セ

ス 制 御 設

定 の 読 み

出 し)

コ ン テ ン

ツ ・ ア ク セ

We b コ ン

テンツへの

アクセス

○ ○ ( 動 的

We b コン

テ ン ツ の

実行 )

Page 31: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐22‐

表 2 - 1 We b サーバーの各 モジュールが必要 なオペレーティング・シス

テム機 能

2 .5 Web サーバー内の処理フロー

前節の内部 モデルを使 って、コンテンツ・アクセス・リクエストの処 理 フロ

ーをモデル化する。We b サーバー・システムにおける処 理は、We b サーバ

ーの設定 、および We b コンテンツへのアクセス・サービスの 2 種類に分類

することができる。

We b コンテンツへのアクセスは、更 に次の様 に分類 できる :

• 基本 アクセス

• 認証 アクセス

• セッションアクセス

以 下 、ここではそれぞれのフローがどのように発 生 し、We b サーバーと

オペレーティング・システムのアクセス制 御 機 構 が、どのように連 携 するか

について述べる。

レスポンス

作 成

レスポンス

メ ッセージ

の作成

レスポンス

送 信

レスポンス

メ ッセージ

の送信

ログ記 録 リ ク エ ス ト

処 理 の記

Page 32: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐23‐

2 . 5 . 1 . 1 設定時 における処 理 フロー

図 2 - 5 設 定 時 における処 理 フロー

We b サーバーの設定時における処 理 の流れは図 2 - 5 のようになる。

システム管 理者は、We b 設定 ファイルを編 集 して、We b の認証情報や

アクセス管 理 等 を設 定 する。コンテンツ管 理 者は、静 的 もしくは動 的 コン

テンツや関 連 ファイルを更 新 する。また、コンテンツ管 理 者 も、所 有 する

We b コンテンツに対 するアクセス制 御 設 定 を行 うことができる。これらの

設 定 は、We b サーバー稼動前 に行 うため、オペレーティング・システムの

アクセス制 御下でのみ設定権限 を管理する。

OS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能 ファイル・アクセス機能ネットワーク・アクセス機能

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

ログログ

システム管理者

コンテンツ管理者

Webクライアント

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

外部ファイル

OS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能 ファイル・アクセス機能ネットワーク・アクセス機能

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

ログログ

システム管理者

コンテンツ管理者

Webクライアント

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

外部ファイル

Page 33: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐24‐

2 . 5 . 1 . 2 基本サービス時 の処 理 フロー

図 2 - 6 基 本 サービス・フロー・モデル

サービス時 における処 理 は、We b コンテンツのアクセス管 理 設 定 によ

って、 2 つのフローモデルに分 類 できる。基 本 モデルは、最 も一 般 的 な

We b サーバー・システムのサービス・フロー・モデルである(図 2 - 6 参照 )。

We b クライアントからのリクエストは、We b サーバー内 のリクエスト解 析 モ

ジュールで解 析 され、アクセス・チェック・モジュールによりアクセスの許 可

/不 許 可 が判 定 される。アクセス許 可 された後 、コンテンツ・アクセス・モ

ジュールによりオペレーティング・システムに対 して We b コンテンツへのア

クセスが要求 される。

この後 のフローは、アクセス対 象 が静 的 コンテンツか、動 的 コンテンツ

かにより異 なる。アクセス対 象 が静 的 コンテンツの場 合 、オペレーティン

グ・システムのアクセス制 御 機 能 により、対 象 とする静 的 コンテンツが格

納 されたファイルに対 する読 み込 む権 限 があるか否 かが確 認 される。こ

のアクセス制 御 の際 のサブジェクトは、We b サーバーである。ファイル・ア

クセスが許 可 されると、オペレーティング・システムのファイル・アクセス機

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

設定Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ネットワーク・アクセスファイル・アクセス

プログラム実行

ネットワーク・アクセスファイル・アクセス

プログラム実行

ファイル・アクセス機能ネットワーク・アクセス機能

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

設定Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ネットワーク・アクセスファイル・アクセス

プログラム実行

ネットワーク・アクセスファイル・アクセス

プログラム実行

ファイル・アクセス機能ネットワーク・アクセス機能

Page 34: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐25‐

能 を使 い、We b コンテンツであるファイルの取 得 を行 い、レスポンス作 成

モジュール、およびレスポンス送 信 モジュールを通 り、We b クライアントに

レスポンスが返 される。

一方 で、動 的 コンテンツの場合 、アクセス対 象 である動 的 コンテンツに

対 する実 行 権 限 を持 つかどうかが、オペレーティング・システムのアクセス

制 御 機 能 によって検 査 される。このアクセス制 御 の際 のサブジェクトは、

静 的 コンテンツの場合同様に We b サーバーとなる。動 的 コンテンツが実

行 されると、さらに実 行 プログラムを起 動 したり、外 部 ファイルへアクセスし

たりする場 合 がある。これらのプログラム実 行 やファイル・アクセスも、すべ

てオペレーティング・システムのアクセス制 御 機 能 によるアクセス制 御 され

る 。なお 、 このアクセス制 御 の際 のサブジェ ク トは 、実 行 プログラムが

s e t u i d 等 により明 示 的 にサブジェクト変 更 が指 定 されていない限 り、

We b サーバーと同 じである。

2 . 5 . 1 . 3 認証サービス時 の処 理 フロー

図 2 - 7 認 証 サービス・フロー・モデル

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

設定Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

ログログ

システム管理者

コンテンツ管理者

Webクライアント

ネットワーク・アクセス

ファイル・アクセス

プログラム実行

ネットワーク・アクセス

ファイル・アクセス

プログラム実行

ファイル・アクセス機能ネットワーク・アクセス機能

リクエスト

解析

認証

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

設定Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

ログログ

システム管理者

コンテンツ管理者

Webクライアント

ネットワーク・アクセス

ファイル・アクセス

プログラム実行

ネットワーク・アクセス

ファイル・アクセス

プログラム実行

ファイル・アクセス機能ネットワーク・アクセス機能

リクエスト

解析

認証

Page 35: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐26‐

We b コンテンツへのアクセスが、特 定 のユーザもしくはユーザ集合 に対

してのみ許 可 される場 合 には、アクセス・チェック時 のサブジェクトを変 更

する必 要 がある。このような場 合 、どのユーザが、We b コンテンツへのアク

セスを試みているか、認 証する必 要 がある。図 2 - 7 は、認 証 を必要 とす

る場 合 の、処 理 フローを示 したものである。We b サーバー内 でのアクセ

ス・チェックに先 立 ち、認 証 モジュールは、We b クライアントのリクエストに

添 付 された認証情報の確認 を行い、We b クライアントの素 性 を特定する。

その結 果 、We b サーバーでのアクセス・チェック・モジュールにおけるサブ

ジェクトは、認 証 された We b クライアントとなる。そうして、アクセスが許 可

された場 合 に、コンテンツ・アクセス・モジュールにより、オペレーティング・

システムの機能 を用 いて、We b コンテンツへのアクセスが実行 される。

オペレーティング・システムのアクセス制 御 機 能 におけるアクセス制 御

では、We b サーバーの実装方法により、サブジェクトが異 なる。We b サー

バーが認 証するユーザが、オペレーティング・システムとは独 立 して、We b

サーバーにより管 理 されている場 合 、オペレーティング・システムのアクセ

ス制 御 機能 では、We b サーバーが認証 した結果 を利用 することが出 来

ない。つまり、オペレーティング・システムのアクセス制 御 機能 におけるアク

セス制 御 のサブジェクトは、基 本 モデルの場合 と同 様 に、We b サーバー

となる。一 方 で、We b サーバーの認証するユーザが、オペレーティング・シ

ステムにより管 理 されている場 合 、オペレーティング・システムのアクセス

制 御 機能 におけるアクセス制 御 のサブジェクトは、We b サーバーが認証

したユーザとなる。

Page 36: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐27‐

2 . 5 . 1 . 4 セッション・サービス時 の処 理 フロー

図 2 - 8 セッション・サービス・フロー・モデル

We b コンテンツのアクセス制 御 がセッションに基 づいて行 われる場 合

には、一 部 のアクセス ・チェックが前 述 とは異 なる基 準 で行 われる (図

2 - 8 参 照 )。We b サーバーの処 理 モデルがセッションレスであるため、

We b サーバー・システムでセッションを実 現 する場 合 は、動 的 コンテンツ

内 でセッションを実 現 する方 法 が用 いられる。セッション管 理 は動 的 コン

テンツで行 われるため、We b サーバーのアクセス・チェック、および、動 的

コンテンツ・アクセス時 のオペレーティング・システムアクセス制 御 機 能 によ

るアクセス・チェックでは、セッションが考 慮 されない。動 的 コンテンツ内 で

は、送 られてきたセッション情 報 を認 証 して、動 的 コンテンツの振 る舞 い

を自 ら制 御する。

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

設定Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

ログログ

システム管理者

コンテンツ管理者

Webクライアント

ネットワーク・アクセスファイル・アクセス

プログラム実行

ネットワーク・アクセスファイル・アクセス

プログラム実行

ファイル・アクセス機能ネットワーク・アクセス機能

リクエスト

解析

セッション情報

WebサーバーWebサーバーリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

設定Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

ログログ

システム管理者

コンテンツ管理者

Webクライアント

ネットワーク・アクセスファイル・アクセス

プログラム実行

ネットワーク・アクセスファイル・アクセス

プログラム実行

ファイル・アクセス機能ネットワーク・アクセス機能

リクエスト

解析

セッション情報

Page 37: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐28‐

3 Web サーバー・システムの脆弱性分析

本章では、We b サーバー・システムにおいてリスクに晒 される可 能性 の

ある対 象 とその脆 弱 性 を検 証 する。これによって、最 初 に We b サーバ

ー・システムにおいて守 るべき対 象 とその性 質 を明 確 にする。続 いて、そ

れらの対 象 が持 つ脆 弱 性 を基 に、どのような攻 撃 が考 えられるのかを検

討 する。この目 的 は、攻 撃 の種 類 による対 処 方 法 を検 討 することである。

ここで重 要 なことは、具 体 的 な攻 撃 手 段 に対 する対 策 を個 別 に講 じる

対 処 療 法 的 な対 応 を検 討 することではない。特 に、We b サーバーに焦

点 をあて、攻 撃手段 が本質的に We b サーバーのどのような脆 弱性 を利

用 した攻 撃 なのかを理 解 した上 で、We b サーバーの弱 点 を無 くす方 法

も視 野 に入れた対処方法 を検討することである。

We b サーバーの提 供するサービスは多 種 多様 であり、利 用 環 境 も多

種 多様 である。サービス内 容 や利用環 境 によっては、無 視 しうる脆 弱 性

もある。しかし、We b サーバーの持つ脆弱性は、今 日 、一 般的 に実装 さ

れている We b サーバーの実装方法や、仕 様 に拠 るものも少 なくない。こ

こでは、そのような本 質的 な脆弱性 に対する対処方法 を検討する。

3 .1 脅威の対象

図 3 - 1 は、We b サーバー・システムにおける脅 威 の対象 となる点 を図

示 したものである。We b サーバー・システムにおいて、脅 威 の対 象 となる

要 点は大 きく分 けて、次 の 4 つである :

• コンテンツ

We b サーバーが提供するデータである。

• ネットワークを流 れるデータ

We b サーバーと We b クライアント間 の通信 内容である。

Page 38: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐29‐

• We b サーバー

We b クライアントの要 求 に応 じて、We b サーバー・システムを提 供する

主体である。

• We b クライアント

利 用 者 が操 作 し、We b サーバーに対 して、コンテンツの要 求 を行 う

主 体 である。

本節 では、 3 . 2 . 1 節 において攻撃 の種類 を検証するに辺 り、We b サ

ーバー・システムのそれぞれの構 成 要 素 がどのような性 質 を持 ち、どのよ

うな脆 弱性 があるのかを検証する。

ネットワークネットワーク

ネットワークを流れるコンテンツやパスワードなど

Webサーバーのリソース

コンテンツWebクライアント Webサーバー

Webクライアントのリソース

図 3 - 1 We b サーバー・システムにおける脅 威 の対象

3 .1 .1 コンテンツ

コンテンツは、We b サーバーが提 供 する情 報 を示 す。コンテンツ管 理

者 によって作 成 され、We b クライアントの要 求 に応 じて、We b サーバーに

よって配 信 される。

コンテンツには、静 的 コンテンツと動 的 コンテンツがある。静 的 コンテン

ツは、コンテンツ管 理 者 が作成 した時 点 で内 容 が固定 され、We b クライ

アントから要 求 されると、常 に同 じ内 容が We b サーバーによって返 される。

Page 39: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐30‐

通常の X H T M L のみで記述 されたコンテンツが、これにあたる。一 方 で、

動 的 コンテンツは、コンテンツ管 理 者 が作成 した時 点 では内容 が固定 さ

れず、We b クライアントからの要 求 に応 じて、内 容 が変 化 する性 質 を持

つ。通 常 、動 的 コンテンツでは、We b クライアントから与 えられた情 報 を

基 にコンテンツが自動生成 される。P H P や P e r l などのスクリプト言 語 に

よって記 述 されたコンテンツが、これにあたる。

いずれのコンテンツであっても、コンテンツ管 理 者 の想 定 した利 用 者 に

対 して、コンテンツ管 理 者 が作 成 した内 容 で提 供 されなければならない。

コンテンツ管 理 者 は、作 成 したコンテンツがオリジナルのまま、自 身 の意

図 とは異 なる内 容 に改 変 されずにコンテンツ管 理 者 が認 める利 用 者 に

配 信 されることを期 待 する。したがって、コンテンツが、コンテンツ管 理 者

の意 図 しない形 に改 竄 されることや、コンテンツ管 理 者 の意 図 しない利

用 者 に取 得 されることを避 けなければならない。改 竄 には、静 的 コンテン

ツの内容 を改変する場合 から、動 的 コンテンツが本来 想定 していない動

作 をさせ、コンテンツ管 理 者 が意図 しなかった内 容 を返 してしまう場 合 ま

でが想 定 される。後 者 の例 として、動 的 コンテンツの実 装 上 のミスから、

想 定 外 の入 力 が動 的 コンテンツに与 えられることで、本 来 の意 図 とは異

なる動 作 をし、We b サーバー上に蓄 えられた個人情報 などを取 得 された、

という事 例 がある。

3 .1 .2 ネットワークを流れるデータ

We b サーバー・システムは、ネットワークを介 して、We b クライアントと

We b サーバーが通 信 を行 うことで成 立 する。従 って、この過 程 では、

様 々な情 報 がネットワーク上 を流 れるため、漏 洩 や改 竄 のリスクを負 う。

ネットワーク上 を流 れる情 報で、重 要 なものが 2 つある。1 つは、We b サ

ーバーが利 用 者 を特 定 するための認 証 情 報 である。そして、 2 つめは、

We b サーバーによって提 供 されるコンテンツである。これらの情 報 は、第

Page 40: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐31‐

3 者に漏れることや、改 竄 されることが避 けられなければならない。

まず、漏 洩 の問 題 について、認 証 情 報 とコンテンツについて検 証 する。

認 証 情 報 は、We b サーバーが利 用 者 を特 定 する唯 一 の手 段 である。

認 証 情報 には、We b サーバー・システムを利 用するためのユーザ・アカウ

ントとパスワードの他 、認 証 完 了 後 に We b サーバーが、認 証 済 みの

We b クライアントを識 別するために発 行するセッション識 別 子 も含 まれる。

認 証は、ある利 用者 と We b サーバーのみが知 っている情 報 (鍵 )があると

仮 定 し、その 2 者のみが知 る情報 を照合することによって成 立する。その

利用者 と We b サーバー以外の第 3 者に鍵 を知 られた場合 であっても、

We b サーバーは、正 規 の利用者のみが鍵 を知 っていると仮 定するため、

正 規 の利 用 者 と偽 の利 用 者 の識 別 ができない。そのため、このような情

報 が漏洩することは避 けなければならない。

コンテンツは、コンテンツ管 理 者 が想 定 する利 用 者 にのみ提 供 される

べき性 質 のものである。例 えば、企 業 や自 治 体 などで、個 人 情 報 などの

取 り扱 いに注 意 が必 要 なコンテンツや、その組 織 の機密 情 報 にあたるコ

ンテンツを閲 覧できる We b サーバー・システムにおいては、第 3 者にコン

テンツの内 容 が漏 れることを避 けなければならない。一 方 、企 業 や自 治

体が一般向 けの広報 に使用する We b サーバー・システムにおけるコンテ

ンツは、万 人 向 けの内 容 であるため、一 般 論 として情 報 の機 密性 が無 く、

内 容 自体は、利 用者以外の第 3 者に知 られても問 題 が無い。しかし、

どの利 用 者 が、どのようなコンテンツを利 用 しているかは、プライバシーの

問 題 であり、個 人 情 報 にあたるものである。従 って、どの利 用 者 が、どの

ようなコンテンツを要 求 しているかは、第 3 者に知 られても良 い内容では

ない。

また、改 竄 の問 題 であるが、通 信 が暗 号 化 されていない環 境 では、通

信 の相 手 が、本 当 に自 分 が通 信 しようとしている相 手 か、保 証 できない

場 合 がある。暗 号 化 や署 名 されていないデータは、容 易 に偽 造 が出 来

る。これを利 用 し、利 用 者 が要 求 したコンテンツを改 竄 することで、偽 の

Page 41: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐32‐

情 報 を利 用 者 に渡 すことや、利 用 者 が望 まないコンテンツに改 変 するこ

とが可 能 となる。しかし、S S L などで暗 号 化 を行 っている場 合 でも、正 し

く設 定 されていない場 合 には、M a n - I n - T h e - M i d d l e 攻 撃 に代 表 され

るような方 法 などで、ユーザ名 やパスワードなどの認 証 情 報 漏 洩 や改 竄

が容易 に発生 しうる。また、通 信 時 のソース I P アドレスを偽 造 し、通 信

相手 を誤認 させることで、同 様 の漏洩や改竄が行 われる場 合 もありうる。

3 .1 .3 We b サーバー

We b サーバーは、ネットワーク上 に配 され、想 定 される利 用者 に応 じて

決 められたネットワークの範 囲 内 からであれば、通 常 、どこからでもアクセ

スができる。We b クライアントを限 定 できない場 合 は、インターネット上 の

あらゆる場 所 から、アクセスができるようになる。利 用 者 にとって、このこと

は多 くの利 便 性 をもたらすが、同 時 に、悪 意 のある者 に対 しても、多 くの

利 便性 を与 える。

一般的に、We b サーバーは、汎 用 のオペレーティング・システム上 で動

作 するプログラムの 1 つと して運 用 される 。多 くの場 合 、 L i n u x や

S o l a r i s などの U N I X 系オペレーティング・システムや Wi n d o w s オペレ

ーティング・システム上 で運 用 される。汎 用 のオペレーティング・システム

であるため、We b サーバー以外のプログラムを実 行することも可 能 になっ

ており、場 合 によっては、We b サーバー以 外 に、メール・サーバーなどの

プログラムも多 数動作 していることがある。つまり、We b サーバーには、大

きく分 けて 3 つの脅威 の対象 が考 えられる。We b サーバー・システム自

体 、We b サーバーのリソース、そして、We b サーバー・システム以 外 のリソ

ースである。ここでリソースとは、We b コンテンツ、プログラム・ファイルおよ

び設 定 ファイルなどのファイル、および、メモリなどのオペレーティング・シ

ステムが管理する資源 を意味するものである。

このような環 境 においては、We b サーバーの動作するシステム上 のあら

Page 42: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐33‐

ゆるプログラムが、脅 威 の対象 となる。しかし、We b サーバーは、システム

管 理者 が We b サーバー・システムを提 供するために運用するものである。

従 って、システム管 理者 の意図 しない形 で We b サーバーが利用 されるこ

とや、We b サーバーのサービス自 体 が停止することは避 けなければならな

い。そのためには、We b サーバーが動作する計算 機上 のオペレーティン

グ・システムを含 む、あらゆるプログラムの脆 弱 性 について考 慮 する必 要

がある。

3 .1 .4 We b クライアント

We b クライアントは、ネットワークを利 用 して、We b サーバーに対 してコ

ンテンツを要 求 し、得 られたコンテンツを表 示する。We b クライアント自 体

の脆弱性は、We b サーバーの保護 という観 点 からは影響 しないが、We b

サーバー・システムというエコシステムにおける重 要 な役割 を担 う We b クラ

イアントも、守 られなければならない対象 である。

We b クライアントは、通 常 、Wi n d o w s などのオペレーティング・システム

上 で動作する We b ブラウザ・アプリケーションとして実 現 される。悪 意 の

ある者 は、仕 掛 けを施 した We b サーバーを用 いて、We b クライアント上 で

任 意 のプ ロ グ ラ ムが実 行 す る こ と が あ る 。 例 えば 、 利 便 性 のために

A c t i v e X のような We b サーバーよりダウンロードしたプログラムを We b ク

ライアント上 で実 行 する仕 組 みを利 用 すると、悪 意 のある者 により、想 定

していないプログラムが実行 されることがある。

利 用 者 は、コンテンツ管 理 者 の提 供 するコンテンツを安 心 して閲 覧 す

ることのみを期 待 する。つまり、We b サーバーが提 供 するコンテンツの信

頼性や安全性が保証 されることを、利 用 者は期待する。

Page 43: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐34‐

3 .2 Web サーバーに対する攻撃手段の分析

3 . 1 節において、We b サーバー・システムには、どのような脆 弱性 が潜

みうるのかを検 証 した。本 節 では、その検証 に基づき、特 に We b サーバ

ーにおける脅 威 の対 象 の脆弱性に対 して、悪 意 を持 つ者 によって、どの

ような攻 撃 が考 えられるかを検 証 する。ここでは、攻 撃 の種類 を検 証する

上 で、2 章 で紹介 した We b サーバーのモデルを利用する。We b サーバ

ーのモデルを活用することで、We b サーバーの、どの部分 に脆弱性が具

体的に潜むのかを分析する。

3 .2 .1 攻撃の種類

We b サーバーに対する攻撃は、大 きく分 けて 2 種類に分類 される。攻

撃 を積 極 的 に仕 掛 けるアクティブ攻 撃 と、仕 掛 けを施 しておいて、その

仕掛 けに引 っかかるのを待つパッシブ攻撃 である。

ア ク テ ィ ブ 攻 撃 に は 、 大 き く 分 け て 侵 入 攻 撃 と

D e n i a l - o f - S e r v i c e ( D o S )攻撃の 2 種類がある。侵 入 攻撃 とは、We b

サーバーに侵入 し、コンテンツやWe b サーバーの様々なリソースに対 して

不 正 にアクセスを行 う攻 撃 である。D o S 攻撃 とは、We b サーバーを機能

不 全 の状 態 にし、サービスを継 続 できなくする攻 撃 である。侵 入 攻 撃 に

は、次 のような種 類 がある :

• なりすまし

• ソフトウェアのバグの利用

• 設定 ミスの利 用

• 仕様上の問題 を利用

• バックドアの利用

Page 44: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐35‐

また、D o S 攻撃には、次 のような種 類 がある :

• ソフトウェアのバグの利用

• 過負荷

最後に、パッシブ攻撃 には、次 のような攻 撃 がある :

• クロスサイト・スクリプティング

• 盗聴

3 .2 .2 なりすまし

なりすましとは、正 規 の利 用 者 になりすまして、不 正 にサービスを利 用

する攻 撃 である。この攻 撃 は、認 証 の仕 組みが単 純 であればあるほど行

いやすい。We b サーバーから見 たとき、なりすましによる侵 入 は、正 規 の

アクセスに見 えるため、防 御 が困 難であるという特 徴 を持つ。

なりすましには、2 種類の攻撃 が考 えられる。1 つは、正 規のユーザ名

とパスワードを利 用 し、不 正 アクセスを行 う方 法 である。悪 意 のある者 は、

ユーザ名 とパスワードを様 々な方 法 によって入 手 し利 用 する。例 えば、

H T T P の B a s i c 認証 を使 う場 合 、基 本的 にパスワードは B a s e 6 4 符号

化 されるが、暗 号 化 されていないため、元 のユーザ名 とパスワードを容 易

に取 り出 すことが出 来 る。そのため、H T T P のやり取 りを盗 聴 されると、容

易 にユーザ名 とパスワードが入 手 される。これ以 外 にも、容 易 に推 測 され

るユーザ名 やパスワードを利 用 している場 合 、辞 書 や推 論 によってユー

ザ名 やパスワードの組 み合 わせを試 され、解 析 されるブルート・フォース

攻 撃 と呼 ばれる方 法 もある。

もう一 つのなりすましによる攻 撃 は、We b サーバーから返 されるクッキー

に埋 め込 まれたセッション情 報 を不 正 利用 する方 法 である。H T T P は、

基 本的 に 1 つの H T T P リクエストに対 して、1 つの H T T P レスポンスで

成立するセッションレスのプロトコルである。しかし、実 際 の We b サーバー

Page 45: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐36‐

を利 用 した We b アプリケーションでは、複 数 のこうしたやり取 りを組 み合

わせてセッション指 向 のサービスを提 供 することが多 い。そのため、We b

サーバーは、We b クライアントと、そのセッションを識 別 するため、セッショ

ン識 別子 を生成 し、We b クライアントにクッキーや U R I に埋め込 んだ形

式で渡す。そうして、We b クライアントが We b サーバーに対 してリクエスト

を送 信 するたびに、セッション識 別 子 を送 ることを要 求 する。悪 意 あるも

のは、このセッション識 別子 を入手することで、セッションを確 立 した We b

クライアントになりすまし、We b サーバーに不 正 アクセする。セッション識

別 子 の生 成 方 法 が単 純 であればあるほど、このなりすましを見 抜 ける可

能性 が低 くなる。

なりすましは、パッシブ攻 撃 の盗 聴 と組 み合 わせて行 われることが多 い。

盗 聴 によって入 手 した情 報 を利 用 し、なりすましによる攻 撃 が仕 掛 けら

れる。

図 3 - 2 と図 3 - 3 は、なりますしによる攻 撃 が対象 とする We b サーバ

ーの脆弱部分 を図示 したものである。図 中 の星印 が付 けられた部分 が、

この攻 撃 が狙 う脆 弱 部 分 である。正 規 のユーザ名 とパスワードを利 用 し

たなりすましの場 合 、利 用者である We b クライアントの使 用するユーザ名

やパスワードが容 易 に推測可能 なものであることが考 えられる (図 3 - 2 )。

利 用 者 が簡 単 なユーザ名 やパスワードを選 択 した場 合 、この部 分 は非

常 に脆 弱 となる。結 果 として、We b サーバーの認 証 モジュールが騙 され、

正 規利用者 が利用 していると誤 認するようになる。

Page 46: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐37‐

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 2 なりすまし:ユーザ名 とパスワードの利 用

セッション情 報 を横 取 りしたなりすましの場 合 、セッション情 報 が正規 の

利 用 者 によって使 用 されているか否 かを判 断 するロジックが単 純 であれ

ばあるだけ、不 正 アクセスに利 用 される可 能 性 が高 くなる。この場 合 、動

的 コンテンツが利用するセッション情 報 が脆弱部分 となる (図 3 - 3 )。

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 3 なりすまし:セッション情 報 の利 用

Page 47: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐38‐

3 .2 .3 バグの利用

We b サーバーは、様 々なソフトウェアを組 み合わせて実現 ・運 用 される。

そのため、ソフトウェアにバグが含 まれる可 能 性 は、決 してゼロにはならな

い。We b サーバーを含 め、あらゆるソフトウェアには、必 ずバグが潜 む可

能性があり、バグが存在する可能性 を前提 とする必 要 がある。

バグを利 用 した攻 撃 の代 表 的 なものには、バッファ・オーバフロー攻 撃

やストリング・フォーマット攻 撃 がある。バッファ・オーバフロー攻 撃は、プロ

グラムが使用するメモリ上 のバッファに、プログラムが想定 した以上 のデー

タを入 力 することで、設 計 意 図 と異 なる動 作 をプログラムにさせる攻 撃 で

ある。プログラムのバグを利 用 した攻 撃 としては、最 も良 く使 われる攻 撃

方法である。We b サーバーのようなシステム開 発に良 く使 用 されるプログ

ラミング言 語 ( C 言語 など )では、静 的 に確保 された配列 に対 して、確 保

した以 上 のサイズのデータを配 列 などに代 入 することができる。また、プロ

グラミング言 語 として、バッファ・オーバフローを検 知 する仕 組 みを持 たな

いため、プログラマの責 任 で確 認 を行 うことが求 められている。そのため、

バッファ・オーバフロー攻撃 の原因 となる脆 弱部分 が出来やすい。

ストリング・フォーマット攻 撃 は、C 言語の標準関数 p r i n t f ( )に対 して、

本 来 静 的 な文 字 列 を渡 すストリング・フォーマットに、動 的 に入 力 された

デー タ を 渡 し て し ま う バ グ を 利 用 す る攻 撃 で あ る 。 こ の場 合 、 関 数

p r i n t f ( )に渡 ると予 想 される入 力 データに、p r i n t f ( )が解 釈 するストリン

グ・フォーマットを基 にした悪 意 のあるコードを渡 すことで、バッファ・オー

バフロー攻撃 と同 じ効 果 を得 ることが可 能 となる。

利用者がフォームに入力 した値 を元 に S Q L 文 を発行 しデータベース

から結 果 を取 得 し、レスポンスを返 す動 的 コンテンツでは、利 用 者 が入

力 した値 に S Q L 文が含 まれると、それによって任 意 の S Q L 文 を実行 さ

れる可 能 性 がある。この脆 弱 性 は、入 力 値 に想 定 外 の文 字 列 が入 って

いないことを確 認 していない場合 に発生する。

Page 48: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐39‐

いずれの攻 撃 も、基 本 的 には、プログラマが安 易 に「これ以 上 のサイズ

の入力データは来 ないはず」や「このような入 力データは来 ないはず」とい

う想 定 の元 に、例 外 を考慮せずに実装 していることが原 因 である。

この脆 弱 性 が潜む可能性 がある部 分 は多岐 に渡 る (図 3 - 4 )。この脆

弱 性は、全 てのプログラムに潜む可能性 があるため、全 ての実 行可能 な

プログラム (図中の We b サーバー、O S、実 行 プログラム、および、動 的 コ

ンテンツ )が脆弱部分 となりうる。

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 4 バグの利 用

3 .2 .4 設定 ミスの利用

システム管 理 者 やコンテンツ管 理 者 は、We b サーバーの挙 動 を設 定

ファイルに定義することで、目 的 に応 じた We b サーバーのサービス内 容

を設 定 する。しかし、この設 定 に間 違 いがあると、その設 定 ミスをついた

攻撃 の対象 となる可 能性 がある。

例 えば、特 定 のユーザやネットワークの範 囲 外 からのアクセスを許 可 し

Page 49: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐40‐

ない設 定 をしている場 合 を考 える。この時 、入 力 ミスにより、ユーザ名 や

ネットワークの範 囲 指 定 を誤 ると、本 来 の想 定 外 の利 用 者 にアクセスを

許 す可 能 性 がある。具 体 的 には、社 外 と社 内 向 けのコンテンツを同 じ

We b サーバー上で公開 しているとする。この時 、社 内 向 けのコンテンツは、

社 内 のイントラネットからのアクセスのみを許 可するために、社 内 L A N の

I P アドレス範 囲 からのみアクセスできるように設 定 したとする。この設 定は、

システム管 理 者 およびコンテンツ管 理 者 によって行 われる。しかし、この

範 囲 指 定 に誤 りがあると、場 合 によっては、社 内 向 けのコンテンツが社

外 からもアクセスできる可 能 性 がある。これにより、設 定 ミスによって、不

正 アクセスが引 き起 こされる。

通常 、We b サーバーを導入すると、最 初 にデフォルトの We b サーバー

設定 ファイルが用意 される。We b サーバー設定 ファイルは、We b サーバ

ーの動 作 確 認 を行 うため、一 般 的 な設 定 項 目 が予 め記 述 されている

(デフォルトの We b サーバー設定 ファイル )。しかし、一 部 のデフォルトの

We b サーバー設 定 ファイルには、不 必 要 な設 定 が記 載 されているため

に、システム管 理 者 らの気 がつかないうちに脆 弱 性 を持 つ場 合 がある。

古 い A p a c h e や N C S A h t t p d では、p h f と呼 ばれるサンプルの C G I ス

クリプトが自 動的 に C G I スクリプトとしてインストールされ、かつ、C G I スク

リプトが使 える設 定 がデフォルトで行 われる。この p h f を使 用することで、

任 意 のコマンドを We b サーバー上で実行 できるという脆 弱 性 ができ、パ

スワード・ファイルを盗 まれるなどの攻撃 を受 ける結 果 となった。

基本的に、設 定 ミスの脆 弱性は、We b サーバーの設定 を行 うシステム

管 理者やコンテンツ管 理者 によって引 き起 こされる (図 3 - 5 )。We b サー

バーを導入 し、サービスを開 始する際 に使用する初期 の We b サーバー

設 定 ファイルのチェックが不 十 分 である場 合 や、設 定 変 更 後 の確 認 が

不 十 分 な場 合 に、意 図 しない設 定 がされる可 能 性 が高 い。通 常 、We b

サーバーのデフォルト設 定 では、原 則 公 開 ( A l l - a l l o w a n c e )とすること

が多 い。そのため、意 図 しないコンテンツが、意 図 しない範 囲 に公開 され

Page 50: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐41‐

てしまう事 態 が発 生 し易 い。また、その結 果 として、コンテンツのみならず

We b サーバー全体が攻撃の対象 となる場 合 もある。

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 5 設 定 ミスの利 用

3 .2 .5 仕様上の問題の利用

仕様上の問題 には、2 種類 ある。1 つは、各 ソフトウェアやプロトコルの

仕 様 そのものに脆 弱 性 がある場 合 である。この問 題 では、動 的 コンテン

ツや実行 プログラムの仕様 、O S や We b サーバーなどのソフトウェア仕 様 、

および H T T P などの通 信 プロトコルの仕 様 などの問 題 点 を利 用 して攻

撃 される。この攻 撃 の特 徴 は、仕 様 上 の問 題 であるため、プログラムは、

仕 様 に基 づく正 しい動作 を行 っているにも関 わらず、不 正 アクセスなどの

攻撃 に晒 されることである (図 3 - 6 )。

もう 1 つの問題 は、複 数 のソフトウェアやプロトコルを組 み合 わせて利

用する場 合 に、互 いの仕様 の違 いから生 まれる脆 弱 性 である。この問 題

は、通 常 、オペレーティング・システムとその上 で動作する We b サーバー

Page 51: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐42‐

などのアプリケーションが、互 いに独 立 して設 計 されるために発 生 する。

汎 用 のオペレーティング・システムを利 用 することのメリットは、アプリケー

ションを、プラットフォーム非 依 存 にした設 計 がができることである。しかし、

その一 方 で、システムを全 体 としてみたときに、セキュリティ・ポリシーに一

貫 性 が無 いなどの問 題 が発 生 することもある。目 的 が明 確 になっており、

かつ、高 いセキュリティが求 められる場 合 は、システム全 体 として、仕 様 が

統一 される必 要 がある。

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 6 仕 様 上 の問題

3 .2 .6 バックドアの利用

バックドアとは、正 規 の認 証手続 きを回 避 し、システムにアクセスするた

めの手段 である。本 来 、We b サーバーへのコンテンツ要 求は、全 て We b

サーバーの正 規 の通 信 ポートに対 して発 行 される。保 護 が必 要 なコンテ

ンツに対 するアクセスの場 合 、認 証 機 構 などによって、あらゆる不 正 アク

Page 52: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐43‐

セスから堅 牢 に守 られるように設 計 される。そのため、利 便 性 が低 くなる

場 合 や、デバッグなどの試 験 が行 い難 くなる場 合 がある。そこで、システ

ム管 理 者 やコンテンツ管 理 者 が運用上 の利便性 などから、正 規 の方 法

以外でも We b サーバーにアクセスできる仕 組みであるバックドアを用 意す

ることがある。また、悪 意 のある者 が、システムに侵 入 し、後 から再 度 侵

入できるようにするために、バックドアを設 置する場合 もある。

前 者 の例 としては、あるコンテンツにアクセスするためにユーザ名 とパス

ワードが必 要 だとする。しかし、コンテンツ管 理 者 やシステム管 理 者 が、

管 理 のためにアクセスする際 に自 分 もパスワードを入 力 するのは面 倒 で、

自 分自身 が使用する We b クライアントの I P アドレスが常 に一定 だと考 え、

特 定 の I P アドレスからの H T T P リクエストには無条 件 に受 け付 けるよう

な設 定 を行 うと仮 定 する。こうすると、悪 意 ある者 は、 I P アドレスを偽 造 し

たり、その I P アドレスを奪 うことで、正 規 のユーザ名やパスワードを使 用

せずに、コンテンツにアクセスできるようになる。このように、通 常 のアクセス

経 路 よりも、守 りが弱 くなるケースが往 々にして、バックドアの場 合 起 こりう

る。

後 者 の例 では、悪 意 ある者 がバッファ・オーバフロー攻 撃 などによって、

We b サーバーに侵 入 し、システム管 理 者 などの権 限 を奪 い、バックドア

の設 置 を行 う。これにより、悪 意 ある者 は、いつでも We b サーバーに容易

に再侵入することが可 能 になる。

この脆 弱 性 は、システム管 理 者 やコンテンツ管 理 者 が意 図 したか、し

ないかに関 わらず、認 証 機 構 を回 避 される問 題 である (図 3 - 7 )。従 って、

脆 弱 部 分 は、管 理 者 自 身 と、そのようなバックドアを持 つ可 能 性 がある

部 分である。

Page 53: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐44‐

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 7 バックドアの利 用

3 .2 .7 D o S

D o S 攻撃の目的は、We b サーバーを機能停止状態に陥 らせることで

ある。この攻 撃 自 体 によって、コンテンツなどが不 正 にアクセスされること

はない。しかし、We b サーバーが機能停止 させられることにより、We b サ

ーバーの本 来 の目 的 が達 成 されなくなる。この攻 撃 の特 徴 は、基 本 的

にシステムを過 負 荷 の状 態 に陥 らせることである。その方 法 としては、主

に、O S や We b サーバーのバグを利用するものと、単 純 に大量 のリクエス

トなどを We b サーバーに対 して発行することで機 能不全 に陥 らせる 2 通

りの方 法 がある。

前 者 の例 としては、ネットワークから不 正 なパケットが送 られてきた際 に、

パケット解 析 部 分 にバグがあり、パケットの処 理 が完 了 できなくなるという

脆 弱 性 を持つ場合がある。例 えば、Wi n d o w s 2 0 0 0 は、デフォルトで起

動 される M i c r o s o f t L A N M a n a g e r ( L A N M A N )は、カーネル・メモリを

確 保 しパケットを受 信 する。不 正 なパケットを受 信 すると正 しくパケットを

Page 54: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐45‐

処理 できず、更 にメモリを確 保する。最 終 的 には、メモリを 1 0 0 %使い切

るまでカーネル内 でメモリを確 保 するため、システム全 体 が機 能 不 全 に

追い込 まれる。また、We b サーバーの A p a c h e も一 部 のバージョンで、ロ

グ・ファイルを書 き込 むディスクがあふれた場 合 の処 理 が正 しく出 来 ない

ため、大 量 のリクエストを送 り、ログ・ファイルを書 き込 むディスクを溢 れさ

せることで、サービスを停 止 させることが可 能 である。

後者の例 としては、We b サーバーの処理能力以上のリクエストを大 量

に送信することで、機 能 不全 に陥 らせるものである。O S レベルで機能不

全に陥 らせる攻 撃 としては、T C P F l o o d と呼 ばれる S Y N / A C K / R S T フ

ラグを不 正 に設定 した大量 のパケットを送 信するものや、P i n g F l o o d の

ような I C M P E c h o R e q u e s t / R e p l y パケットを大 量 に送信するものなど

がある。これらの特 徴 は、プロトコルの仕 様 の裏 をつき、ネットワーク・プロ

トコル・スタックが正 規 の処 理 を行 おうとして、大 量 の処 理 によって機 能

不 全 に陥 ることを利 用 する。また、We b サーバー・レベルでは、正 しく同

時 リクエスト数 などの制 限 が行 われていない We b サーバーにおいて、

We b サーバーの処理能力以上の H T T P リクエストを送 信することで機

能不全 に陥 らせる攻 撃 もある。

この脆 弱 性は、基 本 的 に仕様やソフトウェアのバグに起因する。そのた

め、脆 弱部分は、図 3 - 8 に示すように We b サーバー、O S、実 行 プログ

ラムや動的 コンテンツになる。

Page 55: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐46‐

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 8 D o S 攻撃

3 .2 .8 クロスサイト・スクリプティング

クロスサイト・スクリプティングは、厳 密 には、We b サーバーに対 する攻

撃ではない。We b クライアントへの攻撃である。しかし、この攻 撃は、We b

サーバーの動的 コンテンツの脆 弱 性 を利 用 したものであるため、We b サ

ーバーが悪 意 のある者 に利 用 されないように、脆 弱 性 を無 くす必 要 があ

る。

クロスサイト・スクリプティングは、We b クライアントが、悪 意 のある者 によ

って仕 掛 けられたリンクに埋 め込 まれたスクリプトを、脆 弱 性 のある We b

サーバーを経由することで、利 用 者 の気がつかないうちに We b クライアン

ト上 で実行する攻撃である。

悪 意 のある者 は、利 用 者 がリンクをクリックするか、フォームの送 信 ボタ

ンをクリックすると、利 用 者 が信用する他 のサイトへ H T T P リクエストを送

信 するように仕 掛 ける。このリクエストには、< S C R I P T >エレメントなどで、

任 意 のコードを埋 め込 んでおく。リクエストを受 け取 った We b サーバーが、

Page 56: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐47‐

何 も考 慮 せずに受 け取 ったリクエストを動 的 コンテンツによって生 成 され

る H T M L に埋め込むとする。すると、これを受 け取 った We b クライアント

は、悪 意 のあるものが埋 め込 んだスクリプトを気 がつかないうちに実 行 す

ることになる。この脆 弱 性は、動 的 コンテンツが受 け取 ったリクエストを、そ

のまま H T M L の一部 に再利用することにある (図 3 - 9 )。

この脆 弱性 を利用 されると、We b サーバーやコンテンツ自 体 に被害は

無 い。しかしながら、このような攻 撃 に利 用 される足 がかりとして、We b サ

イトとしての評価 を下 げることを避 けられない。

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOS

アクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 9 クロスサイト・スクリプティング

3 .2 .9 盗聴

この攻 撃は、We b クライアントや We b サーバーの送受信する通信 を傍

受 することで、様 々な情 報 を盗 み取 るものである。S S L などの暗 号 化通

信 を利 用 していない通 信 は、この攻 撃 の格 好 の標 的 となる。コンテンツ

が公 のものであれば問題 ないが、公 で無 く、コンテンツ自 体 が保 護 されな

Page 57: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐48‐

ければならない場 合 、この攻 撃 に晒 される、情 報 の漏 洩 に繋 がる。また、

H T T P の B a s i c 認証 を用 いている場 合は、容 易 に悪 意 ある者 にユーザ

名 とパスワードを盗 られる事 になる。

盗聴は、ネットワークだけで無 く、同 じ O S 上の別の悪意 ある利 用者 に

よって行 われる可 能 性 もある。例 えば、パスワードを変 更 するプログラムを

管 理 者権 限 によって置 き換 え、パスワードを盗 み取 る機 能 が混 入 される

と、パスワード変 更 を行 うたびに、新 しいパスワードを悪 意 のある利 用 者

に盗 られることになる。

図 3 - 1 0 は、この攻 撃 に対 する脆 弱 部分 を示 したものである。この攻

撃は、外 部 とのネットワーク部 分 、および、O S が脆弱部分 となりうる。

WebサーバWebサーバリクエスト

受信

リクエスト

受信

OSOSアクセス制御機能アクセス制御機能

プログラム実行機能プログラム実行機能

リクエスト

解析

リクエスト

解析

認証認証

チェック

アクセス

チェック

アクセス

コンテンツ

アクセス

コンテンツ

アクセス

レスポンス

作成

レスポンス

作成

レスポンス

送信

レスポンス

送信

ログ記録

ログ記録

Web設定ファイル

Web設定ファイル

Web設定情報Web設定情報

静的コンテンツ

静的コンテンツ

動的コンテンツ

動的コンテンツ

実行プログラム

実行プログラム

外部ファイル

外部ファイル ログログ

システム管理者

コンテンツ管理者

Webクライアント

ファイル・アクセス機能ファイル・アクセス機能

セッション情報

セッション情報

ネットワーク・アクセスファイル・アクセスプログラム実行

ネットワーク・アクセスファイル・アクセスプログラム実行

図 3 - 1 0 盗 聴

Page 58: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐49‐

3 .3 脆弱性対策の方針

3 . 2 節 で検証 してきたように、We b サーバーには、様 々な脆弱性 が潜

む。We b サーバーが、本 来 の目 的 を達 成 するためには、それぞれの脆

弱性 に対する対 策 を講 じるにあたり、その方 針 を議 論する。脆 弱性 に対

する対 策 には、様 々な方 針 が考 えられるが、ここでは、T h e O p e n We b

A p p l i c a t i o n S e c u r i t y P r o j e c t の示す We b アプリケーションにおける

セキュリティの指 針 を元 に脆弱性対策の方向性 を示す 1。

• 入出力 をチェックすること

We b サーバーの受 け取 る全 てのデータの入 出 力 は、それ自 体 に問

題 が無 いか確 認 される必 要 がある。バッファ・オーバフロー攻撃やクロ

スサイト・スクリプティング攻 撃 などは、このチェックによって、十 二 分 に

防 ぐことが可 能である。

• 安全にフェイルすること

認 証 で本 人 確認 に失 敗するなどして、セキュリティ・チェックに失 敗 し

た場合 、安 全 に終了する必 要 がある。例 えば、認 証 に失敗 した場 合

は、その後 、そのセッションの全 てのリクエストを受 け付 けないようにし

なければならない。これによって、セッション識 別 子 を利用 したなりすま

しを防 ぐこともできる。

• シンプルにしておくこと

セキュリティは、可 能 な限 りシンプルであるべきである。複 雑 なシステム

であればあるほど、利 用 者 は、そのセキュリティ対 策 を全 く使 わないか、

1

h t t p : / / w w w. o w a s p . o r g / d o c u m e n t a t i o n / g u i d e / g u i d e _ a b o u t . h tm l

Page 59: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐50‐

迂 回 しようとする。結 果 として、バックドアを設 置 し、容 易 に認 証 系 を

回 避 する仕 組 みを作 ろうとする。このような管 理 者 の意 識 の問 題 に

起因する脆 弱 性 の対策は、このような考 え方 によって、ある程 度 抑 え

ることができる。

• 信用できる機 構 を利用すること

脆 弱 性 の問 題 は、多 くの管 理 者 が同 じ問 題 に直 面 し、様 々な対 策

を採 ってきている。多 くの場 合 、既 に脆 弱 性 を解 決 する方 法 が示 さ

れている。特 に、バグを利 用 した脆 弱 性 を解 決 するには、既 知 の対

策 を採 ることで、バグ対 策 が新 たなバグを生 み出 す可 能 性 を軽 減 す

ることが出 来 る。

• 防御の層化 をすること

全 ての防御 を 1 つの機構で行 うのは、現 実的ではない。全 ての例外

を想 定 し、その全 てに対 策 を講 じることは困 難 だからである。防 御 を

何 層 にも分 けることで、1 つの機構 で取 りこぼしたセキュリティ上 の問

題 を、別 の機 構 で守 るような方 法 を考 慮 すべきである。例 えば、We b

サーバーのアクセス制 御 で取 りこぼしたセキュリティ上 の例 外 は、O S

のアクセス制 御機構 によって保 護できるようにするべきである。

• We b サーバーのセキュリティ・レベルは最 も脆 弱 な部分 と同 レベル

We b サーバーが幾 ら強 固 なセキュリティ対 策 が施 されていても、バッ

クドアが設 置 されていれば、セキュリティ対 策 は無 いに等 しい。例 えば、

1 2 8 b i t S S L などを使 って通信部分 のみを保護 しても、We b サーバ

ーへの侵 入 が容 易 であれば、このような対 策 は意 味 が無 い。コンテン

ツなどを容 易 に別 の方 法 で盗 み取 れるからである。セキュリティ対 策

は、全 体 のバランスを見 て、決 定 される必 要 がある。

Page 60: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐51‐

• 隠蔽によるセキュリティは無 意味

情 報 の存 在 を知 らせないことが、最 も安 全 であると言 う考 えは成 り立

たない。この仮 定 は、誰 もその存 在 を知 らないことを前 提 としているが、

長 期 的 に見 れば、隠 蔽 をしても、必 ず発 見 される。事 実 、多 くのセキ

ュリティ・ホールが十 分 な対 策 が採 られないがために、攻 撃 に利 用 さ

れている。

• 最少権限 を与 えること

全 てのシステム管 理 者 を含 む利 用 者 に対 して、その利 用 者 が本 当

に必要 な権 限以外 を与 えないことが重 要 である。例 えば、We b サー

バーは、O S 上 の特 定 のユーザ権 限 のプログラムとして動 作 する。そ

のため、どのような We b クライアントがコンテンツを要 求 しても、同 じユ

ーザ権 限 で、あらゆるコンテンツにアクセスする。これは、不 必 要 に

We b クライアントの権 限 を広 げることに繋 がりかねない問 題 を持 つ。

最 少 権 限 のみを与 えることで、仮 に悪 意 ある者 に権 限 を奪 われたと

しても、その被害 の範囲 を最小限 に抑 えることが可 能 になる。

• 権限 を分離すること

権限 を細 かく分 離 し1人 の管理 者 があらゆる権 限 を持 たないようにす

ることも、We b サーバーの脆弱性 を防 ぐ重 要 な手段 である。例 えば、

システム管 理 者 とコンテンツ管 理 者 の権 限 を完 全 に分 離 し、同 じ人

間 が両 方 の権 限 を持 たないようにすることで、設 定 ミスや意 図 的 なバ

ックドアの設 置 などによる不 正 アクセスなどを防 ぐことが可 能になる。

3 .4 脅威に対する対策

ここでは、前 節 の脆弱性対策の方針に基づき、We b サーバーの脆弱

性に対 して、どのような対 策 を講 じるべきか検証する。 3 . 2 節で検討 した

Page 61: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐52‐

We b サーバーの脆弱性 を元 に検証することで、本 質 的 な対処方法 を考

察する。

3 .4 .1 なりすましに対する対策

なりすましは、正 規 の利 用 者 と偽 の利 用 者 の判 別 が出 来 ない場 合 に

悪 用 される。例 えば、容 易 に推 測 可 能 なユーザ名 とパスワードを使 用 し

たり、H T T P B a s i c 認証 を S S L などの暗号化 を行 わない環境 で使用す

ると、容 易 に漏洩する可能性 がある。

しかし、現 在 の所 、なりすましに対 して 1 0 0 %完 全 に安 全 な方 法 は無

い。対 策 の基本は、パスワードを推 測 され難 くする方 法 である。文 字 、数

字 や記 号 を組 み合 わせた長 いパスワードを使 用 することで、辞 書 を使 っ

たブルート・フォース攻 撃 によるパスワード解 析 に対 しては、ある程 度 の

耐 性 を持 つことになる。しかし、解 析 が不 可能 ではないため、長 期 に渡 り

同 じパスワードを使 用 している場 合 、幾 ら複 雑 なパスワードを使 用 してい

ても解 析 される可 能 性 が高 くなる。そこでパスワードに有 効 期 限 を設 定

したり、過 去 に使 用 されたパスワードを再 利 用 できないようにするなどの

対策 が有効 となる。

認 証 機 構 が返 すチャレンジを使 用 してワンタイム・パスワードを用 いる

方 法 や、時 間 でハッシュ値 を生 成 するデバイスを使 用 する方 法 などでは、

パスワードを盗 まれても再 利 用 できない。しかし、ある時 点 で使 用 するべ

きパスワードは、特 定 のアルゴリズムによって決 まるため、そのアルゴリズム

とパラメータが洩れると、容 易 にパスワードが生 成 される可 能性 がある。

利 用 者 が、どのネットワークから、どの時 間 帯 に接 続 するか、といった

情 報 を活 用 し、アクセスしてきた利 用 者 が本 人 であるかを検 証 する方 法

も有 効 である。例 えば、本 来 イントラネットからしか接 続 し得 ない利 用 者

が、インターネット経 由 で接 続 してきた場 合 、その接 続 は不 正 アクセスで

ある可 能 性 が高 くなる。イントラネットからであっても、館 内 に誰 も居 ない

Page 62: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐53‐

時 間 帯 にアクセスしてきた場 合 、不 正 アクセスである可 能 性 が非 常 に高

くなる。このような、利 用 者 がアクセスしてきた状 況 (アクセス・コンテキスト )

を利 用 することで、利 用 者 が本 人 である可 能 性 を認 証 のパラメータとし

て考 慮することも、なりすましによる被 害 の範囲 を限定的 にする上 では有

効である。

セッション識 別子 を悪用するなりすましについては、セッション識 別子 を

使 い捨 てとし、偽 造 され難 いものを使 用 することや、セッション識 別 子 に

期 限 を設 けるなどして、リクエスト毎 にセッション識 別 子 を生 成 することで、

多 くの場 合 、脆 弱性 を軽減することが可 能 である。また、S S L / T L S を使

用することで、We b サーバーと We b クライアントの間 のセッションを保 護

することが可 能 になる。ただし、この場 合 でも、良 く知 られた R o o t C A に

よるサーバー証 明 書 を使 わない場 合 で、独 自 R o o t C A の証 明 書 を

We b ク ラ イ ア ン ト に イ ン ス ト ー ル し て い な い 場 合 、 容 易 に

M a n - I n - T h e - M i d d l e 攻撃の対象 となる。

いずれの場 合 であっても、なりすましによる攻 撃 を察 知 した時 点 で、即

座 に該当するアカウントやセッションを停 止する措 置 を講 じられるようにす

ることが肝 要 である。

3 .4 .2 バグの利用に対する対策

プログラムのバグを利 用 した攻 撃 に対する対策 は、基 本的 に、プログラ

ムに目 的 外 の動 作 を出 来 ないようにすること以 外 に無 い。バッファ・オー

バフロー攻撃や S Q L 文 を直接実行できる脆 弱性 を利用 した攻撃は、コ

ンテンツ管 理 者 の想 定 外 の入 力 によって引 き起 こされる。基 本 的 には、

プログラムが想 定 外 の入 力 に対 して堅 牢 であるべきだが、 1 0 0 %それが

保 証 できない場 合 、プログラムの実 行 権 限 が奪 われたとしても、プログラ

ムが必要 の無いリソースにアクセスできないようにする必 要 がある。

例 えば、We b サーバーが、コンテンツ以 外 にアクセスできなければ、バッ

Page 63: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐54‐

ファ・オーバフロー攻 撃 によって制 御 が奪 われ、システムのパスワード・フ

ァイルを取 得 されようとしても、O S のアクセス・コントロールによってアクセ

スが許 可 されない。このように、防 御 を多 層 化 すること、および、仮 に想

定 外 の結果 になっても、被 害 の範 囲 を予 想 可能 な最 小限 に留 められる

ように、権 限 の細分化 と最 少化 が肝要 となる。

3 .4 .3 設定 ミスの利用に対する対策

設 定 ミスを利 用 した攻 撃 の対 策 も、基 本 的 には、権 限 の細 分 化 と最

少 化 が根 本 的 な対 策 となる 。設 定 ミス も 、プログラムのバグ同 様 に、

1 0 0 %無 くすことは現 実 的 に難 しい。通 常 は、設 定 を複 数 の人 間 によっ

て見 直 したり、検 証 ツールを用 いて、脆 弱 性 が無 いかを検 証 する。しか

し、これでも全 ての問題 が発見 されない場合 がある。

まず、We b サーバーの動作 を設定するシステム管 理 者 の権限 と、コン

テンツ管 理 者 の権 限 を分 離 することで、コンテンツ管 理 者 によって、間

違 った設 定 が行 われることを回 避 する必 要 がある。また、管 理 主 体 が異

なるコンテンツがある場 合 、いずれかのコンテンツ管 理 者 の設 定 ミスによ

って、他 のコンテンツ管 理 者 のコンテンツに被 害 が及 ばないようにするに

は、設 定権限 の細分化が必要 となる。

設定 ミスが仮 に発生 したとしても、プログラムのバグ同様 に、アクセス・コ

ントロールの設 定 を細 かくし、権 限 の細 分 化 と最 少 化 を実 践 することに

よって、被 害 の範囲 を予想可能 な範囲 に収めることが出 来 る。

3 .4 .4 仕様上の問題に対する対策

仕様の脆弱性 を利 用 した攻 撃 に対 して、本 質的 には、仕 様 を変更 す

ることでしか対 応 できない。しかし、プログラムのバグなどと同 様 に、アクセ

ス・コントロールの設 定 を細 かくし、権 限 の細 分化 と最 少 化 を実 践 するこ

とによって、被 害 の範囲 を予想可能 な範囲 に収めることが出 来 る。

Page 64: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐55‐

3 .4 .5 バックドアの利用に対する対策

バックドアを利 用 した攻 撃 に対 しては、基 本 的 にバックドアを作 らせな

いことが第 一である。これは、バックドアを作 るのに必要 な権限 を We b サ

ーバーに容 易 に持 たせないようにすることで対 応 する必 要 がある。また、

バックドアが仮 に作 られたとしても、バックドアを動 作 する権 限 が最 少 限

であれば、これも被 害 の範 囲 を想 定 内 の最 少 範 囲 に収 めることが出 来

る。

この攻 撃 に対 しても、権 限 の細 分化 と最 少 化 が最 も有 効 な対 抗手 段

となる。

3 .4 .6 D o S 攻撃に対する対策

D o S 攻撃 を利用 した攻撃 に対 しては、基 本的 に、We b サーバーが処

理可能 な量 にリクエスト数 を制 限 したり、不 正 なパケットなどが We b サー

バーに到 達 しないようにすることでしか対 応 できない。ファイアウォールや

ロード・バランサなどで、ある程 度 の対 策 を講 じることは出 来 る。しかし、

残 念 ながら、例 えば、ファイアウォールを導 入 しても、一 部 のファイアウォ

ールにあった正 しくパケットをフィルタリングできないバグにより、正 しく機

能 しない場 合 や、正 しく機 能 している場 合 にも、必 ずしも全 ての不 正 な

パケットなどに対 して対 応 できないことが考 えられる。We b サーバー側 で

も、O S や We b サーバーを修正するなどして、D o S 攻撃の足 がかりを作 ら

せない必要 がある。

D o S 攻撃に対 しては、ネットワークおよび We b サーバーにおける多 層

的 な防御手段 を講 じる必 要 がある。

Page 65: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐56‐

3 .4 .7 クロスサイト・スクリプティングに対する対策

クロスサイト・スクリプティングは、動 的 コンテンツが正 しく入 力 された値

を確 認 し、危 険 なスクリプトをクライアントに対 して返 さないようにすること

で回 避 できる。基 本 的 には、動 的 コンテンツの実 装 方法 の問題 であるた

め、コンテンツ管 理 者 の意識 の問題 と言 える。

3 .4 .8 盗聴に対する対策

ネットワーク上 の盗聴 に対 しては、 I P s e c や S S L / T L S を使 用 した通信

の暗 号 化 などによっての対 策 が効 果 的 である。しかしながら、S S L / T L S

を使 う場 合 であっても、R o o t C A がクライアントに正 しく登 録 されていない

と M a n - I n - T h e - M i d d l e 攻撃の対象になりうるため、対 策 としては不十

分 となる。

システム内 の盗 聴 については、やはり、権 限 の細 分 化 と最 少 化 が最 も

有 効 な手 段 となる。これによって、不 要 に重 要 な管 理 用 コマンドが書 き

換 えられたり、盗 聴 する手 段 を与 えないようにすることができる。

3 .5 脆弱性分析のまとめ

本章では、We b サーバー・システムの脆弱性 、特 に We b サーバーの

持つ脆 弱 性 について論 じてきた。We b サーバー・システムは、情 報 を共

有 する手 段 として、非 常 に高 い価 値 を持 つ。ネットワークを介 することで、

地 理 的 に分散 した多 くの利 用 者 に対 して、様 々な情 報 を提 供 する手 段

となる。その一方で、この利 便性 が We b サーバーの脆弱性に直結する。

3 . 4 節で論 じた We b サーバーの脆弱性に対する対策 を表 3 - 1 に纏

める。この表 は、対 策 とそれによって防 ぐことが可 能 な攻 撃 を示 したもの

である。◎は最 も有 効 な対策 を示 し、○は比較的有効 な対策 を示す。

基 本 的 に、脆 弱 性 を防 ぐには、バグの改 修 やパスワードなどを複 雑 に

Page 66: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐57‐

するなどの対 策 が必 要 になる。しかし、どのようなシステムであっても、全

ての攻撃 に対 して 1 0 0 %安全 な対策 が取れるわけではない。結 果 として、

対 策 は脆 弱性が発見 された後 に講 じられるため、被 害 が広 がることが多

い。これは現 実的 ではない。むしろ、攻 撃 され、防 御 が破 られた場 合 でも、

その被 害 の範 囲 を予 想 の範 囲 内 に収 められるようにすることが重 要 であ

る。そのためにも、権 限 の細分化 と最 少化 が重要 になる。

表 3 - 1 攻 撃 の種 類 と対 策 の有効性

対 策 の種 類

の細

の最

アクセス・コン

テキスト

ファイアウォ

ールなどによ

る保

な認

の暗

バグの改

なりすまし ○ ○ ◎ ◎ ◎

バグの利 用 ◎ ◎ ◎

設 定 ミ ス の利

◎ ◎

仕 様 上 の 問

題 の利 用

◎ ◎

バックドアの利

◎ ◎ ○ ○

D o S 攻 撃 ○ ○

クロスサイト・ス

クリプティング

の種

盗 聴 ◎ ◎ ◎

Page 67: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐58‐

4 アクセス制御に対する要件

前章では、We b サーバー・システムの内部 モジュール・モデルを使 って

We b サーバー・システムに潜 む脆 弱性 の分 析 とその対 策 方 法 について

検 討 した。本 章 では、前 章 の分 析 結 果 および対 策 方 法 にしたがって、

We b サーバー・システムのアクセス制 御 に必要 とされる要 件 をまとめる。

4 .1 強制的アクセス制御実現のための要件

We b サーバー・システムにおいて強 制的 アクセス制 御 を実 現 するため

に必要 な要件 を整理する。

• 不可避 なアクセス制 御

現実装方式における We b サーバーのアクセス制 御 機能は、様 々な

方 法 によりアクセス・チェックを回 避 させてしまうことが可 能 である。アク

セス・チェック・モジュールは、ハードウェアやオペレーティング・システム

により保 護 されていないためユーザ・プログラム内 に存 在 するため、

We b サーバーを奪取することにより、モジュール内 コードを改 ざんされ

る可 能 性 がある。モジュールによるアクセス・チェック処 理 は、リクエスト

解 析 モジュールがコンテンツ・アクセス・モジュールへリクエストを渡 す

まえにアクセス・チェック・モジュールを呼 び出 すことにより実 現 されて

いるため、リクエスト解 析 モジュールの不 都 合 や改 ざんにより、アクセ

ス・チェック・モジュールの呼び出 しをスキップすることでアクセス・チェッ

クを無 効化 できる。

オペレーティング・システムのアクセス制 御機能は、リソースに対するす

べてのアクセスをチェックすることを保 証 する。しかし、現 在 のオペレー

ティング ・システムの多 くでは、絶 対 権 限 を持 つシステム ・アカウント

( r o o t)によるアクセスに対 してアクセス・チェック機 能 が無効 となる。

強制的 アクセス制 御 を実現するためには、アクセス・チェック・モジュー

Page 68: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐59‐

ルが改 ざんされないこと、および、アクセス・チェックが不 可 避 であるこ

とが求 められる。

• A l l - d e n i a l の原則 によるアクセス制 御設定

現 状 の We b サーバー ・ シ ステムにおけるア クセス制 御 設 定 は 、

a l l - a l l o w a n c e 原則に基づいている。つまり、特 にアクセス制 御設定

を行 わないすべての We b コンテンツは、匿 名 We b クライアント・ユーザ

からのアクセスを許 可 するということである。ユーザの数 やコンテンツの

数 が増 えシステムの規 模 が大 きくなるほど、アクセス制 御 設 定作 業 は

煩 雑 になり、設 定 ミスや設 定 漏 れの可 能 性 が高 くなる。設 定 漏 れの

際 に、本 意 でない公 開 を防 ぐために、a l l - d e n i a l 原 則 に基 づくアク

セス制 御設定 が必要である。

• システム管 理者 とセキュリティ管 理 者 の分離

現在のオペレーティング・システムの多 くは、アクセス制 御設定 の権限

は、リソースの所有者 とシステム管 理者 に与 えられる。強 制 的 アクセス

制 御 では、アクセス制 御 ポリシーを決 定するセキュリティ管 理 者 をシス

テム管 理 者 から独 立 し、 r o o t のような絶 対 権 限 を持つシステム管 理

者 のアクセスに対 してもアクセス制 御 が有 効 になるようにすべきであ

る。

• セキュリティ・ポリシーの強制

多 くの We b サーバー・システムでは、We b コンテンツ管 理者 に対 して

所有するコンテンツのアクセス制 御設定権限 を与 えている。We b コン

テンツによる任 意 のアクセス制 御 設定 では、設 定漏れによる漏 洩 、改

ざんの危 険 を生 む可 能 性 がある。強 制 的 アクセス制 御 を実 現 するた

めに、セキュリティ管 理 者 が設 定 したセキュリティ ・ポリシーをシステム

全 体 に対 して強制する仕組みが必要である。

Page 69: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐60‐

4 .2 Web サーバー・システムのための要件

2 章 で整理 した We b サーバー・システムの内部構成および特徴 から、

We b サーバー・システムのアクセス制 御 として特 に考 慮 しなければならな

い要件 について以下 にまとめる。

• アクセス・コンテキストを考 慮 したアクセス制 御

現在の We b サーバー・システムでは、ユーザ以外 のサブジェクト特 定

方 法 として、ユーザが利 用 している計 算 機 およびソフトウェアのネット

ワーク上 の位置 ( I P アドレスやドメイン)を用 いることができる。このよう

なアクセス要 求発行 の際 の状況 を客観的 に特定するアクセス・コンテ

キストをアクセス制 御 に適用する必要 がある。

• 動的 We b コンテンツへの最少権限付与

多 くのシステム権 限 を持つ We b サーバーの権限 を用 いて動的 コンテ

ンツを実 行 することは、不 正 な権 限行使の脅威 につながる。動 的 コン

テンツの実 行 に必 要 な権 限 を最 少 化 し、強 制 する仕 組 みが必 要 で

ある。

• We b サーバーが持つ権限の細分化

多機能 な We b サーバーに付与 される権 限は多岐 にわたり、We b サ

ーバーが奪取 されたときの危 険性 が大 きい。We b サーバー内部 を解

析 して、権 限 が及ぶ範囲 を細分化すべきである。

• 一貫性のあるアクセス制 御

オペレーティング・システムによるアクセス制 御 を We b サーバーに対 し

ても適 用するために、We b サーバーのアカウント管 理 とオペレーティン

Page 70: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐61‐

グ・システムのアカウント管 理 を統 合する必 要 がある。また、オペレーテ

ィング・システムにより、We b サーバーで行 われる認 証 のサポートを行

うべきである。

• 設定 ミスの予 防

不特定多数のユーザからアクセスされる We b サーバー・システムのア

クセス制 御 は、設 定 が膨 大 かつ煩 雑 なものとなる可 能 性 がある。設

定 ミスを防 ぐためには、ポリシー設 定 の視 認性 を向 上 し、一 貫 性 のあ

る設 定 を強制することが重 要である。

Page 71: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐62‐

5 関連セキュリティ・ポリシー・モデルの分析

本章 では、幾 つかのセキュリティ・ポリシー・モデルを取 り上 げ、We b サ

ーバーへの適応性分 析 を行 う。本 章 で取 り上 げるセキュリティ・ポリシー・

モデルは Tr u s t e d S o l a r i s を除 き R B A C と T E の組み合わせである。

そこで、各 モデルの分析 を行 う前 に、最 も基 本的 な R B A C+T E モデル

に We b サーバーを適応 した例 を説明する。

まず、幾 つかの用 語 を定 義 する。R B A C+T E のモデルにおけるユー

ザ (U S E R ) は 、システムに存 在 するユーザ ・アカウン トを示 し 、 ロール

(R O L E )はユーザの役 割 を示 す。サブジェクト ( S U B J E C T )は行 為 の

主 体 を指 し、オブジェク ト (O B J E C T ) は行 為 の対 象 を指 す。ド メイン

( D O M A I N ) は サブジェ ク ト に対 して割 り当 て られる ラベルを 、 タ イプ

(T Y P E )はオブジェクトに対 して割 り当 てられるラベルを示 す。また、ドメ

イ ン ・ タ イ プ ・ ペ ア ( D O M A I N - T Y P E P E A R ) で は 、 ア ク セ ス ・ モ ー ド

(A C C E S S M O D E )と呼 ばれるサブジェクトのオブジェクトに対 して許 可

された操作 が定義 されている。R B A C+T E の基本的 なモデルの例 を図

5 - 1 に示 す。この例 では、各 要 素 の間 に図 で示 された関 係 がある 。

「N : 1 」とは、N 個 の要 素 に対 して 1 つの対 応 が存 在 することを示 し、

「M : N」は、M 個の要素 に対 して N 個の対応 が存在することを示 す。

上記のモデルを We b サーバーに適応する場合 、We b サーバーはサブ

ジェクトに相 当 し、We b コンテンツはオブジェクトに相 当する。We b サーバ

ーは、そのドメインにアクセスを許 可 されたオブジェクトファイルに対 しての

み、参 照や実行 といった操作 が許可 される。

静的 コンテンツと動 的 コンテンツが We b サーバーによって処 理 される

場 合 、通 常 は、それぞれの処 理 に必 要 となる権 限 は異 なっている。その

ため、We b サーバーをセキュアに動 作 させるためには、静 的 コンテンツと

Page 72: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐63‐

動 的 コンテンツの処 理 に応 じて、それぞれ異 なったアクセス制 御 を強 制

する仕組みが必要になる。

図 5 - 1 に示 した R B A C+T E の基本的 なモデル例 では、ロールに対

して 1 つのドメインしか付 与できない。このため、We b サーバーは動的 コン

テンツと静 的 コンテンツに対 して、同 一 のドメインで処 理 を行 わなければ

ならない。また、同 一 のドメイン内 で異 なるアクセス制 御 を実 現 する仕 組

みも定 義 されていないため、結 果 として、動 的 コンテンツと静 的 コンテンツ

に対 して、異 なるアクセス制 御 を強制する仕組みを持 たないことになる。

本 章 で説 明 する各 モデルは、それぞれ独 自 の方 法 により、We b サー

バーが、動 的 コンテンツと静 的 コンテンツに対 してアクセスする際 に、それ

ぞれ異 なるアクセス制 御 が行われる仕 組みを実現 している。

図 5 - 1 R B A C の基 本 モデルと We b サーバーへの適応例

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

N:M N:1

N:1

M:N

N:1

コンテンツに相当Webサーバに相当

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

N:M N:1

N:1

M:N

N:1

コンテンツに相当Webサーバに相当

Page 73: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐64‐

各モデルの We b サーバーへの適応性分析では、以 下 の項目 につい

て分析 を行 う。

• 動的 コンテンツと静 的 コンテンツのそれぞれで、異 なるアクセス制 御 を

行 う仕 組みについて

サブジェクトに対 してドメイン(Tr u s t e d S o l a r i s では機 密 ラベル)を

割 り当 てる仕 組みや、同 一 のラベルを持つサブジェクトに異 なるアクセ

ス制 御 を強制する仕組みについて分析する。

• ドメイン(機 密 ラベル)を追 加 した際 に、影 響 される要 素 の数について

ドメイン(機 密 ラベル)を追 加 するというということは、異 なるアクセス制

御 を行 う領 域 (例 えば、C G I や S S I といった動 的 コンテンツに対 して

アクセス制 御 を行 う領 域 )を新 たに追 加 するということである。影 響 の

受 ける要 素数 が多 くなれば、設 定変更 が必要 となる箇 所 も多 くなる。

つまり、要 素 数 を調 べることで、各 モデルが本 質 的 に持 つ管 理 の煩

雑 さを分 析 する事 ができる。ただし、これらの煩 雑 さと、実 際 の煩 雑 さ

は必 ずしも一 致 しない。管 理 ツールや実装 によっては、影 響 される要

素数 の多 いモデルでも、容 易 に管理 しうる場 合 がある。

• We b サーバー及 び、動 的 コンテンツが改 竄 された場 合 の被 害 範 囲

について

攻 撃 者 により、We b サーバーや動 的 コンテンツが改 竄 された場 合 に、

被 害 が及ぶ範囲 を分析する。

Page 74: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐65‐

5 .1 Hof fman ’s RBAC

H o f f m a n は、これまでデータベースや We b サーバーにおいて応用 さ

れてきた R B A C ポリシーを、汎 用 オペレーティング・システム上 (論 文 中

では S e c u r e C o m p u t i n g C o r p o r a t i o n が開発 した L O C K 6 を例 にし

ている )で実 装 する方 法 について論 じた。H o f f m a n は論 文 の中 で、

R B A C K と T E を組 み合わせた新 しいポリシー・モデルを提唱 している。

5 .1 .1 R B A C と T E を組み合わせる利点

H o f f m a n は、セキュアなシステム実 現のためには、R B A C のみでは不

十分で、Ty p e E n f o r c e m e n t(以 下 、「T E」という)のような低 いレベルの

メカニズムが必要であると述 べている。

R B A C ポリシーを採 用 したシステム上 で、信 頼 性 の低 いソフトウェア

(サブジェクト)を起 動 させている場 合 を例 に取 る。信 頼 性 の低 いサブジ

ェクトは、ロールに与 えられている特 権 やパーミッションの不 正 利 用 や乱

用 を引 き起 こす可 能性 がある。R B A C ポリシーのみでは、サブジェクトの

オブジェクトに対 するアクセスは単 純 にロールだけに依 存 する。従 って、

サブジェクト自 体 の信 頼 性 の低 さを何 ら考 慮 することなくアクセスが実 行

されることになり、パーミッションの不 正 利 用 、乱 用 の危 険 を減 じ得 るもの

ではない。この不 正 利 用 、乱 用 の危 険 を減 少 させるためには、ロールを

細 分 化 し、タスクを実 行 するために必 要 なオブジェクトのみにアクセス権

を制 限 する、つまり最 少 権 限 の原 理 を満 たす必 要 が生 じる。しかし、ロ

ールを細 分 化 することは、ロールが持 つ直 感 的 で分 かりやすいアクセス

制 御 といった性 質 を失 わせ、ユーザに対 して多 数 のロールとそのパーミッ

ションを把 握 することを強 制 するため、システムの利 用 が非 常 に複 雑 化

することになる。

そこで、R B A C ポリシーに加 えて T E ポリシーのドメイン -ラベルの概念

Page 75: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐66‐

を採 用 すると、サブジェクトのオブジェクトに対 するアクセスは、サブジェク

トのドメインとオブジェクトのラベルによって決 定 されるため、信 頼 性 の低

いサブジェクトには特 定 のタイプを持 つオブジェクトのみにアクセス権 を与

えるようにドメインを記 述するだけで簡 単 にアクセス制 御 を実現 することが

できる。つまり、R B A C と T E の組み合わせは、ロールの直感的で分 かり

やすいという性 質 を保 ちながら、サブジェクトの信 頼 性 を考 慮 したアクセ

ス制 御 を可能 にすることができる。

5 .1 .2 ポリシー・モデルの概要

H o f f m a n の提唱 した R B A C および T E を使 ったポリシーの概要は以

下の通 りである。

各サブジェクトに、ロールおよびユーザを 1 つずつ関連付 ける。さらに、

各 ユーザには複 数 のロールを関 連 付 ける。この時 、サブジェクトに関 連

付 けられるロールは、そのユーザに対 して割 り当 てられているロールに限

る。さらに、各 サブジェクトに 1 つのドメインを、さらに各 ロールに複数 のド

メインを関 連 付 ける。この時 、サブジェクトに関 連 付 けられるドメインは、そ

のロールに対 して許可 されたドメインに限 る。

典型的 な R B A C ポリシーではロールとオペレーションを直 接関連付 け

るが、H o f f m a n は T E ポリシーを利用することにより、ロールとオペレーシ

ョンの間 にドメインというレイヤを新 たに導 入 して、ドメインを介 してロール

とオペレーションを関 連付 けた。

Page 76: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐67‐

図 5 - 2 H o f f m a n による R B A C と T E の混合 モデル概要

図 5 - 3 H o f f m a n による R B A C と T E のモデル構造

D1

D2

D4

D3

D5

SUBJECTSUBJECT

OBJECTOBJECT

Security Database

T1

※ U … USER R … ROLE D … DOMAIN T ・・・ TYPE

D1 D2 D3

Type Enforcement Database

D2

U1

U2

U1

R4

R3

R2

R1

R1

read

T1 r, w r,wT2 r,w,d r,w r

D1

D2

D4

D3

D5

SUBJECTSUBJECT

OBJECTOBJECT

Security Database

T1

※ U … USER R … ROLE D … DOMAIN T ・・・ TYPE

D1 D2 D3

Type Enforcement Database

D2

U1

U2

U1

R4

R3

R2

R1

R1

read

T1 r, w r,wT2 r,w,d r,w r

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

N:M N:M

N:1

M:N

N:1

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

N:M N:M

N:1

M:N

N:1

Page 77: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐68‐

サブジェクトのユーザ、ロールおよびドメインの関 係 性 は、セキュリティ・

データベース内 に格 納 する。セキュリティ・データベースによって、どのユ

ーザに対 してどのロールが許 可 されているか、どのロールがどのドメインを

実 行することができるかを特 定する。

さらに、T E ポリシーに則 り、オブジェクトには 1 つのタイプを関 連付 ける。

サブジェクトのオブジェクトに対 するアクセス( r e a d , w r i t e , d e l e t e など)

は、サブジェクトのドメインとオブジェクトのタイプの組 み合 わせによって決

定 される。この組 み合 わせを Ty p e E n f o r c e m e n t D a t a b a s e に格納す

る。

サ ブ ジ ェ ク ト に よ る オ ブ ジ ェ ク ト へ の ア ク セ ス は 、 こ の S e c u r i t y

D a t a b a s e および Ty p e E n f o r c e m e n t D a t a b e s e に基づいてスタティ

ックに制 御 される。

5 .1 .3 ポリシー・モデルの特徴

他の R B A C ポリシーと同 様 に、H o f f m a n の R B A C ポリシーにおいて

も、ロール毎 に細 かくアクセス権 を制 限 し、必 要 以 上 の権 限 がユーザに

与 えられることを避 けることができる、つまりユーザの最 少 権 限 の原 則 を

遵 守 することができる。この最 少 権 限 の原 理 は、不 正 アクセスなどの危

険性 を軽減 し、人 為的 ミスを削 減するために効果的 である。

H o f f m a n は、わずかなトレーニングしか受 けていないユーザでも容 易

に管 理 可 能 なシステムを目 指 していたため、システムおよびその概 念 を

できるだけ単 純 化 した。そのため明 瞭性 に優 れた分 かりやすいポリシーと

なっている。

H o f f m a n の R B A C ポリシーでは、一 度 に 1 つのロールでのみ、サブジ

ェクトがオペレーションを実 行 できる。これは、N I S T ポリシー(同 時 に複

数 のロールでサブジェクトがオペレーションを実 行 可 能 )などとは異 なる。

サブジェクトの動 作 が複 数 のロールに依 存 すると、どのロールでどのサブ

Page 78: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐69‐

ジェクトが動 作 しているのかが複 雑 化 し、システムのユーザはその複 雑 な

ロールとパーミッションの関 係 性 を把 握 するという不 必 要 な負 担 を強 いら

れることになる。一 度 に 1 つのロールのみを有効 にすれば、ロール、サブ

ジェクトおよびパーミッションの関 係性は非常に単純 で分 かりやすい。

また、H o f f m a n の R B A C ポリシーでは、あるドメインがどのタイプにアク

セスする必 要 があるかは、操 作 時 のロールによってではなく、サブジェクト

が実 行 しなければならない個 々の責務 によって決 定 される。従 って、ロー

ルとそれに関 連 する責 務 が判 明 すれば、その責 務 を遂 行 するために必

要 なサブジェクトとドメインを容 易 に導 き出 すことができる。

5 .1 .4 We b サーバーへの適応性分析

H o f f m a n のモデルの特徴は、ロールとドメインが N : M で割 り当 てられ

ることである。1つのロールに複 数 のドメインを割 り当 てることで、静 的 コン

テンツと動 的 コンテンツを処 理する際 に、異 なるドメインで We b サーバー

を動作 させることが可 能 となる。

また、新 たなドメインを追 加 し、そのドメインで We b サーバーを動作 させ

る為 には、ドメイン、タイプとドメイン -タイプ・アクセス・マトリックスの 3 つの

ポリシー・ファイルを修 正すれば良い。

H o f f m a n のモデルでは、静 的 コンテンツと動 的 コンテンツに対 して、

異 なるドメインで We b サーバーを動作 させるため、C G I、S S I といった一

般 ユーザによって作 成 された信 頼 できないプログラムが実 行 される場 合

に、そのプログラムに最 少 権限 を付 与することが可 能 である。しかし、この

利 点 はプログラムが設 定 されたド メ インで動 作 する場 合 に限 られる 。

H o f f m a n のモデルでは、動 的 コンテンツを攻 撃 者 に改竄 された場合 に

は、その動 的 コンテンツのアクセス可 能 な範 囲 、及 び、その動 的 コンテン

ツから実 行 が許 可 されているプログラムのドメインからアクセス可 能 な範

囲 に被害 が及ぶ。同 様 に、We b サーバーを改竄 された場 合 には、We b

Page 79: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐70‐

サーバーのアクセス可 能 な範囲 、及 び、We b サーバーから実 行 が許可 さ

れているプログラムのドメインからアクセス可 能 な範囲 に被害 が及ぶ。

5 .2 DAFMAT

D A F M AT (D y n a m i c A u t o r i z a t i o n F r a m e w o r k f o r M u l t i p l e

A u t h o r i z a t i o n Ty p e s)とは、R . C h a n d r a m o u l i が提唱 したセキュリテ

ィ・ポリシーであり、医 療 アプリケーション・システムを想 定 している。

C h a n d r a m o u l i が D A F M AT を提 唱 した 2 0 0 1 年当時 、患 者 の個

人情報 を扱 う医 療 アプリケーション・システムは H I PA A 2セキュリティ標 準

への準拠 が必須 となると見 られていた。H I PA A では、H I PA A 準拠の企

業 体 のいずれかと取 引 提 携 または信 頼 の環 契 約 を結 んでいるヘルスケ

ア・プロバイダ、医 療 保 険機関 、およびその他 の団 体 に対 し、アクセス制

御 、データの整 合 性 、認 証 、監 査 制 御 、暗 号 化 などの技 術 的 セーフガ

ードの規 定 が義 務 付 けられている。この標 準 は、医 療 アプリケーション・

システムに、ユーザ・ベース、ロール・ベースおよびコンテキスト・ベースの

承認 に加 え、非 常時 の承認 も可 能 とするよう要 求 するものである。

当 時 のアプリケーション・システムで利 用 されているセキュリティ・ポリシ

ーは、A C L エントリやシステム・テーブルといったスタティック・データベー

スを用 いて決 定 されていた。C h a n d r a m o u l i は、これらのスタティックな

ポリシーでは、非 常 時 の承 認 やコンテキスト・ベースの承 認 といった複 数

のタイプの承認 をサポートすることはできないと考 え、複 数 の承認 タイプを

サポートするダイナミックなセキュリティ・ポリシー、D A F M AT を提 唱 した。

2 アメリカ合 衆 国で 1 9 9 6 年に制定 された法律 。H I PA A とは、

H e a l t h I n s u r a n c e P o r t a b i l i t y a n d A c c o u n t a b i l i t y A c t の略称 。日 本語では「医 療 保険 の携行性 と責 任に関する法律 」などと呼 ばれ

る。

Page 80: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐71‐

5 .2 .1 R B A C と D T E を組み合わせる利点

D A F M AT におけるアクセス制 御 ・モデルは、R B A C ポリシーと D T E ポ

リシーの組み合わせであるといえる。C h a n d r a m o u l i は、R B A C と D T E

を組 み合 わせることにより、プラットフォーム上 のパーミッション領 域 におい

て、D A F M AT の構 成要素 であるサブジェクト、オブジェクトおよびオペレ

ーションを体 系化することができると述 べている。

例 えば、U N I X で D T E を考 えた場合 、ドメインとなるのはデーモン、フ

ァ イル ・ シ ステム 、ア ド ミニス ト レーシ ョン ・ユーテ ィ リテ ィである 。 これに

R B A C を組 み合わせて、1つのドメインに対 して 1 つ以上のロールを割 り

当 てる。任 意 のビジネス・プロセスは、膨 大 な量 のトランザクションと呼 ば

れる実 行 コードによって実 行 されおり、これらのトランザクションは、ユーザ

が呼び出すことができるサブジェクトと呼 ばれるプログラム内 に組み込 まれ

ている。サブジェクトの動 作 は、サブジェクトを呼 び出 したロールに依 存す

ることになる。このように、サブジェクトの実 行 ロジックとドメインの割 り当 て

はロールの動 作 と結 びついている。従 って、サブジェクトの実 行 ロジックと

ロール、ドメインの割 り当 てとロールの関 係 性 により、サブジェクトへのドメ

インの割 り当 てを制 限 し、サブジェクトに対 するロールの任 意 割 り当 てを

防 止することが可 能 となる。

5 .2 .2 ポリシー・モデルの概要

D A F M AT は、以 下 のコンポーネントから成 る。

1 . 複合 R B A C - D T E アクセス制 御 ・モデル

2 . 論理駆動承認エンジン

1 . 複合 R B A C - D T E アクセス制 御 ・モデル

複合 R B A C - D T E アクセス制 御 ・モデルは以下 のコンポーネントで

構 成 される。

Page 81: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐72‐

A . 承認エンティティ

B . 承認エンティティ間 の関係

C . 承認エンティティ間 の関係 に関する制約

A . 承認エンティティ

i . ユーザ(U S E R)

例 )「佐 藤 」ユーザ、「田 中 」ユーザ

i i . ロール(R O L E)

職位 を表す。

例 )「医 者 」ロール、「看 護 師 」ロール

i i i . サブジェクト(S U B J E C T)

職 位 が要 求 するビジネス・プロセス機 能 を実 行 するためのト

ランザクションを内 包 するプログラムまたは実 行 ファイルを表

す。

i v . ドメイン(D O M A I N)

ロールが機 能 することができる企 業 の高 レベルな機 能 領 域

を表す。

例 )「医 者 」ロールや「看 護 師 」ロールは、「患 者 治 療 」ドメイ

ン内 で機能する。

v . オブジェクト・タイプ(O B J E C T- T Y P E)

アプリケーション・システムや医 療 機 能 などに関 する関 連 情

報 を扱 うオブジェクトの分 類 を表す。

例 )「患 者 登 録 」タイプには、患 者 の保 険 やアレルギーなど

に関連する患者 の記録 が含 まれる。

B . 承認エンティティ間 の関係

ソース承 認 エンティティとターゲット承 認 エンティティの組 み合 わ

せからマッピングする。マッピングには以下 の 2 つのタイプがある。

Page 82: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐73‐

承認 エンジンが利 用 するロジック・データベースでは、2 つタイプ

はいずれもプレディケートを表 し、イタリック・フォントかつ丸 かっこ

で表 示する。

• 「N : 1」

ソース・エンティティの複 数 (2 つ以上 )の事 例 が、ターゲット・

エンティティの 1 つの事例 にマッピングされている場 合 は、そ

のマッピングを「N : 1 」と表 現 し、マッピング機 能 は> > _ >という

記 号 で表す。

• 「M : N」

ソース・エンティティの複 数 (2 つ以上 )の事 例 が、ターゲット・

エンティティの複 数 (2 つ以上 )の事 例 にマッピングされている

場 合 は、そのマッピングを「M : N 」と表 現 し、マッピング機 能 は

> > _ > >という記 号 で表す。

Page 83: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐74‐

各承認 エンティティ間 のマッピングについては、以 下 の通 りであ

る。

1 . ユーザ - ロール

医 療 関 連 企 業 を想 定 した場 合 、ロールは職 位 を表 す。各

ユーザには必ずユニークなロールが 1 つ割 り当 てられる。また、

複 数 のユーザに同 じロールを割 り当 てることもできる。従 って、

マッピング・タイプは「N : 1」となる。

2 . ロール -ドメイン

医 療 関 連 企 業 を想 定 した場 合 、ある職 位 (ロール)にある

人 物 は、たいてい自 分 の職域 の範囲内 で仕事 をする。各 ロ

ールには必ずユニークなドメインが 1 つ割 り当 てられる。また、

複 数 のロールに同 じドメインを割 り当 てることもできる。従 って、

マッピング・タイプは「N : 1」となる。

3 . サブジェクト -ロール

サブジェクトとは、ユーザに代 わって 1 つ以上のトランザクショ

ンを実 行 するプログラム・エンティティまたはユーザ・エージェ

ントである。サブジェクトが複 数 のロールによって呼 び出 され

ることもあり、1 つのロールが複数 のサブジェクトを呼 び出すこ

ともある。従 って、マッピング・タイプは「M : N」となる。

4 . サブジェクト -ドメイン

サブジェクトのオブジェクトに対 するアクセスは、ドメインの仲

介 によって実 施 される。各 サブジェクトは必 ずユニークなドメ

インを 1 つ持つ。また、複 数 のサブジェクトが同 じドメインを持

つこともできる。従 って、マッピング・タイプは「N :1」となる。

Page 84: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐75‐

5 . オブジェクト -オブジェクト・タイプ

オブジェクト・タイプとは、関 連 情 報 を扱 うオブジェクトの集 合

を現 す。各 オブジェクトは必 ずユニークなオブジェクト・タイプ

を 1 つ持つ。また、複 数 のオブジェクトが同 じオブジェクト・タ

イプを持 つこともできる。従 って、マッピング・タイプは「N : 1」と

なる。

6 . ドメイン -オブジェクト・タイプ - アクセス・モード

各 オブジェクト(即 ちオブジェクト・タイプ)には、有 効 なアクセ

ス・モード(C r e a t e、U p d a t e、D e l e t e、Vi e w など)のセット

が関 連 付 けられる。D T E では、サブジェクトのオブジェクトに

対 するアクセスは、サブジェクトのドメインとオブジェクトのタイ

プに依 存 する。どのアクセス・モードが許 可 されるかは、行 に

ドメイン、列 にオブジェクト・タイプ、セルにアクセス・モードを

配 した D o m a i n - Ty p e A c c e s s M a t r i x によって表 される。

従 って、マッピング・タイプは「M : N」となる。

ソース・エンティティ : ターゲット・エンティティ マッピング・タイプ

ユーザ : ロール N : 1

ロール : ドメイン N : 1

サブジェクト : ロール M : N

サブジェクト : ドメイン N : 1

オブジェクト : オブジェクト・タイプ N : 1

ドメイン -オブジェクト・タイプ : アクセス・モード M : N

表 5 - 1 D A F M AT における承 認 エンティティのマッピング

Page 85: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐76‐

図 5 - 4 D A F M AT における承 認 エンティティ相 関 図

C . 承認エンティティ間 の関係 に関する制約

D A F M AT では、任 意 のエンティティのペアにおいて、そのペアに

課 されるマッピングの制 約 に加 え、ペアとなっている各 エンティテ

ィと第 3 エンティティとのマッピングの制約が課 される。サブジェク

トとロールのペアを例 に挙げる。サブジェクトとロールのペアのマッ

ピング・タイプは「M : N 」である。さらに、サブジェクトとドメインおよ

びロールとドメインは、「N : 1」というマッピング・タイプを持 つ。従 っ

て、サブジェクトとロールのマッピングには「サブジェクトを呼 び出

すことのできる全 てのロールは、そのサブジェクトに関 連 付 けられ

ているユニークなドメインと関 連 付 けられていなければならない」と

いう制 約 が課 されることになる。

2 . 論理駆動承認エンジン

論 理 駆 動 承 認 エンジンは、複 数 の承 認 タイプをサポートするために

使用する。論 理駆動承認エンジンは、P r o l o g に似 たルールを処理

することができる 1 階述語論理ベースのプロセッサから成 る。

論理駆動承認エンジンは、以 下 の 2 つの機能 を有 している。

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

N:1 N:1

N:1M:N

M:N

N:1

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

N:1 N:1

N:1M:N

M:N

N:1

Page 86: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐77‐

1 . ユーザ・アクション(例 えば、アプリケーションでメニューオプション

を選 択するなど)から、セッション関 連機能 を利用 して承認 リクエ

スト・プレディケート(A u t h o r i z a t i o n r e q u e s t p r e d i c a t e)を定

式 化 する。プライオリティ・コードの値 と承 認 リクエスト・プレディケ

ート内 で変化するコンテキストに基 づき、リクエストは以 下 の 3 タ

イプに指定 される。

• 正常承認 リクエスト

• 緊急承認 リクエスト

• コンテキスト・ベース承 認 リクエスト

2 . 各 承 認 タ イ プ に 対 し て ヴ ァ リ デ ー シ ョ ン ・ コ ン デ ィ シ ョ ン

( v a l i d a t i o n c o n d i t i o n )を利 用 し、現 在 の承 認 要 求 が正 当

かどうかを決 定する。

論理駆動承認 エンジンによって、承 認 リクエストが正 当 であると決 定 さ

れた場 合 、呼 び出 されたサブジェクトに該 当 する適 切 なドメインが、サブ

ジェクト -ドメインがマッピングされたテーブル通 りに、そのユーザのセッショ

ンに割 り当 てられる。ユーザ・セッションにおいて動 作 するドメインに基 づ

き、実 際 のオブジェクト・レベルのパーミッションが、ドメイン -タイプ・アクセ

ス・マトリックスから読 み取 られることになる。

5 .2 .3 ポリシー・モデルの特徴

C h a n d r a m o u l i は、自 身 が提唱する D A F M AT を他 の研究者 のポリ

シーと比 較 している。

1 . H o f f m a n のポリシー・モデル

Page 87: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐78‐

R B A C が様 々なタイプのポリシー(最 少 権 限 の原 則 や興 味 の衝 突

など)を表 現するために適 した高 レベルの抽 象 メカニズムであることを

利 用 し、さらに、セキュアオペレーティング・システム上 の D T E の管

理 メカニズムを用 いて、これらのポリシーの実 装 方 法 について論 じた。

しかし、H o f f m a n の実装はユーザ、ロール、サブジェクトおよびドメイ

ン間 のスタティックな割 り当 てに基 づいており、オペレーティング・シス

テムの観点 からは関連 がないという理 由 で一 時情報 を組み込むメカ

ニズムを提 供 していない。

2 . Ti d s w e l l と P o t t e r のアプローチ

ダイナミックに D T E モデルのコンフィギュレーションを変 更する方法

を提 唱 した。ドメイン -タイプ・アクセス・マトリックスを変 更 し(新 たなド

メインおよびタイプを追 加 、削 除 、またはドメイン -タイプの組み合 わせ

に対 するパーミッションを変 更 する)、その変 更 は現 在 のコンフィギュ

レーションのセキュリティ・レベルを維持するという P r o l o g ルールを考

案 した。Ti d s w e l l と P o t t e r が考案 した方法は、オペレーティング・

システム(特 に U N I X)に関 連 しているため、P r o l o g ルールにコンテ

キスト・ベースの情 報 を組 み込み、ランタイム中 にユーザ・パーミッショ

ンに影 響 を与 える必 要性 がない。

C h a n d r a m o u l i が提唱 した D A F M AT は、2 つの点 において、上 記

のポリシーとは異 なる。

1 つ目は、D A F M AT がオペレーティング・システムではなく、アプリケー

ション・システムと深 く関 連 しているという点 である。2 つ目 は、あらゆる承

認 リクエストを 3 つのタイプに分類 し、そのタイプに応 じて承 認 /否認が決

定 されるという点 である。D A F M AT では、コンテキスト上 の情報 を含 めて、

承 認 リクエストにはそれぞれ 1 つのタイプが割 り当 てられ、その承認 タイプ

の要 件 を満 たすのに必 要 な条 件 がダイナミックにチェックされる。例 えば、

Page 88: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐79‐

ユーザへの仕 事 の割 り当 てなどのコンテキスト上 の情 報 を利 用 して、一

度 条 件 がチェックされると、D T E のサブジェクト -ドメイン・テーブルが、ユ

ーザ・セッションに対 して正 しいドメインを割 り当 てるために読み込 まれる。

サブジェクトが意 図 したオペレーションを実 行 するために必 要 な実 際 のパ

ーミッションは、ドメイン -タイプ・アクセス・マトリックスから読 み取 る。

5 .2 .4 We b サーバーへの適応性分析

D A F M AT の特 徴 は 、ユーザ と ロール 、 ロール と ド メ イ ンの関 係 が

「N : 1 」で定 義 されることと、論 理 駆 動 承 認 エンジンによりコンテキストが

扱 えることである。ユーザとロール、ロールとドメインの関 係 は「N : 1 」で定

義 されるので、ユーザが決 まれば、そのドメインも一 意 に決 定 される。これ

は、ユーザに実行可能 なドメインは 1 つしか存在 しないことを示 しており、

例 外 的 な処 理 を行 わない限 り、静 的 コンテンツと動 的 コンテンツを同 一

のドメインで処 理 することを示 す。論 理 駆 動 承 認 エンジンとは、上 記 の

「例 外 的 な処理 」を承 認する仕 組みである。特 定 の条件 が満 たされた場

合 、論 理 駆 動 承 認 エンジンにより、ロールに割 り当 てられていないドメイ

ンの付 与 されたプログラムの実 行 が許 可 される。このプログラムは付 与 さ

れたドメインで動 作 するため、論 理 駆 動 承認 エンジンに承 認 されることで、

本 来 は実 行 できないドメインのプログラムを動 作 させることができる。この

仕 組みにより、動 的 コンテンツと静 的 コンテンツを、異 なるドメインで We b

サーバーに処理 させることが可 能 となる。

また、新 たなドメインを追 加 し、そのドメインで We b サーバーを動作 させ

る為 には、ユーザ、ロール、ドメイン、ドメイン -タイプ・アクセス・マトリックス

の 5 つのポリシー・ファイルを修 正する必要 がある。D A F M AT では、ユー

ザとロール、ロールとドメインの関 係 は「N : 1」で定 義 されるため、ドメインの

追 加は、ユーザやロールの要素 にも影 響 を与 えることになる。

D A F M AT では、静 的 コンテンツと動 的 コンテンツに応 じて、異 なるドメ

Page 89: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐80‐

インで We b サーバーを動作 させることができる。そのため、C G I、S S I とい

った一 般 ユーザによって作 成 された信頼 できないプログラムが実行 される

場 合 に、そのプログラムに最 少 権 限 を付 与 することが可 能 である。しかし、

この利 点 はプログラムが設 定 されたドメインで動 作 する場 合 に限 られる。

D A F M AT には論理駆動承認 エンジンの仕組みがあるため、動 的 コンテ

ンツを攻 撃 者 に改 竄 された場 合 には、その動 的 コンテンツのアクセス可

能 な範 囲 、及 び、その動 的 コンテンツから論 理 駆 動 承 認 エンジンにより

実 行 が許 可 されるドメインのアクセス可 能 な範 囲 に被 害 が及ぶ。同 様 に、

We b サーバーを改竄 された場合 には、We b サーバーのアクセス可 能 な

範 囲 、及 び、We b サーバーから論 理 駆 動承 認 エンジンにより実 行 が許

可 されるドメインのアクセス可 能 な範囲 に被害 が及ぶ。

5 .3 PARBAC

A . H e はプライバシー保護の観点 から、組 織 内でプライバシー・ポリシ

ー を 強 制 す る た め の セ キ ュ リ テ ィ ・ ポ リ シ ー ・ モ デ ル 、 PA R B A C

( P r i v a c y - Aw a r e R o l e - B a s e d A c c e s s C o n t r o l ) を 提 唱 し た 。

PA R B A C は、R B A C の拡張であり、R B A C、D T E およびプライバシー保

護 を連結 させたモデルである。

5 .3 .1 R B A C と D T E を組み合わせる利点

R B A C は、多 種 多 様 な商 用 セキュリティ要 件 を満 たすことができる柔

軟 性 を持 ち、従 来 のセキュリティ・モデルと比 較 してアクセス制 御 の管 理

が容易 であり、システムの複雑性 、諸 経費および人的 エラーの削減 に有

効 である。しかし、R B A C は、プライバシー強 制 (E n f o r c e m e n t )におけ

る重 要 要 素 であるパーパスなどをモデリングするように設 計 されていない

ため、プライバシー・ポリシーの強制 に直接的に利用することはできない。

R B A C を用 いて、プライバシー強制 メカニズムを持 つコンテキスト・ベー

Page 90: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐81‐

スのアクセス制 御 を実現するためには、D T E との組み合わせが必要であ

る。

C h a n d r a m o u l i によって提 唱 されている D A F M AT は、R B A C と

D T E を組 み合 わせており、コンテキスト・ベースの承 認 を利 用 してプライ

バシー・ポリシーを強 制 するための基 礎 構 造 と言 える。しかし D A F M AT

は、パーパスおよびデータ・ポリシーをモデリングしていないため、プライバ

シー・ポリシーを十 分 に強制できるとは言 い難 い。そこで、H e が提唱 した

のが PA R B A C である。PA R B A C は、C h a n d r a m o u l i の D A F M AT に

おけるアクセス制 御構造 と K a r j o t h らの研 究および P o w e r s らの研 究 に

おけるプライバシー強制 /管理のアイディアを結 合 させた拡張 R B A C モ

デルである。

5 . 3 . 1 . 1 ポリシー・モデルの概 要

H e が提唱する PA R B A C は、アクセス制 御 にプライバシー強制 /管理

のアイディアを組み合 わせたモデルである。以 下 では、PA R B A C の概要

を、セキュリティ・ポリシーとプライバシー・ポリシーに分 けて解説する。

5 . 3 . 1 . 2 セキュリティ・ポリシー

基本的 な構造は D A F M AT を参 考 にしているが、承 認 エンティティの

定 義や承認エンティティ間 のマッピングの関係 などが一部異 なっている。

PA R A B C の主要承認エンティティは、以 下 の 7 つである。

1 . ユーザ(U S E R)

2 . ロール(R O L E)

ロールは、組 織内 の職務権限 を表す。

3 . サブジェクト(S U B J E C T)

ビジネス・プロセス機 能 を実 行 するために、ユーザが特 定 のロー

Page 91: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐82‐

ルで呼 び出 すプログラム、ユーザ・エージェントまたは実 行 ファイ

ルを表 す。

4 . ドメイン(D O M A I N)

ロールが機能する企業 の高 レベルな機能領域 を表す。

5 . パーパス(P U R P O S E)

オペレーションを実 行 する目 的 を表 す。パーパス同 士 は、ロール

のヒエラルキー関 係 のような、半 順 序 の関 係 を持 つ。半 順 序 の

関係 とは、再 帰的 、推 移的 かつ半対称的 な関係 である。

図 5 - 5 パーパス・ヒエラルキー例

任意のパーパスに対するオペレーションが許 可 されると、そのパ

ーパスのサブ・パーパスに対 するオペレーションも許 可 される。上

図 では、E m a i l M a r k e t i n g、p o s t a l M a r k e t i n g、P h o n e / F a x

M a r k e t i n g は 、 D i r e c t M a r k e t i n g お よ び 3 r d P a r t y

M a r k e t i n g のサブ・パーパスである。

例 えば、顧 客 が E m a i l M a r k e t i n g に対 してのみ個人情報 を利

用 する こ と を承 諾 した場 合 、 E m a i l M a r k e t i n g が D i r e c t

M a r k e t i n g と 3 r d P a r t y M a r k e t i n g の両方 に属 しているため、

{Φ}

Marketing

3rd partyMarketing

DirectMarketing

EmailMarketing

PostalMarketing

Phone/FaxMarketing

{Φ}

Marketing

3rd partyMarketing

DirectMarketing

EmailMarketing

PostalMarketing

Phone/FaxMarketing

Page 92: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐83‐

システムは E m a i l M a r k e t i n g が属する一意 の親パーパスを決

定 することができない。このような両 義 的 なパーパス参 照 を避 ける

ために、PA R B A C モデルのサブジェクトは、パーパス・ヒエラルキ

ーの低 いレベルにマッピングする必 要 がある。

さらに、H e はタスク(Ta s k)というエンティティを導 入 した。タスクは、

ロールとパーミッションの間 を仲 介 する役 割 を持 つエンティティで、

パーパス・ヒエラルキーに類 似 したタスク・ネットワークというヒエラ

ルキーを持 つ。仮 にタスクを使 わず、パーパスとロール -パーミッシ

ョンのペアとに直 接 的 な関 連 性 を持 たせた場 合 、一 意 に正 しい

パーパスを決 定 できない可 能 性 がある。例 えば、配 送 部 門 のロ

ール A とマーケティング部 門 のロール B が、それぞれ別 の目的で

顧 客 連 絡 先 情 報 にアクセスするパーミッションを持 っていた場 合

を例 に挙げる。あるユーザがロール A とロール B に任命 され、顧

客 連 絡 先 情 報 にアクセスすると、システムはこのオペレーションが

配 送 部 門 のパーパスに対 するものなのか、マーケティング部 門 の

パーパスに対 するものなのかを判 断 することができない。これを避

けるために導 入 されたのがタスクであり、パーパス・ヒエラルキーの

場 合 と同 じ理 由 から、サブジェクトはタスク・ネットワークの低 いレ

ベルにマッピングする必 要 がある。

6 . オブジェクト・タイプ(O B J E C T- T Y P E)

関 連 する情 報 を扱 い、類 似 した手 法 で処 理 され得 るオブジェク

トのグループを表す。

7 . オブジェクト・ポリシー(O B J E C T- P O L I C Y)

実際のデータ利用 ポリシーを表す。

Page 93: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐84‐

エンティティ間 の関 係 は、ソース・エンティティからターゲット・エンティテ

ィへの「多 対 多 (M : N ) 」、「多 対 一 (N : 1) 」、「一 対 多 (1 : N ) 」、「一 対 一

(1 : 1)」の関 係 のいずれかに分類 される。

1 . ユーザロール

1 つのユーザに複数 のロールを割 り当 てることができ、1 つのロー

ルに複 数 のユーザを割 り当 てることができる。従 って、ユーザとロ

ールは「M : N」の関 係 にある。

2 . ロール -ドメイン

1 つのロールは必ず 1 つのユニークなドメインと関 連 付 けられる。

1 つのドメインに複 数 のロールを関連付 けることができる。従 って、

ロールとドメインは「N : 1」の関 係 にある。

3 . ロール -タスク

1 つのタスクは必 ず 1 つのユニークなロールに割 り当 てられる。1

つのロールは複 数 のタスクを実 行 することができる。従 って、ロー

ルとタスクは「1 : N」の関 係 にある。

4 . サブジェクト -ロール

サブジェクトは、あるタスクを実 行するために 1 つ以上のロールに

よって呼 び出 される。ロールは指 定 されたタスクを実 行 するため

に複 数 のサブジェクトを呼 び出 す必 要 がある。従 って、サブジェ

クトとロールは「M : N」の関 係 にある。

5 . サブジェクト -ドメイン

サブジェクトの実 行 動 作は、割 り当 てられているドメインに基 づい

て規定 されるため、1 つのサブジェクトは必 ず 1 つのユニークなド

メインと関 連 付 けられる。複 数 のサブジェクトが同 じドメインを持

つこともできる。従 って、サブジェクトとドメインは「N : 1 」の関 係 に

ある。

Page 94: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐85‐

6 . サブジェクト -タスク

1 つのサブジェクトは複 数 のタスクと関 連 付 けることができる。

PA R B A C モデルでは、サブジェクトは、常 にタスク・ネットワークの

最 低 レベルのタスクと関 連 付 ける必 要 があるので、1 つのタスクを

実 行 するために、複 数 のサブジェクトを呼 び出 す場 合 もある。従

って、サブジェクトとタスクは「N : 1」の関 係 にある。

7 . タスク -パーパス

通常 、1 つのタスクは複 数 のパーパスと関 連付 けることができる。

しかし、PA R B A C モデルでは、タスクは、常 にパーパス・ヒエラル

キーの最 低 レベルのパーパスと関 連 付 ける必 要 があるので、複

数 のタスクが 1 つのパーパスに関連付 けられる場 合 もある。従 っ

てタスクとパーパスは「N : 1」の関 係 にある。

8 . オブジェクト -オブジェクト・タイプ

1 つのオブジェクトは必 ず 1 つのユニークなオブジェクト・タイプを

持 ち、複 数 のオブジェクトが同 じオブジェクト・タイプを持 つことも

できる。従 って、オブジェクトとオブジェクト ・タイプは「N : 1 」の関

係 にある。

9 . オブジェクト -オブジェクト・ポリシー

1 つのオブジェクトは必 ず 1 つのユニークなオブジェクト・ポリシー

を持 つ。1 つのオブジェクト・ポリシーは必ず1つのユニークなオブ

ジェクトを持 つ。従 って、オブジェクトとオブジェク ト ・ポリシーは

「1 : 1」の関 係 にある。

1 0 . D T E エントリ(ドメイン、オブジェクト・タイプ、アクセス・モード)

ドメインとオブジェクト・タイプのペアは、D o m a i n Ty p e A c c e s s

M a t r i x と呼 ばれるテーブルに保 存 される。ドメインとオブジェク

ト・タイプの 1 ペアは、アクセス・モードの集 合 と関 連付 けられてい

る。従 って、ドメイン -オブジェクト・タイプのペアとアクセス・モード

は「M : N」の関 係 にある。

Page 95: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐86‐

1 1 . ロール -ロール

ロール・ヒエラルキー内 のロール同 士は半順 序 の関係 にあり、例

えばロール 1 とロール 2 があった場合 、ロール 1 はロール 2 のス

ーパー・ロールとなる。ロール同士は「M : N 」の関 係 にある。

1 2 . タスク -タスク

タスク・ネットワーク内 のタスク同 士 は半 順 序 の関 係 にあり、例 え

ばタスク 1 とタスク 2 があった場合 、タスク 1 はタスク 2 のスーパ

ー・ロールとなる。タスク同 士は「M : N」の関 係 にある。

1 3 . パーパス -パーパス

パーパス・ヒエラルキー内 のパーパス同 士 は半 順 序 の関 係 にあ

り、例 えばパーパス 1 とパーパス 2 があった場合 、パーパス 1 は

パーパス 2 のスーパー・ロールとなる。パーパス同士は「M : N」の

関 係 にある。

ソース・エンティティ : ターゲット・エンティティ マッピング・タイプ

ユーザ : ロール M : N

ロール : ドメイン N : 1

ロール : タスク 1 : N

サブジェクト : ロール M : N

サブジェクト : ドメイン N : 1

サブジェクト : タスク N : 1

タスク : パーパス N : 1

オブジェクト : オブジェクト・タイプ N : 1

ドメイン -オブジェクト ・タイプ : アクセス・モー

M : N

ロール : ロール M : N

Page 96: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐87‐

タスク : タスク M : N

パーパス : パーパス M : N

表 5 - 2 R E R B A C におけるエンティティのマッピング

図 5 - 6 PA R B A C モデル構造

さらに、これらのエンティティの関 係は、以 下 の 3 つの制約 によって制

限 されている。

• 制約 1 :

あるサブジェクトを呼 び出 すことができる全 てのロールには、サブジ

ェクトと関 連 付 けられているユニークかつ同 じドメインが割 り当 てら

れていなければならない。

• 制約 2 :

2 つのタスクを実 行するために、同 じサブジェクトを呼 び出す必要

がある場 合 、 2 つのタスクは同 じパーパスにマッピングされなけれ

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

M:N N:1

N:1M:N

M:N

N:1

TASK

PURPOSE OBJECTPOLICY

1:1

N:1

1:N

N:1

M:N

M:N

※ 網掛け部は、PARBACにおいて新たに導入されたエンティティを表す。

USER

ACCESSMODE

ROLE DOMAIN

SUBJECT OBJECT

DOMAIN-TYPE PAIR

OBJECT-TYPE

M:N N:1

N:1M:N

M:N

N:1

TASK

PURPOSE OBJECTPOLICY

1:1

N:1

1:N

N:1

M:N

M:N

※ 網掛け部は、PARBACにおいて新たに導入されたエンティティを表す。

Page 97: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐88‐

ばならない。

• 制約 3 :

ロールがあるタスクの実 行 を許 可 されており、そのタスクを完 遂 す

るためにサブジェクトを呼 び出 す必要 がある場 合 に限 り、ロールを

サブジェクトと関 連 付 けることができる。

PA R B A C においてデータ・アクセスの目的 (パーパス)は、各 承 認 エン

ティティから推 測 することが可 能 である。例 えば、あるビジネス・プロセスを

実 行 するためにユーザがサブジェクトを呼 び出 した場 合 、まずサブジェク

トはタスク・ネットワーク内 の最低 レベルにある 1 つのユニークなタスクにマ

ッピングされる。次 にそのタスクがパーパス・ヒエラルキー内 の最 低 レベル

にある 1 つのユニークなパーパスにマッピングされる。このようなプロセスに

より、パーパスが特定 される。

5 . 3 . 1 . 3 プライバシー・ポリシー

H e が提唱する PA R B A C では、K a r j o t h らが提 唱 した t h e P l a t f o r m

f o r E n t e r p r i s e P r v a c y P r a c t i c e s 3 (以 下 E - P 3 P とする )および

P o w e r s らが発 表 した論 文 「P r i v a c y P r o m i s e s , A c c e s s C o n t r o l ,

a n d P r i v e c y M a n a g e m e t」に見 られる基 礎的 なプライバシー強制やプ

ライバシー管理 のアイディアを採 用 している。

E - P 3 P では、プライバシー・ポリシーの強 制 方 法 としてメタデータに基

づくアプローチ法 4を採 用 している。E - P 3 P には、(1 )アクセス制 御 上 に

3 顧 客 のプライバシーを保護 しながら、顧 客 データを管 理 ・交 換 する

ための技術 。プライバシー・オフィサー、セキュリティ・オフィサー、カスタマ

の 3 つのロールによってシステム内 の責務 を分離 し、アクセス制 御 とプライバシー制御 の両方 に基づく承 認付与 を実行する。

4 プライバシー・ポリシの強 制方法 の 1 つ。メタデータに基づくアプローチ法 では、まずデータの利用法 に関するタグなどのメタデータを各 データ

Page 98: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐89‐

プライバシー強 制 が構築 されているので、企 業 のレガシー・アプリケーショ

ンに適 応 可能 、(2)プライバシー制御 とアクセス制 御 を分離 しているので、

フレキシビリティが向 上 、(3)3 つのロールに責務 を分離 したことで、大 企

業 での容 易 なプライバシー管 理 が可 能 、といった利 点 がある。H e は、

E - P 3 P の利 点 を評 価 しながらも、システムのプライバシー・ポリシーの強

制 方 法 は、そのシステムが採 用 するアクセス制 御 モデルの影 響 を受 ける

ため、プライバシー制 御 はアクセス制 御 と共 に考 えなければならないと主

張 している。そこで、PA R B A C では詳細 なアクセス制 御 モデルをベースと

してプライバシー強制 を実現 した。

P o w e r s らによる論 文 「P r i v a c y P r o m i s e s , A c c e s s C o n t r o l , a n d

P r i v e c y M a n a g e m e n t 」において一 般 的 なプライバシーポリシー・ルー

ルは以下 のように解 説 されている。

ALLOW [Data User]

to perform [Operation] on [Data Type]

for [Purpose] provided [Condition]

Carry out [Obligation]

[ ] 内の各要素については以下 の通 りである。

• D a t a Ty p e

プライバシー・ポリシーでは、顧 客 データを、連 絡 先 や購 入 履 歴

のように、性 質 に応 じて分 類 されたデータ集 合 として扱 うことが多

い。その分類 ラベルがデータ・タイプである。

• P u r p o s e

パーパスとはデータを利 用する目的である。

集合 に関 連付 け、サブジェクトがあるデータへのアクセス要 求 をした場 合 、

メタデータをチェックし、オペレーション実 行 の許可 を決定する。

Page 99: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐90‐

• C o n d i t i o n

プライバシー・ポリシーでは、特 定 の条 件 が満 たされなければデー

タにアクセスできない場 合 がある。この場 合 の「特 定 の条 件 」がコ

ンディションである。例 えば、プライバシー・ポリシーが「私 の連 絡

先 情 報 はトランザクションの完 了 のために利 用 できるが、情 報 の

利用期限は 3 0 日 である」という場 合 、「情 報 の利用期限は 3 0

日である」がコンディションである。

• O b l i g a t i o n

プライバシー・ポリシーでは、あるアクセスが許 可 された場 合 に、別

のオペレーションを実 行 しなければならない場 合 がある。この場 合

の「別 のオペレーションの実 行 」がオブリゲーションである。例 えば、

プライバシー・ポリシーが「私 の連 絡 先情報 はトランザクションの完

了 のために利用できるが、3 0 日以内に削除 しなければならない」

である場 合 、「3 0 日以内に顧客 の連絡先情報 を削除する」がオ

ブリゲーションである。

H e は、 このプラ イバシー ・ ポ リ シー ・ルールの考 え方 を参 考 にし 、

PA R B A C において以 下 のようなプライバシー強 制 の承 認 プロセスを構

築 した。

1 . ユーザがプライバシー保 護 されたデータにアクセスした場 合 に、

アクセス制 御 チェックおよび該 当 データ・ポリシーの読 み出 しが

実行 される。

2 . データ・ポリシーから読 み出 されたパーパスがチェックされる。

3 . コンディションが設 定 されている場 合 は、コンディションのチェック

を実 行する。

4 . オブリゲーションが設 定 されている場 合 は、オブリゲーション実 行

モジュールによりオブリゲーションを実 行する。

Page 100: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐91‐

5 . アクセスを監 査 ログに書込む。

図 5 - 7 PA R B A C の承認 プロセス

5 .3 .2 ポリシー・モデルの特徴

組 織 の視 点 に立 ったシステムセキュリティに加 え、消 費 者 の視 点 に立

った顧客 のプライバシー強制 /管理機能 を組み込 んだ点が PA R B A C の

最大 の特徴 と言 うことができる。より具 体 的 には、それまでの R B A C には

なかったパーパス、タスク、オブジェクト・ポリシーというエンティティを導 入

したことが特 徴的である。

しかしながら、メタデータに基 づくアプローチ法 を採 用 しており、トラステ

ユーザ・リクエスト

ロール/パーミッションのチェック

パーパスのチェック

コンディションのチェック

オブリゲーションの実行

アクセス許可

アクセス拒否

オブリゲーションのチェック

監査ログへ書込み

終了

データポリシの読み出し許可

No

No

No

No

Yes

Yes

Yes

Yes

ユーザ・リクエスト

ロール/パーミッションのチェック

パーパスのチェック

コンディションのチェック

オブリゲーションの実行

アクセス許可

アクセス拒否

オブリゲーションのチェック

監査ログへ書込み

終了

データポリシの読み出し許可

No

No

No

No

Yes

Yes

Yes

Yes

Page 101: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐92‐

ッド・システム上 に構 築 することを前 提 としているので、プライバシー・コン

プライアンスを保 障 する事 ができない。オブジェクトの利 用 制 御 に使 用す

るオブジェクト・ポリシーを、悪 意 あるアプリケーションまたはユーザが変 更

してしまった場 合 には、プライバシー強 制 を保 障 することは不 可 能 である。

さらに、PA R B A C では全 てのプライバシー問 題 に対 処 できるわけではな

い。対 象 にしているのは、収 集 された顧客 データのプライバシー保護 であ

り、データ・マイニングによるプライバシー侵 害 や匿 名 性 の問 題 を解 決 す

ることはできない。

5 .3 .3 We b サーバーへの適応性分析

PA R B A C の特徴は、タスク、パーパスとオブジェクト・ポリシーの要素が

追 加 されていることである。ロールとドメインの関 係 は「N : 1 」で定 義 される

ので、ロールによってドメインが一 意 に決 定 される。つまり、ロールの実 行

可能 なドメインは 1 つしか存在 しないので、静 的 コンテンツと動 的 コンテ

ンツを同 一 のドメインで処 理 しなければならない。しかし、PA R B A C では、

タスク、パーパス、オブジェクト ・ポリシーによって同 一 ドメイン内 で異 なる

オブジェクトの使 われ方 を定 義 することができる。そのため、静 的 コンテン

ツと動 的 コンテンツは、同 一 のドメインで動 作 しながらも、異 なるアクセス

制 御 を受 けることになる。

タスク、パーパス、オブジェクト ・ポリシーを使 い、同 一 ドメイン内 に異 な

るアクセス制 御 を導 入 する場 合 、タスク、パーパス、オブジェクト・ポリシー

とドメイン -タイプ・アクセス・マトリックスの 4 つのポリシー・ファイルを修 正す

る必要がある。PA R B A C では、タスク、パーパス、オブジェクト・ポリシーと

いった新 しい要 素 が追加 されたため、ドメインやタイプの修 正は必要 ない

ものの、それらの新 しい要素 に対する設定 が必要 となる。

PA R B A C では、タスク、パーパス、オブジェクト・ポリシーを使 い、同 一

ドメイン内 で異 なるアクセス制 御 を実現 できる。そのため、C G I、S S I とい

Page 102: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐93‐

った一 般 ユーザによって作 成 された信頼 できないプログラムが実行 される

場 合 に、そのプログラムに最 少 権 限 を付 与 することが可 能 である。動 的

コンテンツが攻撃者 により改 竄 された場合 にも、動 的 コンテンツのタスクと

パーパスでアクセス可 能 なオブジェクト、及 び、その動 的 コンテンツから外

部実 行可能 なプログラムのタスクとパーパスでアクセス可 能 なオブジェクト

が攻 撃 範 囲 となる。同 様 に、We b サーバーが改 竄 された場 合 には、

We b サーバーのタスクとパーパスでアクセス可 能 なオブジェクト、及 び、

We b サーバーから外 部実行可能 なプログラムのタスクとパーパスでアクセ

ス可 能 なオブジェクトが攻 撃範囲 となる。

ところで、PA R B A C はデータのプライバシーの保 護 を目 的 とした機 能

も持 つ。これらは、 「C o n d i t i o n 」や 「O b l i g a t i o n 」 といった機 能 を使 い

実現 される。例 えば、PA R B A C が実装 されたシステムでは、3 日間だけ

閲覧できるデータを作 成することができる。PA R B A C は、R B A C と T E で

実 現 されるセキュリティ保 護 機 能 に加 え、これらのプライバシーの保 護 機

能 を持 っている。

このようなプライバシー保護 の機能 を We b サーバーに適応 させる場 合

を考 える。We b のようなシステムでは、サーバーのデータをクライアントに

対 して開 示するため、PA R B A C の管理外 にデータを送 信することになる。

そのため、サーバー内 で 3 日間だけ閲覧 できる We b ページを作成するこ

とはできても、クライアントのキャッシュに残 る We b ページを 3 日後に閲覧

不能にすることはできない。クライアントを含 めて PA R B A C の実装 がなさ

れた場 合 には、クライアントに残 されるキャッシュやクッキーを含 めた、非

常 に厳 格 なデータの管 理 が可 能 になるが、We b のようなシステムでは、

悪 意 のあるクライアントの想 定 が当然 であるため、そもそも、PA R B A C に

よって実 現 されるプライバシー保 護 の側 面 は、We b システムには適 応 し

ない。

Page 103: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐94‐

5 .4 SELinux SPM

S E L i n u x はオープンソースで開 発 されているセキュアオペレーティン

グ・システムである。

高 度 なアクセス制 御 機 能 を備 え、他 のセキュアオペレーティング・シス

テムと比 べてもきめ細 かい設定 が行 える。また、L i n u x カーネル 2 . 6 より、

カーネルそのものに組 み込 まれているため、導 入 時 のコストが軽 減 され

る。

S E L i n u x の大 きな特徴 として、S E L i n u x はカーネル 2 . 6 より実 装 さ

れた L S M ( L i n u x S e c u r i t y M o d u l e s)の仕 組 みを使 って実装 されるカ

ーネルモジュールであることが挙 げられる。L S M とは、カーネルよりアクセ

ス制 御 に関する処 理 をモジュールに任せる仕組みであり、L S M を使 うこ

とで、複 数 の異 なるセキュアオペレーティング・システム(モジュール)を自

在 に組 み込 むことが可 能 となる。また、モジュールを組 み込 むだけで、従

来 の L i n u x 環境 より、セキュアな環 境 に移行できるメリットがある。

5 .4 .1 ポリシー・モデルの概要

S E L i n u x に実 装 されているアクセス制 御 の基 本 的 な仕 組 みは、以

下 のモデルで説明 される。

あるプロセスがリソースに対 してアクセスをする場 合 、図 5 - 8 のように、

まずは従来 の L i n u x が持つ D A C(D i s c r e t i o n a r y A c c e s s C o n t r o l )

と呼 ばれるアクセス制 御 が行 なわれる。D A C とは、U N I X に標準で実装

されている仕 組 みで、パーミッションビットを使 用 することによりアクセス制

御 が実現 される。D A C では、ユーザ自身 が所有するファイルやディレクト

リは、ユーザ自 身 、ユーザの所 属するグループ、他 人 に対 して、それぞれ

の読 み取 り、書 き込 み、実 行 権 限 が設 定 される。このチェックをパスする

と、S E L i n u x モジュールに処理 が移 り、S E L i n u x 独自のアクセス制 御

が行 なわれる。

Page 104: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐95‐

図 5 - 8 D A C と S E L i n u x モジュールの関 係

5 .4 .2 ポリシー・モデルの特徴

S E L i n u x は 、 R o l e - B a s e d A c c e s s C o n t r o l ( R B A C ) と Ty p e

E n f o r c e m e n t ( T E )を組 み合 わせたセキュリティ・ポリシー・モデルを採 用

する。R B A C は、ユーザに与 えられた権限 を役割 に応 じて分割 し、必 要

最小限 の権限行使 を強制する。T E は、プロセスの粒度でアクセス権 限

を厳 格 に管 理 することができる。セキュリティ・ポリシー・モデルを図 5 - 9

に示す。

ユーザは、U N I X におけるユーザ・アカウントにマッピングされる。ロール

は、ユーザに付 与 する属 性 で、各 ユーザには、複 数 のロールを割 り当 て

ることができる。各 ロールには、アクセス権 限 範 囲 を示 すドメインを割 り当

てる。サブジェクトは、U N I X におけるプロセスを指 し、各 プロセスは、プロ

セスを起 動 したユーザのロールにより決 定 されるドメインが付 与 される。ア

プロセスプロセス

DAC(従来のパーミッション

チェック)

DAC(従来のパーミッション

チェック)

リソースリソース

SELinuxモジュールSELinuxモジュール

プロセスプロセス

DAC(従来のパーミッション

チェック)

DAC(従来のパーミッション

チェック)

リソースリソース

SELinuxモジュールSELinuxモジュール

Page 105: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐96‐

クセス対 象 となるオブジェクトは、U N I X におけるプログラムファイル、デー

タファイル、ディレクトリやデバイス等 の特 殊 ファイルを含 む。各 オブジェク

トは、アクセスを許 可 する権 限 範 囲 を示 すオブジェクト・タイプを付 与 する。

アクセス・ベクターは、アクセスの種類 を示 し、単 純 なファイル I / O やプロ

グラムの実 行 からデバイスへの特 殊 アクセス等 、様 々なアクセス形 態 を示

すことが可 能 である。アクセス制 御 設 定 は、アクセス主 体 の権 限 範 囲 を

示 すドメイン、アクセス対 象 の種 類 を示 すオブジェクト・クラス、アクセス対

象 の権限範囲 を示すオブジェクト・タイプの組み合 わせにより記 述 する。

プログラム起 動 時 におけるプロセスの既 定 のドメインは、プログラムを起

動 したプロセスのドメインが継 承 される。ただし、プログラムを起 動 したプロ

セスのドメインとプログラムファイル(エントリーポイント)に付 与 されたオブ

ジェクト・タイプの組 み合 わせにより記 述 されたポリシーにより、既 定 のドメ

イン以 外 のドメインを付 与 すること(ドメイン遷 移 )を強 制 することができる。

図 5 - 1 0 にドメイン遷 移 の流れを示す。U N I X では、プログラム起 動 プロ

セスを f o r k と e x e c の 2 つのシステムコールにより実 現 している。 f o r k シ

ステムコールは、プロセスの複 製 を作 成 する機 能 を持 ち、複 製 されたプロ

セスは、複 製元 と同 じドメインが付 与 される。e x e c システムコールはプログ

ラムファイルを実 行 する機 能 を持 ち、目 的 のプログラムを複 製 されたプロ

セスで実行する。ドメイン遷 移は「遷 移 元 のドメイン』、「プログラムファイル

(エントリーポイント)のオブジェクト・タイプ』、「遷 移 後 のドメイン』で規 定 さ

れ、特 定 の組み合わせでプログラムが実行 されると、e x e c システムコール

が実行 される際 にドメインが強 制的 に遷移 させられる。

ドメイン遷 移 の具 体 例 として、ユーザがシェルよりコマンドを実 行 する

場 合 を考 える。ユーザはログインする際 に割 り当 てられるロールか、または

明 示 的 にロールを指 定 することで、操 作 に必 要 な最 小 の権 限 を持 つロ

ールがアクティブにされている。また、ユーザのシェルプロセスはロールに

割 り当 てられたドメインで起 動 される。ここで、ユーザがドメイン遷 移 を起 こ

すようなプログラムファイルを実 行 した場合 、まず f o r k によって同 じドメイ

Page 106: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐97‐

ンで動作するプロセスが複製 される。そして、 e x e c 命令により複 製 された

プロセス内 で指 定 されたプログラムファイルが実 行 される。この際 、プログ

ラムファイル(エントリーポイント)のオブジェクト・タイプとプロセスのドメイン

の組 み合 わせがドメイン遷 移 のポリシー・ファイルに記 述 されていると、複

製 されたプロセスは記述 されたドメインに強 制的 に遷移 させられる。

例 として、専 用 のエディタを使 って顧 客 データを編 集 する場 合 を想 定

して、アクセス制 御 の仕 組 みを説 明 する。ユーザは、ログイン時 もしくは、

顧 客 データの編 集 作 業 に先 だって、適 切 なアクセス権 限 を持 つロール

を選 択 する。ロールを選 択 することにより、ユーザ・プロセスのドメインがロ

ールに割 り当 てられたドメインに変 更 される。ユーザがエディタを起 動する

と、ドメイン遷 移 が起 きなければ、ロールと同 じドメインでエディタは起 動 さ

れる。このドメインで起 動 したエディタは、顧 客 データに対 して、ポリシー・

ファイルによって許 可 された操 作 (読 み込 み、書 き込 み等 )を実 行 でき

る。

S E L i n u x の S P M の特徴 としては、“ドメイン遷 移 ”と、“ロールとドメイ

ンの対 応関係 ”の 2 つが挙げられる。

ドメイン遷 移 は、「遷 移 元 のドメイン」、「実 行 ファイル(エントリーポイン

ト)のオブジェクト・タイプ」、「遷 移 後 のドメイン」によって遷 移 後 のドメイン

が決 定 される。全 てのプロセスには、セキュリティ・コンテキストと呼 ばれる

「ユーザ」、「ロール」、「ドメイン」の情 報 が付 加 されているが、そのプロセ

スがどのドメインに遷 移 するかは、「ロール」や「ユーザ」に影 響 されない。

そのため、ユーザが使 用可能 なドメインの範 囲 が分 かり難 い。また、遷 移

する可 能 性 のあるドメインを特 定 するには、遷 移 元 のドメインとプログラム

中 で実 行 される外 部 コマンドをキーにして、ドメイン遷 移 の設 定 ファイル

を調 べていく必 要 がある。

ロールとドメインの N 対 1 の対応関係 も重 要 な特徴 に挙げられる。

H o f f m a n の S P M のように、ロールとドメインが N 対 M の関係にあり、プ

ログラムファイル(サブジェクト)とドメインが N 対 1 の関係 にある場 合 、プ

Page 107: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐98‐

ログラムファイル(サブジェクト)は、1 つのドメインしか付 与 されない。この

ため、プログラムが多 くの機 能 を持 っている場 合 には、それら全 ての機 能

で必 要 な権 限 をドメインに与 えなければならない。対 して、ロールとドメイ

ンが N 対 1 の関係 にあり、サブジェクトのドメインはドメイン遷 移 によって

決 まる S E L i n u x の S P M は、プログラムを呼 び出すプロセスのドメインに

応 じて、遷 移 後 のドメインは変 更 される。これにより、汎 用 的 なプログラム

に対 して、より柔 軟 なアクセス制 限 を設定する事 が可能 になる。

図 5 - 9 S E L i n u x のセキュリティ・ポリシー・モデルの構 造

• S U B J E C T の D O M A I N が決 まる過 程

(ドメイン D 1 を割 り振 られたロールで作業するユーザが、タイプ T 1 を

割 り当 てられたファイルを実 行 し、新 たなプロセスを起 動する場合 )

USER

ACCESSVECTOR

ROLE DOMAIN

D-T-C

OBJECT-CLASS

M:N N:1

M:N:O

N:1N:1

OBJECT-TYPE

OBJECTSUBJECT

USER

ACCESSVECTOR

ROLE DOMAIN

D-T-C

OBJECT-CLASS

M:N N:1

M:N:O

N:1N:1

OBJECT-TYPE

OBJECTSUBJECT

Page 108: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐99‐

図 5 - 1 0 サブジェクトのドメインが決 まる過 程

5 .4 .3 We b サーバーへの適応性分析

S E L i n u x のセキュリティ・ポリシー・モデルの特徴は、ドメイン遷 移 の機

能 を持 つことである。ドメイン遷 移 は、サブジェクトのドメインを決 定 する仕

組みであり、「 5 . 4 . 2 ポリシー・モデルの特徴 」で説 明 したような機 能 を持

つ。例 えば、ファイルの中身 を表示するプログラムは、遷 移元 のドメインに

よってプロセスのドメインが変 化 する。これにより、遷 移 元 のドメイン毎 に

異 なったアクセス制 御 を設 定 できる。例 えば、ファイルの中 身 を表 示 する

プログラムを使 い、一 般 のユーザがパブリックなファイルにアクセスする場

合 と、管 理 者 がシステムファイル・アクセスする場 合 では、プログラムの目

的 が異 なっている。ドメイン遷 移 の仕 組 みは、このような目 的 に応 じたア

クセス制 御 の変 更 を実 現 する。また、ユーザとロールの関 係 が「M : N 」で、

ロールとドメインの関 係 が「N : 1」で定 義 されるため、ユーザは複数 のドメイ

ンを使 用することができる。

また、新 たなドメインを追 加 し、そのドメインで We b サーバーを動作 させ

SUBJECT

ドメイン D1

OBJECTタイプ T1

ドメイン遷移

プロセスを複製する

fork() SUBJECT

ドメイン D1

SUBJECT

ドメイン Dx

プログラムを実行する

exec()

SUBJECT

ドメイン D1

OBJECTタイプ T1

ドメイン遷移

プロセスを複製する

fork() SUBJECT

ドメイン D1

SUBJECT

ドメイン Dx

プログラムを実行する

exec()

Page 109: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐100‐

る為 には、ドメイン、ドメイン遷 移 、オブジェクト・タイプとドメイン -タイプ・ア

クセス・マトリックスの 4 つのポリシー・ファイルを修 正 する必 要 がある。

S E L i n u x のセキュリティ・ポリシー・モデルでは、ドメインを追 加することで、

ドメイン遷 移 の設定 も追 加する必要 がある。

S E L i n u x のセキュリティ・ポリシー・モデルでは、静 的 コンテンツと動 的

コンテンツに応 じて、異 なるドメインで We b サーバーを動作 させることがで

きる。そのため、C G I、S S I といった一 般 ユーザによって作 成 された信 頼

できないプログラムが実 行 される場 合 に、そのプログラムに最 少 権限 を付

与 することが可 能 である。しかし、この利 点 はプログラムが設 定 されたドメ

インで動 作 する場合 に限 られる。S E L i n u x のセキュリティ・ポリシー・モデ

ルではドメイン遷 移 の仕 組 みがあるため、動 的 コンテンツを攻 撃 者 に改

竄 された場 合 には、その動的 コンテンツのアクセス可 能 な範囲 、及 び、そ

の動 的 コンテンツからドメイン遷 移 可 能 なドメインのアクセス可 能 な範 囲

に被害が及ぶ。同 様 に、We b サーバーを改竄 された場合 には、We b サ

ーバーのアクセス可 能 な範 囲 、及 び、We b サーバーからドメイン遷 移 可

能 なドメインのアクセス可 能 な範囲 に被害 が及ぶ。

ドメイン遷 移 の欠 点 は、ドメインとサブジェクトのマッピングが静 的 に表

せないことである。一 見 しただけでは、プログラムが遷 移 する可 能 性 のあ

るドメインは判 別 できない。ドメイン遷 移 の設 定 に間 違 いがあれば、思 わ

ぬドメインに遷 移 可 能 な動 的 コンテンツがユーザによって作 成 されてしま

う。

5 .5 Trusted So lar i s SPM

Tr u s t e d S o l a r i s は、サン・マイクロシステムズ社 によって開 発 されて

いるセキュリティ機 能 が強化 されたオペレーティング・システムである。

S o l a r i s に比べ、ユーザの階層 ごとに参 照できるデータが異 なる組 織

や、重 要 なデータを扱 う場 合 に適 している。

Page 110: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐101‐

5 .5 .1 ポリシー・モデルの概要

Tr u s t e d S o l a r i s に実装 されているアクセス制 御 の基本的 な仕組み

を説明する。

Tr u s t e d S o l a r i s では、D A C と M A C を組 み合わせたアクセス制 御

が行 われる。例 えば、あるユーザがファイルを参 照 するには、 D A C と

M A C のそれぞれに反 していないことが条 件 となる。

図 5 - 11 D A C と M A C

5 .5 .2 ポリシー・モデルの特徴

Tr u s t e d S o l a r i s は M u l t i - l e v e l S e c u r i t y(M L S )と R o l e - B a s e d

A c c e s s C o n t r o l ( R B A C )を組 み合 わせたセキュリティ・ポリシー・モデル

を採 用 する。M L S は全 てのサブジェク ト とオブジェク トに機 密 ラベル

プロセスプロセス

DAC(従来のパーミッション

チェック)

DAC(従来のパーミッション

チェック)

リソースリソース

MAC(ラベルに基づくアク

セス制御)

MAC(ラベルに基づくアク

セス制御)

プロセスプロセス

DAC(従来のパーミッション

チェック)

DAC(従来のパーミッション

チェック)

リソースリソース

MAC(ラベルに基づくアク

セス制御)

MAC(ラベルに基づくアク

セス制御)

Page 111: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐102‐

(S E N S I T I V I T Y- L A B E L )を付 与 し、機 密 ラベルを比 較 することでアク

セス制 御 を行 う。Tr u s t e d S o l a r i s の R B A C は従来 の L i n u x の管理

者 ( r o o t ) の 持 つ権 限 を 、 幾 つかの ロールに分 散 させ る 。 Tr u s t e d

S o l a r i s のセキュリティ・ポリシー・モデルを図 5 - 1 3 に示す。

ユーザは、U N I X におけるユーザ・アカウントにマッピングされる。ロール

は、特 殊 なユーザ・アカウントであり、ユーザはシステムにログイン後 、所 定

の手 続 きを経 ることでロールを有 効 にすることの認 証 を受 けられる。サブ

ジェクトは U N I X におけるプロセスを指 し、オブジェクトはアクセス対 象 の

ファイルを指 している。特 権は M A C に制限 されない例外的 なアクセス許

可 を示 し、セキュリティ・ポリシーを編 集 可 能 な特 別 なプログラムファイル

などに付与 される。

Tr u s t e d S o l a r i s の機 密 ラベル(S E N S I T I V I T Y- L A B E L )は、階

層 的 な 格 付 け ( C L A S S F I C AT I O N ) と 平 行 的 な コ ン パ ー ト メ ン ト

( C O M PA R T M E N T ) の 2 つ で 表 さ れ る 。 コ ン パ ー ト メ ン ト

(C O M PA R T M E N T )とは区 画 を示 しており、リソースを幾 つかの分 類 に

分 けるために使 用 される。対 して、格 付 け(C L A S S F I C AT I O N )は階 層

を示 しており、リソースの保護のレベルを設定するために使用 される。

コンパートメントとして「コンパートメント A」、「コンパートメント B」を設 定

し 、 格 付 け と し て 「 T O P S E C R E T 」 、 「 S E C R E T 」 、

「C O N F I D E N T I A L 」、「U N C L A S S F I E D 」と設 定 した場 合 、機 密 ラベ

ルは、以 下 のように「格 付 け+コンパートメント」で表 記 される。

Page 112: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐103‐

コンパートメント A コンパートメント B

TO P S E C R E T TO P S E C R E T A TO P S E C R E T B

S E C R E T S E C R E T A S E C R E T B

C O N F I D E N T I A L C O N F I D E N T I A L A C O N F I D E N T I A L B

U N C L A S S F I E D U N C L A S S F I E D A U N C L A S S F I E D B

表 5 - 3 機 密 ラベルの例

機 密 ラベルには複 数 のコンパートメントの記 述 することができ、「T O P

S E C R E T A B」という表 記 が許 される。この例 では、「T O P S E C R E T」

は格 付 けを示 し、「A」と「B」は 2 つのコンパートメントが付 与 されているこ

とを示 す。

アクセス制 御 が行 われる際 、サブジェクトとオブジェクトの機 密 ラベルが

比 較 さ れ る 。 例 と し て 、 「 S E C R E T A 」 の サ ブ ジ ェ ク ト が 、

「C O N F I D E N T I A L A 」のオブジェクトにアクセスする場 合 考 える。この

際 、サブジェクトの格 付 けはオブジェクトのそれより優 位 にあるため、アク

セスが許可 される。

図 5 - 1 2 格 付 けとアクセス可 能 範囲

TOP SECRETTOP SECRET

SECRETSECRET

CONFIDENTIALCONFIDENTIAL

UNCLASSIFIEDUNCLASSIFIED

High

Low

SECRETの格付けのサブジェクト

SECRETの格付けの

サブジェクト

×TOP SECRETTOP SECRET

SECRETSECRET

CONFIDENTIALCONFIDENTIAL

UNCLASSIFIEDUNCLASSIFIED

High

Low

SECRETの格付けのサブジェクト

SECRETの格付けの

サブジェクト

×

Page 113: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐104‐

次 に「C O N F I D E N T I A L B 」のオブジェクトにアクセスする場 合 を考

える。この場 合 も、サブジェクトの格 付 けは優 位 であるが、コンパートメント

が異 なるためアクセスは許 可 されない。しかし、「S E C R E T A B 」のラベ

ルを持 つサブジェクトは「C O N F I D E N T I A L B 」のラベルを持 つオブジ

ェクトを参 照 することが許 可 される。コンパートメントに関 しては、オブジェ

クトのコンパートメントがサブジェクトのコンパートメントに含 まれている場 合

に上位の機密 ラベルであると考 えられる。

以 上 のような規 則 によって、サブジェクトとオブジェクトに付 与 される機

密 ラベルは比較 され、以 下 のような操 作 が許可 される。

• 参照

あるサブジェクトが参 照 できるオブジェクトは、そのサブジェクトと同 等

か下位 のラベルを持 ったオブジェクトである。

• 書 き込み

あるサブジェクトが書 き込 みできるオブジェクトは、そのサブジェクトと同

等 のラベルを持 ったオブジェクトである。下 位 のラベルを持 つオブジェ

クトに対 して書 き込みは許可 されない。

• 追記

あるサブジェクトが追 記 できるオブジェクトは、そのサブジェクトと同 等

か上位 のラベルを持 ったオブジェクトである。

ユーザは、システムにログインした際 に、そのセッションで使 用する認 可

上 限 が設 定 される。認 可 上 限 とは、ユーザの使 用 するラベルのうち最 優

位 のもので、指 定 した認 可 上 限 内 の操作 がユーザに許 可 される。セキュ

リティ・ポリシー・ファイルを編 集 する場 合 、特 殊 なアカウントであるロール

が使 用 される。この際 、特 権 を割 り当 てられたプログラムファイルを起 動

Page 114: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐105‐

するために、ロールは承 認 をされていなければならない。特 権 を付 与 され

たすべてのプログラムファイルは、承 認 されたユーザ、または、ロールから

のみ実 行 される。このような承 認 は管 理 者 によって、あらかじめ付 与 され

る。

Tr u s t e d S o l a r i s のセキュリティ・ポリシー・モデルの特徴は、特 権付

きプログラムを実 行 する必 要 のない一 般 ユーザのアクセス可 能 なファイル

が、一 見 して分 かるということが挙 げられる。S E L i n u x のドメイン遷 移 と

異 なり、ユーザは特 権 付 きプログラムを実 行 する以 外 は、認 可 上 限 を超

えて操 作 を行 なうことは許 されない。同 時 に、特 権 と認 証 さえ与 えられて

いれば、あらゆる機 密 ラベルに横 断 的 にアクセスすることが許 可 される。

また、どのようなアクセスが許 可 されているかを把 握 するためには、ポリシ

ー・ファイルを参 照する必要 がある。

Page 115: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐106‐

図 5 - 1 3 Tr u s t e d S o l a r i s のセキュリティ・ポリシー・モデルの構 造

5 .5 .3 We b サーバーへの適応性分析

Tr u s t e d S o l a r i s のセキュリティ・ポリシー・モデルの特徴は、ユーザと

ロールの関係 、機 密 ラベル、特 権 と承 認にある。Tr u s t e d S o l a r i s にお

けるロールとは、特 殊 な作業 をする際 に利 用するユーザ・アカウントである。

機 密 ラベルは、T E のラベルと異 なり、優 劣 の概念 を持つ。T E はドメイン

とタイプにより許 可 される操 作 が決定 されるが、機 密 ラベルは、「 5 . 5 . 2 ポ

リシー・モデルの特 徴 」で説 明 したように、その優 劣 により可 能 な操 作 が

決 定 される。つまり、T E と異 なり、ドメインとタイプによって許 可 される操

SUBJECT

ACCESSMODE

N:1

N:1

M:N

M:N

OBJECT

USER

N:1N:1

1:1

ACCESS MATRIX

ROLE

1:N1:N

1:N 1:N

SENSITIVITYLABEL

SENSITIVITYLABEL

M:N

M:N特権

PRIVILEGE

COMPARTMENT

CLASSIFICATION

SUBJECT

ACCESSMODE

N:1

N:1

M:N

M:N

OBJECT

USER

N:1N:1

1:1

ACCESS MATRIX

ROLE

1:N1:N

1:N 1:N

SENSITIVITYLABEL

SENSITIVITYLABEL

M:N

M:N特権

PRIVILEGE

COMPARTMENT

CLASSIFICATION

Page 116: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐107‐

作 を設 定 する必 要 はない。特 権 は、プログラムに様 々な例 外 処 理 を付

与 する。We b サーバーに関 連 する特 権 には、予 め設 定 された機 密 ラベ

ルでサブジェクトを起 動 する特 権 や、動 作 中 の機 密 ラベルより劣 位 の機

密 ラベルに遷 移 することを許 可 する特 権 が存 在 する。また、特 権 はプロ

グラムに付 与 され、その特 権 付 きプログラムの実 行 を承 認 されたユーザ

やロールからのみ実 行 できる。このような特 権 と承 認 により、We b サーバ

ーは、静 的 コンテンツと動 的 コンテンツを異 なる機 密 ラベルで動 作 させる

事 が可能 となる。

また、新 たな機密 ラベルで We b サーバーを動作 させる為 には、ユーザ、

ロール、機 密 ラベル、特 権 と承 認の 5 つの設定 を修正する必要 がある。

Tr u s t e d S o l a r i s では、静 的 コンテンツと動 的 コンテンツに応 じて、異

なる機 密 ラベルで We b サーバーを動 作 させることができる。そのため、

C G I、S S I といった一 般ユーザによって作 成 された信頼 できないプログラ

ムが実 行 される場 合 に、そのプログラムに最 少 権 限 を付 与 することが可

能 である。しかし、この利 点 はプログラムが設 定 された機 密 ラベルで動 作

する場合 に限 られる。Tr u s t e d S o l a r i s では特権 と承 認 の仕組みがあ

るため、動 的 コンテンツを攻 撃 者 に改 竄 された場 合 には、その動 的 コン

テンツのアクセス可 能 なオブジェクト、及 び、その動 的 コンテンツから特 権

と承 認によりアクセス可 能 なオブジェクトに被 害 が及ぶ。同 様 に、We b サ

ーバーを改 竄 された場合 には、We b サーバーのアクセス可 能 なオブジェ

クト、及 び、We b サーバーから特 権 と承 認 によりアクセス可 能 なオブジェ

クトに被 害 が及ぶ。

特 権 や承 認 の欠 点 は、特 権 や承 認 の設 定 された対 象 の数 が増 える

につれ、どのようなアクセスが許 可 されているのかを管 理 することが難 しく

なることである。

Page 117: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐108‐

5 .6 各モデルの比較

本章で説明 した各 モデルの比較 を行 う。

5 .6 .1 サブジェクトに付与 されるラベルの決定因子

各 モデルにおいてサブジェクトに対 して付 与 されるラベル(ドメイン、機

密 ラベル)の決 定 因 子 を比 較 する。以 下 に示 されるように、サブジェクト

に対 して付 与 されるラベルの決定方法は、次 の 2 つのタイプに分 ける事

ができる。1つは、H o f f m a n のモデルと PA R B A C に見 られるような、各 因

子 によってサブジェクトに付 与 されるラベルが静 的 に決 定 されるタイプで

あり、もう 1 つは D A F M AT、S E L i n u x、Tr u s t e d S o l a r i s のように動的

に付与 されるラベルが決定するタイプである。

モデル 決定因子

H o f f m a n ’s

R B A C

サブジェクト、ロール、ユーザ

D A F M AT ユーザ、コンテキスト

PA R B A C ユーザ、ロール、タスク

S E L i n u x ロール、もしくは、ドメインと実 行 中 オブジェクトのタイプ

Tr u s t e d

S o l a r i s

ユーザ、セッション

表 5 - 4 サブジェクトに付 与 されるラベルの決定因子

5 .6 .2 アクセス制御の特徴

各 モデルで行 われるアクセス特 徴 の特 徴 を比 較 する。これらの特 徴 は、

We b サーバーで静的 コンテンツと動 的 コンテンツを処 理する際 に、アクセ

ス制 御 を変更する仕組みを示 している。

Page 118: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐109‐

モデル アクセス制 御 の特徴

H o f f m a n ’s

R B A C

ロールに複数 のドメインを割 り当 てる事 ができる。

D A F M AT 論 理 駆 動 承 認 エンジンによって、サブジェクトに対 する

ドメインの割 り当 てを変 更できる。

PA R B A C プライバシ・エンフォースメントによってオブジェクトの利

用目的 を限定 させることができる。

S E L i n u x ドメイン遷 移 の機能 を持つ。

Tr u s t e d

S o l a r i s

セキュリティ管 理 者 によって与 えられた特 権 と承 認 によ

り、アクセス制 御 の例外 を作 ることができる。

表 5 - 5 アクセス制 御 の特 徴

5 .6 .3 異なるアクセス制御 を行 う仕 組み

各 モデルにおいて、静 的 コンテンツと動 的 コンテンツに対 して異 なるア

クセス制 御 を行 う仕 組 みを比 較 する。以 下 に示 すように、D A F M AT 、

S E L i n u x、Tr s u t e d S o l a r i s は、特 別 な仕組みを使い、サブジェクトと

ラベルの対 応 関 係 を変 更 する。これにより静 的 コンテンツと動 的 コンテン

ツに対 して異 なるアクセス制 御 を行 う。H o f f m a n と PA R B A C は、特 別 な

仕 組 みは使 わず、各 モデルから導 かれる機 能 として、静 的 コンテンツと

動 的 コンテンツに対 して異 なるアクセス制 御 を実現 している。

Page 119: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐110‐

モデル 異 なるアクセス制 御 を行 う仕 組み

H o f f m a n ’s

R B A C

ロールとドメインは N : M で割 り当 てられる。

D A F M AT ロールとドメインは N : 1 で割 り当 てられるが、論 理駆動

承 認 エンジンによって、サブジェクト -ドメインのマッピン

グがコンテキストによって変 更 できる。

どのようなコンテキストを使 用するかは強制できない。

PA R B A C ロールとドメインは N : 1 で割 り当 てられるが、タスク、パー

パス、オブジェクト・ポリシーによって、同 一 ドメイン内 で

異 なるアクセス制 御 を実現できる。

サブジェクトの使 用 するタスクとパーパス、及 び、オブジ

ェクトに付 与 されるオブジェクト・ポリシーは強制できる。

S E L i n u x ロールとドメインは N : 1 で割 り当 てられるが、特 定 のポリ

シーを満 たせば、ドメイン遷 移 することができる。ドメイン

の遷 移は強制できる。

Tr u s t e d

S o l a r i s

ユーザとドメインは N : 1 で割 り当 てられるが、プログラム

ファイルと実 行 ユーザに特 権 と承 認 を与 えることで、機

密 ラベルを遷移 させることができる。

機 密 ラベルの遷 移 は特 権 と承 認 の内 容 で制 限 される

(劣 位 の機 密 ラベルへの遷 移 しか認 めないなど)。ただ

し、ラベルの遷 移 はサブジェクトによって実 行 されるた

め、強 制的 に遷移 させられるわけではない。

表 5 - 6 異 なるアクセス制 御 を行 う仕 組 み

Page 120: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐111‐

5 .6 .4 ドメイン(機 密 ラベル)の追加に影響 される要素

各 モデルにおいて、異 なるアクセス制 御 を行 う範 囲 (C G I を実 行 する

際 に追加する C G I 用のドメインなど)を、新 たに追加 した場合 に、影 響

を受 ける要 素 を比較 する。PA R B A C では、ドメインを追 加する必要 はな

く、タスク、パーパス、オブジェクト・ポリシーの追 加 により、異 なるアクセス

制 御 をかける範 囲 を作 成 することができる。以 下 に示 すように、サブジェ

クトやオブジェクトに関 係 する要 素 が多 いモデルほど、影 響 される要 素 が

多 くなる。

モデル ドメイン(機 密 ラベル)の追 加 に影 響

される要 素

要素数

H o f f m a n ’s

R B A C

ドメイン

タイプ

ドメイン -タイプ・アクセス・マトリックス

3

D A F M AT ユーザ

ロール

ドメイン

タイプ

ドメイン -タイプ・アクセス・マトリックス

5

PA R B A C タスク

パーパス

オブジェクト・ポリシー

ドメイン -タイプ・アクセス・マトリックス

4

S E L i n u x ドメイン

ドメイン遷 移

オブジェクト・タイプ

ドメイン -タイプ・アクセス・マトリックス

4

Page 121: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐112‐

Tr u s t e d

S o l a r i s

ユーザ

ロール

機密 ラベル

特権

承認

5

表 5 - 7 ドメイン(機 密 ラベル)の追 加 に影響 される要 素

5 .6 .5 被害範囲

各モデルでおいて、攻 撃者 によって We b サーバーを改竄 された場合

と、動 的 コンテンツを改 竄 された場 合 の被 害範 囲 を比 較する。各 モデル

の被害範囲は、2 つのタイプに分 ける事 ができる。1 つは D A F M AT と

Tr u s t e d S o l a r r i s のように、改 竄 者 によって不 特 定 のラベルに遷移 さ

れ る 可 能 の あ る タ イ プ で あ る 。 D A F M AT の 論 理 承 認 エ ン ジ ン や

Tr u s t e d S o l a r i s の特権は、改 竄者 により能 動 的 に実行 されてしまう。

つまり、改 竄 者 によって任 意 のラベルへ遷 移 される可 能 性 が存 在 する。

対 して、H o f f m a n では、改 竄 されたプログラムに対 しても、ドメインアクセ

ス・マトリックスによるアクセス制 御 が強制 される。また、PA R B A C ではタス

ク、パーパス、オブジェクト ・ポリシーによって改 竄 されたプログラムに対 し

てアクセス制 御 が強 制 される。S E L i n u x では、改 竄 されたプログラムに

対 して、ドメイン遷 移 のポリシーによって認 められた遷 移 しか起 こらないた

め、改 竄者 は任意 のドメインに遷 移できるわけではない。

Page 122: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐113‐

モデル We b サーバーの改竄 による被 害範囲

H o f f m a n ’s

R B A C

ド メ イ ン -タ イ プ ・ア ク セ ス ・マ ト リ ッ ク ス に よ

り、W e b サーバーに対して実行の許可されたサ

ブ ジ ェ ク ト の ド メ イ ン で ア ク セ ス 可 能 な オ ブ ジ

ェクト

D A F M AT 論理駆動承認 エンジンで、We b サーバーにマッピング

される可 能 性 のある全 てのドメインでアクセス可 能 なオ

ブジェクト

PA R B A C We b サーバーのタスクとパーパスでアクセス可 能 なオブ

ジェクト、及 び、We b サーバーから外 部実行 の許 されて

いるプログラムファイルのタスクとパーパスでアクセス可

能 なオブジェクト

S E L i n u x We b サーバーのドメインから遷 移可能 な全 てのドメイン

でアクセスできるオブジェクト

Tr u s t e d

S o l a r i s

We b サーバーの機 密 ラベルでアクセス可 能 なオブジェ

クト、及 び、We b サーバーに設定 された特権でアクセス

可 能 なオブジェクト

表 5 - 8 We b サーバーの改竄 による被 害範 囲

Page 123: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐114‐

動的 コンテンツの改竄 による被 害範囲

H o f f m a n ’s

R B A C

ド メ イ ン -タ イ プ ・ア ク セ ス ・マ ト リ ッ ク ス に よ

り 、 動 的 コ ン テ ン ツ に 対 し て 実 行 の 許 可 さ れ た

サ ブ ジ ェ ク ト の ド メ イ ン で ア ク セ ス 可 能 な オ ブ

ジェクト

D A F M AT 論 理 駆 動 承 認 エ ン ジ ン で 、 動 的 コ ン テ ン ツ に マ

ッ ピ ン グ さ れ る 可 能 性 の あ る 全 て の ド メ イ ン で

アクセス可能なオブジェクト

PA R B A C 動 的 コ ン テ ン ツ の タ ス ク と パ ー パ ス で ア ク セ ス

可 能 な オ ブ ジ ェ ク ト 、 及 び 、 動 的 コ ン テ ン ツ か

ら 外 部 実 行 の 許 さ れ て い る プ ロ グ ラ ム フ ァ イ ル

の タ ス ク と パ ー パ ス で ア ク セ ス 可 能 な オ ブ ジ ェ

クト

S E L i n u x 動 的 コ ン テ ン ツ の ド メ イ ン か ら 遷 移 可 能 な 全 て

のドメインでアクセスできるオブジェクト

Tr u s t e d

S o l a r i s

動 的 コ ン テ ン ツ の 機 密 ラ ベ ル で ア ク セ ス 可 能 な

オ ブ ジ ェ ク ト 、 及 び 、 動 的 コ ン テ ン ツ に 設 定 さ

れた特権でアクセス可能なオブジェクト

表 5 - 9 動 的 コンテンツの改 竄 による被 害 範囲

Page 124: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐115‐

既存 Web サーバー・システムにおける

アクセス制御の調査編

Page 125: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐116‐

6 実装システムの調査

6 .1 RBAC/Web

R B A C / We b は、N I S T ( t h e N a t i o n a l I n s t i t u t e o f S t a n d a r d s

a n d Te c h n o l o g y)の R B A C モデルの W W W イントラネット・アプリケーシ

ョンへの参考実装例 である。

管 理 者 の作 業 負 担 が大 きい、サブジェクト・ベースのセキュリティ・ポリ

シーが強制できないなどの理由 から、A C L によるアクセス管 理 は We b サ

ーバーには不向 きである。そこで、A C L に代 わって R B A C を採 用するこ

とにより、より安 全 に We b サーバー上 に情報 を公 開 し、企 業 の生 産性

向上 を図 ることができる。R B A C を We b サーバー・アプリケーションに実

装 した場合 、低 レベルのアクセス制 御 メカニズムの承認データとその他 の

R B A C 関連データを 1 つの R B A C 承認データベースの中 で管理するた

め、管 理上 の利便性が良いという利 点 がある。

管理者 の視点 から見 ると、R B A C / We b は、企 業 のイントラネット・アク

セス制 御 ポリシーの視覚化および管理 ツールとして機 能 している。

R B A C の実 装 に当 たっては、管 理 ツールの設 計 とロールを有 効 にす

るために使 うプロセスを考 慮 しなければならない。R B A C / We b では非 任

意のアクセス制 御 メソッドとして R B A C をとらえており、管 理 者 ロールとユ

ーザロールとは明 確 に区 別 されている。R B A C / We では、管 理 ツールや

R B A C データベースにアクセスするための管理者 ロールを 1 つのみ設定

しており、管 理 者 ロールを割 り当 てられていないユーザは、管 理 者 によっ

て割 り当 てられたロールの領域内でのみ動作することができる。

Page 126: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐117‐

表 6 - 1 R B A C / We b のコンポーネント

コンポーネント 解説

データベース ユーザロール間 の関 係 、ロール・ヒエラルキー、ユ

ーザロール間 の関 係 にかかる制 約 、現 在 のアクテ

ィブ・ロール、ロール -オペレーションの関 係 を特 定

するファイル

A P I ライブラリ We b サーバーや C G I が R B A C / We b にアクセス

す るために利 用 す る仕 様 。 A P I ( A p p l i c a t i o n

P r o g r a m I n t e r f a c e )によって R B A C を We b サ

ーバーに実装することが可 能になる。A P I ライブラ

リは R B A C / We b を実 装する C および P e r l のライ

ブラリである。

C G I サーバーに変更 を加 えずに既存の We b サーバー

を利用するために、C G I として R B A C を実 装 し

た。R B A C / We b の C G I は R B A C / We b の A P I

を使 用 している。

セッシ ョン ・マネジャ

R B A C / We b のセッション・マネジャーは、ユーザの

現 在 のアクティブ・ロール・セットを作 成 し、ロール

を有効 にする。

A d m i n To o l A d m i n To o l を利 用 することによって、サーバー

管 理者 はユーザおよびロールの作 成 、ユーザロー

ルおよびロール -オペレーションの関 連 付 け、ユー

ザロール関 係 にかかる制 約 の指 定 、R B A C デー

タベースの管 理 を行 なうことができる。管 理 者 は

We b ブラウザから A d m i n To o l にアクセスする。

Page 127: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐118‐

R B A C / We b のコンポーネントの 1 つである A d m i n To o l では、ロール

の割 り当 てとロールの承認 の概念 を区別 している。ユーザがロール r 0 に

対 して承認 されており、 r 0 がロール r 1 を継 承する場合 、自 動的 にユー

ザは r 0 に加 えて r 1 に対 しても承 認 されたことになる。ここで、ユーザへの

r 0 に対する承認 が削除 されると、 r 1 に対する承認 も削 除 される。

R B A C の実 装時 には、実 装 環 境 の中 でのサブジェクトの概 念 を規 定

しておく必 要 がある。U n i x システムなどのシングル・コンピュータ・システム

環 境 において、サブジェクトはユーザ・プロセスのプロセス I D として規 定

することができる。W W W 環境 において、例 えばハイパーリンクをクリックす

るなどの各 アクセスは、そのアクセスを実 行 するためのユーザ・プロセスを

We b サーバー上 に作成することと類 似 しており、アクセスが完 了 すると、

ユーザ・プロセスは削 除 される。このように We b サーバー環 境 ではユー

ザ・プロセスの寿命が短 く、サブジェクトをプロセス I D として規 定すること

は非 効率 であるため、R B A C / We b ではサブジェクトを We b サーバー上の

ユーザのログイン名 として規 定 している。We b サーバー上のログイン名 は

1 ユーザにつき 1 つなので、ユーザが複数 のブラウザを開 いていようとも、

1 つの We b サーバーにつき 1 人のユーザ、1 人のユーザにつき 1 つのア

クティブ・ロール・セットという関 係 が成 り立 つ。

R B A C / We b は、ユーザのアクティブ・ロール・セットを We b サーバー上

の 1 つのファイルに保持 しており、このファイルに基づいてユーザのアクセ

スを決 定 している。このユーザのアクティブ・ロール・セットの内 容 を管 理

するのが、R B A C / We b セッション・マネジャーである。ダイナミックな責 務

の分離 (D y n a m i c S e p a r a t i o n o f D u t y)の関 係 にあるロールのペアは、

アクティブ・ロール・セットになることはできない。さらに、R B A C / We b では、

R B A C データベース内 で 2 つのロールが階層的 な関係 と同 時にダイナミ

ックな責 務 の分離の関係 にあることはできない。

R B A C / We b では、既 存 の W W W 認証 であるユーザ名 /パスワードと

S S L を併 用することができる。ユーザの識別情報は We b サーバーによっ

Page 128: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐119‐

て R B A C / We b に渡 される。We b サーバーは、We b サーバー管理者の

設 定 に基 づいて、ユーザの識 別 情 報 を認 証 し、機 密 データを伝 送 する。

ブラウザに関 しては特 に要件 を規定 していない。

R B A C / We b は以下 の 2 つの環境で実装 されている。 ( 1 ) U N I X(例 :

N e t s c a p e 、 A p a c h e サーバー ) 、 ( 2 ) Wi n d o w s N T ( 例 : I n t e r n e t

I n f o r m a t i o n S e r v e r、We b s i t e、P u r v e y o r)

1 . R B A C / We b f o r U N I X

R B A C 承認データベース・モデルと R B A C 起動モデル、すなわちヒエ

ラルキー、カルディナリティ 5、スタティックな責 務 の分 離 、ダイナミックな責

務 の分 離 といったロールのプロパティを実 装 した。U N I X の実 装 では表

6 - 1 R B A C / We b のコンポーネントで示 した全 てのコンポーネントを利 用

している。

U N I X の We b サーバーで R B A C / We b を実 装するには 2 つの方法 が

ある。

1 つは R B A C / We b の C G I を用 いる方 法で、C G I はサーバーのソー

ス・コードを変 更 せずに既 存 の U N I X で利 用 することが可 能 である。

R B A C の U R L は We b サーバーを経 て C G I によって処 理 される。

R B A C / We b のコンフィギュレーション・ファイルは、ユーザのロールに基づ

くアクセス制 御 を実 行 しながら、U R L をファイル名 にマッピングする。

R B A C / We b の C G I は比較的簡単にインストールおよび利用することが

できるが、We b サーバー上 で直 接 アクセス制 御 を実 行 するには不 十 分

である。

2 つ目は、U N I X の We b サーバーを R B A C / We b の A P I を呼 び出す

ように修 正する方法である。U R L は、We b サーバーのコンフィギュレーシ

5 ロールに対 して許可 されているユーザの数 を指す。例 えば、部 長 の

ロールは1ユーザにのみ割 り当 てることが可 能 で、そのユーザ数 を超 えて

部長 のロールを割 り当 てることはできない。

Page 129: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐120‐

ョン・ファイルにより、R B A C によって制 御 される。N e t s c a p e や A p a c h e

などのような U N I X 環境向 けの We b サーバーは、オペレーションをいく

つかのステップに分 割 し、コンフィギュレーション・パラメータを使 って強 化

もしくは置 換 できる機 能 を各 ステップに提供 している。これを利 用 して、サ

ーバーのソース・コードを変 更することなく We b サーバーのオペレーション

を修 正することができる。つまり、R B A C / We b の A P I は、適 切 な呼び出

しシーケンスを提 供 し、コンフィギュレーション・パラメータを変 更 すること

によって、We b サーバーと統 合することが可 能である。

2 . R B A C / We b f o r Wi n d o w s N T

R B A C 承認データベース・モデル、すなわちヒエラルキー、カルディナリ

ティ、スタシックな責 務 の分 離 といったロールのスタティックなプロパティの

みを実 装 した。Wi n d o w s N T 環境 でダイナミックな責 務 の分 離 を実 装

するためには、Wi n d o w s N T のセッション確 立 メカニズムを変 更 しなけれ

ばならず非効率である。Wi n d o w s N T のビルトインのセキュリティ・メカニ

ズムは R B A C と互 換 性 があることから、R B A C / We b のデータベースと

A d m i n To o l のみを実装 した。R B A C / We b の A d m i n To o l はユーザロ

ールおよびロール -ロールの関 係 のみを管 理 するものである。そこで、ロー

ル -パーミッションの関 係 を管 理 するために R G P - A d m i n 6というツールも

実 装 した。

実装においては We b サーバーの内部修正やソース・コードへのアクセ

スは必 要 ない。Wi n d o w s N T のセキュリティ・メカニズムは、Wi n d o w s

N T 自体 と Wi n d o w s N T 上で動作する We b サーバーとの間 で同一 で

あるため、We b リソースだけでなく Wi n d o w s N T のファイル・システムへの

アクセスも管 理することが可 能 である。

6 J . B a r k l e y らが開 発 した、Wi n d o w s N T 環境 で利用することができる O b j e c t A c c e s s Ty p e を利 用 した R B A C 管理用 ツール。O b j e c t A c c e s s Ty p e Vi e w、O b j e c t A c c e s s Ty p e E d i t o r、R o l e P e r m i s s i o n Vi e w という 3 つのコンポーネントで構 成 されている。

Page 130: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐121‐

R B A C / We b におけるパーミッションは、エンド・ユーザが R B A C / We b

よ っ て 制 御 さ れ た U R L 上 で 実 行 で き る H T T P メ ソ ッ ド で あ る 。

R B A C / We b によって課 される制 約 によって、機 密 を管 理 することができ、

ネットワーク内 で重 大 なセキュリティ・ポリシーが常 に一 律 に強 制 される。

R B A C / We b によって管 理 されているオブジェクトは、各 We b サーバーの

A C L と関 連 している。U n i x 向 けの実装 では、A C L はロールのリストとし

て体 系付 けられている。A C L には各 ロールについて H T T P メソッドのリス

トがあり、そのリストに基 づきユーザは関連 U R L へのアクセスを許 可 され

る。Wi n d o w s N T 向 けの実装 では、Wi n d o w s N T のビルトイン A C L を

利 用 しており、ロールは Wi n d o w s N T のドメインもしくはローカル・グルー

プにマッピングされる。また、A C L はロール -特 権 の関 係 の集 合 として編

成 、管 理 されている。R B A C / We b においては、各 サブジェクトは1つ以 上

のロールを有 効 にしているユーザを表 す。ユーザの承 認 は、ユーザが特

権 を実行 する許可 を得 るための必要条件 ではあるが、必 要十 分条件 で

はない。R B A C / We b では、ユーザはオペレーションの実 行 または U R L へ

のアクセス許 可 を得 る前 に、まず1つのロールを有効 にする承認 を得 なけ

ればならない。

以下では、管 理者およびエンド・ユーザの視点 から R B A C / We b の動

作 について解説する。

1 . 管理者の視点

R B A C / We b の A d m i n To o l は、ユーザロールおよびロール -ロールの

関 係 、ユーザロールの割 り当 て、ロール・ヒエラルキー、スタティックな責

務 の分 離 、ダイナミックな責 務 の分 離 およびロールのカルディナリティを

管 理する。

エラーを削減するために、A d m i n To o l はロールの割 り当 てとロールの

承認 の概念 を区別 している。管 理 者は、A d m i n To o l によってロールを

ユーザに割 り当 てる。ロールが承 認 されるのは、ユーザにそのロールが割

り当 てられている、もしくはユーザに割 り当 てられている別 のロールがその

Page 131: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐122‐

ロールを継 承 している場 合 である。管 理 者 はデータベース上 で実 行 でき

るオペレーションを予 め決定 しておき、A d m i n To o l を使 ってそのオペレ

ー シ ョ ン を 実 行 す る こ と に よ り R B A C デ ー タ ベ ー ス を 管 理 す る 。

R B A C / We b では、A d m i n To o l および R B A C データベースにアクセス

することができる唯 一 の管理者 ロールを設定 している。

A d m i n To o l では、ポリシーはグラフィカルに表示 される。図 6 - 1 に、

ロール・ヒエラルキーの表示例 を示す。現 在 選択 しているロールは、図 形

表 示 されない。現 在 選 択 しているロールとスタティックな責 務 の分 離 関

係 にあるロールは五 角 形 の図 形 で表 示 され、それ以 外 のロールは楕 円

の図形 で表示 される。図 形 内 に(n / m)で表 示 されている数 字 は、(現 在

ロールを割 り当 てられているユーザ数 / ロールに割 り当 てられる最 大 ユ

ーザ数 、つまりロールのカルディナリティ)を示 している。( )内 の“U ”はロ

ールに割 り当 てられる最 大 ユーザ数に制限 がないことを表す。

図 6 - 1 R B A C / We b A d m i n To o l でのロール・ヒエラルキーの表 示例

売掛管理者(1/1)

売掛管理係(2/5)

請求管理者(1/1)

現金出納管理者(1/1)

現金出納係(1/12)

請求係(1/21)

売掛管理(4/U)

経理(4/U)

スタッフ(4/U)

売掛管理者(1/1)

売掛管理係(2/5)

請求管理者(1/1)

現金出納管理者(1/1)

現金出納係(1/12)

請求係(1/21)

売掛管理(4/U)

経理(4/U)

スタッフ(4/U)

Page 132: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐123‐

2 . エンド・ユーザの視点

エンド・ユーザの視点 から見 ると、Wi n d o w s N T 向 けの R B A C / We b

が実装 された We b サーバーとの対話は、R B A C / We b が実装 されていな

い We b サーバーとの対話 と全 く同 じである。その理由 は、Wi n d o w s N T

向 けの R B A C / We b がダイナミックな責 務の分離 をサポートしていないこと

である。しかし、U N I X 向 けの R B A C / We b では、R B A C によって制 御 さ

れた U R L へのアクセスが許可 される前 に、エンド・ユーザはアクティブ・ロ

ール・セットを確 立 しなければならない。まずエンド・ユーザは、現 在 のアク

ティブ・ロール・セットを選 択 する、または割 り当 てられる。アクティブ・ロー

ル・セットは、R B A C によって制 御 された U R L 上でエンド・ユーザが実行

することができる H T T P メソッドを決 定する。アクティブ・ロール・セットは、

エンド・ユーザが新 しいアクティブ・ロール・セットを確 立 するまで有 効 であ

り、アクティブ・ロール・セットの変 更 には R B A C / We b のセッション・マネジ

ャーを利 用 する。セッション・マネジャーの利 用 により、ダイナミックな責 務

の分 離関係 に違反 しないサブセットのリストがユーザに提 示 され、選 択 を

促 される。選 択 肢 を最 小 限 にするために、ユーザが割 り当 てられている

全 ロールのサブセットの中 から、ダイナミックな責 務 の分 離 関 係 に違 反 し

ない最 大 のサブセットがリストに表 示 される。ユーザがサブセットを選 択 す

ると、そのサブセットに含 まれるロールおよびそれらのロールが継 承 したロ

ールがアクティブ・ロール・セットとなる。ユーザに割 り当 てられているロー

ル間 にダイナミックな責 務 の分 離関係がない場合 、アクティブ・ロール・セ

ットは自 動 的 に確立 される。この場 合 のアクティブ・ロール・セットは、ユー

ザに対 して承認 された全 てのロールとなる。R B A C / We b は 1 台のサーバ

ーのみに適 用 しているため、ダイナミックな責 務 の分 離 に関 して、1 台 の

We b サーバー上のユーザを想定 した実装がなされており、複 数 のサーバ

ーにまたがるユーザを考慮 していない。

Page 133: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐124‐

図 6 - 2 R B A C / We b エンド・ユーザの視 点

6 .2 PDRBAC

A . L i n は 、 P D R B A C ( P o l i c y - D r i v e n R o l e - a s e d A c c e s s

C o n t r o l ) の 技 術 を C D S A ( C o m m o n D a t a S e c u r i t y

A r c h i t e c t u r e)の拡 張 に応用する研究 を実施 した。

C D S A は、下 図 のように 4 つのレイヤで構成 されており、そのうちの T P

モジュールにセキュリティ・ポリシーが実 装 されている。そのため、T P モジ

ュールをつけなければ、トラスト・ポリシー・サービスを利 用することができな

い。さらに、そのポリシーはモジュールの開 発 者 によってスタティックに規

定 されており、ユーザがポリシーの追加 ・変 更 を行 なうことはできない。

ブラウザ

ユーザ

Webサーバ

RBACデータベース

アクティブ・ロール・セット確立要求

アクティブ・ロール・セットの選択肢提示

アクティブ・ロール・セットの選択

アクティブ・ロール・セットの確立

URL

リスポンス

ブラウザ

ユーザ

Webサーバ

RBACデータベース

アクティブ・ロール・セット確立要求

アクティブ・ロール・セットの選択肢提示

アクティブ・ロール・セットの選択

アクティブ・ロール・セットの確立

URL

リスポンス

Page 134: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐125‐

図 6 - 3 C D S A(C o m m o n D a t a S e c u r i t y A r c h i t e c t u r e)

L i n は、C D S A でユーザがダイナミックにポリシーを追 加 ・変 更 すること

ができるアーキテクチャを実 装 した。さらに、P R O L O G ベースのポリシー

記述言語 を設計 した。

P D R B A C は、以 下 の 4 つの点 で C D S A の拡張 に適 していると主 張 し

ている。(1 )膨 大 な数 にのぼるユーザとリソースのマッピングをダイナミック

に行 なうことができる、(2 )組 織 内 のユーザは組 織 のビジネス・プロセスに

合 わせた、比 較 的 不 変 のロールに分 類 されることが多 く、R B A C のロー

ルの考 え方 と一 致 する、(3)柔 軟 かつダイナミックにセキュリティ・ポリシー

を配 置 することができる、( 4 )ロールのヒエラルキー構 造 において、ロール

の特権 を他 のロールに継承することができるという R B A C の特徴 が、実

際 のビジネス要 件 をセキュリティ・メカニズムにマッピングする際 に有 効 で

ある。

具体的 な L i n の実 装 については、以 下 に記述する。

C D S A でユーザがダイナミックにポリシーを追 加 ・変 更 することができる

アプリケーション

階層化されたサービス、ミドルウェア、言語インタフェース・アダプタ、ツール

CSSMセキュリティAPI

IntegrityServices

CSPManager

TPManager

CLManager

DLManager

ManagementContextSecurity

SPI TPI CLI DLI

CSP TP CL DLデータ保存

SystemSecurityServices

CommonSecurityServicesManager

SecurityAdd-in

Modules

※CSSM: Common Security Services Manger, CSP: Cryptographic Service ProviderTP: Trust Policy Module CL: Certificate LibraryDL: Data Storage Library SPI: Service Provider Interface

アプリケーション

階層化されたサービス、ミドルウェア、言語インタフェース・アダプタ、ツール

CSSMセキュリティAPI

IntegrityServices

CSPManager

TPManager

CLManager

DLManager

ManagementContextSecurity

SPI TPI CLI DLI

CSP TP CL DLデータ保存

SystemSecurityServices

CommonSecurityServicesManager

SecurityAdd-in

Modules

※CSSM: Common Security Services Manger, CSP: Cryptographic Service ProviderTP: Trust Policy Module CL: Certificate LibraryDL: Data Storage Library SPI: Service Provider Interface

Page 135: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐126‐

アーキテクチャを実 現するために、L i n は 2 つのアプローチを考案 し、そ

れらを統 合 した拡張 を実施 した。1 つ目のアプローチは、ポリシー・ライブ

ラリ(P L)という新 たなモジュールの開発である。P L は、C D S A の T P モジ

ュールと置 換 可 能 であり、ユーザが規 定 したポリシーを強 制 することがで

きる。さらに、標 準 的 な T P サービスを提 供 しながら、各 ポリシーは外部 の

P D F(P o l i c y D e s c r i p t i o n F i l e )またはポリシー・データベースによって

規 定 される。P D R B A C と C D S A を統 合するために、セキュリティ管 理 者

はまず組 織 のロールと特 権 をモデル化 し、P D F にアクセス制 御 ポリシー

を書 き込 む必要 がある。P L のポリシー強 制 メカニズムは下図 の通 りであ

る。

図 6 - 4 P L のポリシー強 制

2 つ目 のアプローチは、ポリシー・インタープリタを直 接 呼び出すことに

より、C S S M およびアドイン・モジュールがそれぞれ別 のポリシーを強制す

ることを可 能 にする D L L もしくは共 有 ライブラリの実 装 である。この方 法

を採用すればトラスト・ポリシー強制 メカニズムが C S S M に組み込 まれる

ユーザ

ポリシ/モデル編集ツール

モデルベースPDF

ポリシ・インタープリタ

データ・ストレージ

PLモジュール・ファンクション

CSSM Security API

アプリケーション

Request Result

Result

Query

ポリシ

ポリシ

モデル

モデル

セキュリティ・オブジェクト

※ 実線: 制御フロー 破線: データ・フロー

CSSM Dispatcher

ユーザ

ポリシ/モデル編集ツール

モデルベースPDF

ポリシ・インタープリタ

データ・ストレージ

PLモジュール・ファンクション

CSSM Security API

アプリケーション

Request Result

Result

Query

ポリシ

ポリシ

モデル

モデル

セキュリティ・オブジェクト

※ 実線: 制御フロー 破線: データ・フロー

CSSM Dispatcher

Page 136: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐127‐

ため、P L モジュールは必要 ない。しかし、L i n はレガシーC D S A アプリケ

ーションやインタフェースとの互 換 性 を持 たせることを重 視 し、共 有 ライブ

ラリと P L の重要要素 である P D F の両方 を組み込 んだ拡張 を行 なった。

L i n の拡 張モデルでは、T P モジュールをつけずに、デフォルトのトラスト・

ポリシー・サービスを利 用 することも可 能 であり、簡 単 かつ柔 軟 性 に富 ん

だセキュリティ管 理 を実現できる。

図 6 - 5 P D R B A C によって拡 張 した C D S A

最 後 に、例 としてインターネットを経 由 して実 績 評 価 データベースにア

クセスする場 合 を想定 した際 の一連 の流れについて解説する。

1 . ユーザはウェブ・ブラウザを起 動 し、ある U R L にリクエストを送 信

する。

2 . サーバーはユーザからのリクエストを受 け取 り、ユーザのロールと

要 求 に基づいてクエリを作 成する。

3 . C G I - b i n または J a v a サーブレットがクエリに基づいてデータベ

ースにアクセスする。

アプリケーション

階層化されたサービス、ミドルウェア、言語インタフェース・アダプタ、ツール

CSSMセキュリティAPI

TP PDFManager

CSPManager

CLManager

DLManager

ManagementContextSecurity

SPI CLI DLI

CSP CL DL

データ保存

SystemSecurityServices

CommonSecurityServicesManager

SecurityAdd-in

Modules

ポリシ・インタープリタ Integrity Services トラスト・ポリシ・サービス

TPPDFI

CSP PDFCSP PDF CL PDFCL PDF DL PDFDL PDF

TrustPolicyPDF

ユーザ定義アプリケーション固有の

PDF

※PDF: Policy Description File破線で囲まれているのはアドイン・モジュールの開発者がオプションで提供しており、ユーザからは隠されている。

アプリケーション

階層化されたサービス、ミドルウェア、言語インタフェース・アダプタ、ツール

CSSMセキュリティAPI

TP PDFManager

CSPManager

CLManager

DLManager

ManagementContextSecurity

SPI CLI DLI

CSP CL DL

データ保存

SystemSecurityServices

CommonSecurityServicesManager

SecurityAdd-in

Modules

ポリシ・インタープリタ Integrity Services トラスト・ポリシ・サービス

TPPDFI

CSP PDFCSP PDF CL PDFCL PDF DL PDFDL PDF

TrustPolicyPDF

ユーザ定義アプリケーション固有の

PDF

※PDF: Policy Description File破線で囲まれているのはアドイン・モジュールの開発者がオプションで提供しており、ユーザからは隠されている。

Page 137: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐128‐

4 . 各 レコードを処 理 している間 に、プログラムがクエリで C M M S P L

A P I を呼 び出 し、さらに P D F を呼 び出 して t r u e または f a l s e

を返 す。

5 . 返 ってきた結 果 に基 づいて、プログラムがユーザのオペレーショ

ンの実 行 を許可するかを判断する。

6 .3 SELinux

6 .3 .1 オブジェクト・タイプの付与

オブジェクトに対 してオブジェクト・タイプを付 与 する設 定 は、以 下 のよ

うに記 述 される。

/var/www/html/.*

system_u:object_r:httpd_contents_t

/var/www/cgi-bin/.*

system_u:object_r:httpd_scripts_t

1 行 目 : “ / v a r / w w w / h t m l ” 配 下 の リ ソ ー ス

は、 ” h t t p d _ c o n t e n t s _ t ”というタイプを付 与 される。

2 行 目 : ” / v a r / w w w / c g i - b i n / ” 配 下 の リ ソ ー ス

は、 ” h t t p d _ s c r i p t s _ t ”というタイプを付 与 される。

6 .3 .2 ドメインの付与

ドメイン遷 移 を起 きない場 合 、子 プロセスには親 プロセスと同 じドメイン

が付 与 される。ドメイン遷 移 が行 われる為 には、ポリシー・ファイルに「遷

移 元 のドメイン」、「プログラムファイル(エントリーポイント)のオブジェクト・

タイプ」、「遷 移 後 のドメイン」を記 述 する。

Page 138: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐129‐

以下は、 i n i t r c によって、h t t p d が h t t p d _ t ドメインとして起 動 される

設 定は、以 下 のように記 述 される。

/usr/sbin/httpd

system_u:object_r:httpd_exec_t

domain_auto_trans(initrc_t, httpd_exec_t,

httpd_t)

1 行目 : “ / u s r / s b i n / h t t p d ”は、 ” h t t p d _ e x e c _ t ”というタイプを付 与

される。

2 行 目 : “ i n i t r c _ t ” ド メインにより 、 ” h t t p d _ e x e c _ t ”が実 行 される

と、 ” h t t p d _ t ”にドメイン遷 移 される。

6 .3 .3 アクセス制御

ドメインがアクセスできるリソースは、以 下 のように記 述 される。

(下 記 のようにオブジェクト・タイプの設定 がされているとする)

/var/www/html/.*

system_u:object_r:httpd_contents_t

/var/www/cgi-bin/.*

system_u:object_r:httpd_scripts_t

allow httpd_t httpd_contents_t: {dir file}

{read};

allow httpd_t httpd_scripts_t: {dir file}

{read execute}

1 行目 : “ h t t p d _ t ”というドメインは、 ” h t t p d _ c o n t e n t s _ t ”というタイ

Page 139: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐130‐

プ の 、 ” d i r ” と ” f i l e ” オ ブ ジ ェ ク ト ・ ク ラ ス に 対 し て 、 ” r e a d ” ( 参 照 )

を ” a l l o w ” (許可 )される。

2 行目 : “ h t t p d _ t ”というドメインは、 ” h t t p d _ s c r i p t s _ t ”というタイプ

の 、 ” d i r ” と ” f i l e ” オ ブ ジ ェ ク ト ・ ク ラ ス に 対 し て 、 ” r e a d ” ( 参 照 )

と ” e x e c u t e ” (実行 )を ” a l l o w ” (許可 )される。

6 .3 .4 ユーザとロール、ロールとドメイン

「ユーザ」に割 り当 てられた「ロール」の一 覧 と、その「ロール」が使 用 で

きる「ドメイン」の一 覧 は、以 下 のように記 述 される。

user hogehoge roles { users_r sysadm_r

httpdadmin_r}

role users_r types { users_t editor_t }

role sysadm_r types { sysadm_t }

role httpdadmin_r types { httpdadmin_t }

1 行目 : “ h o g e h o g e ”というユーザは、 ” u s e r s _ r ”、 ” s y s a d m _ r ”、及

び ” h t t p d a d m i n _ r ”というロールが利用できる。

2 行目 : “ u s e r s _ r ”というロールは、 ” u s e r s _ t ”と ” e d i t o r _ t ”というタイ

プのリソースが利用できる。

3 行目 : ” s y s a d m _ r ”というロールは、 ” s y s a d m _ t ”というタイプのリソ

ースが利用 できる。

4 行目 : ” h t t p d _ a d m i n _ r ”というロールは、 ” h t t p d a d m i n _ t ”という

タイプのリソースが利用 できる。

Page 140: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐131‐

6 .3 .5 オブジェクト・クラスとアクセス・ベクターの一覧

6 . 3 . 5 . 1 オブジェクト・クラス(O B J E C T- C L A S S)

アクセス制 御 の対象 となるリソースは、オブジェクト・クラスと呼 ばれる。

オブジェクト・クラスには、ファイル、ディレクトリ、T C P ソケットなど、 5 0

種類以上 ものリソースが存在する。

以下に代表的 なオブジェクト・クラスの概 要 を示す。

種別 オブジェクト・クラス名 概要

S e c u r i t y S E L i n u x 独自の処理

P r o c e s s プロセス処 理

S y s t e m システム処 理

システム

C a pa b i l i t y 特権

F i l e s y s t e m ファイルシステム

F i l e 通常のファイル

D i r ディレクトリ

F d ファイル識 別子

l n k _ f i l e シンボリックリンク

c h r _ f i l e キャラクタ型 デバイス

b i k _ f i l e ブロック型 デバイス

s o c k _ f i l e ソケット

ファイル

f i f o _ f i l e F I F O

S o c k e t ソケット

t c p _ s o c k e t T C P ソケット

u dp _ s o c k e t U D P ソケット

r a w i p _ s o c k e t R a w ソケット

N o d e ネットワークアドレス

セキュリティ・

オブジェクト

ネットワーク

N e t i f ネットワークインターフェース

Page 141: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐132‐

n e t l i n k _ s o c k e t n e t l i n k ソケット

pa c k e t _ s o c k e t pa c k e t ソケット

k e y _ s o c k e t I P S E C 用 ソケット

u n i x _ s t r e a m _ s o c k e

t

ストリーム型 ソケット

u n i x _ d i a g r a m _ s o c k

e t

データグラム型 ソケット

S e m セマフォ

M s g キュー内のメッセージ

M s g q メッセージキュー

S h m 共有 メモリ

プロセス間

I p c 未使用

ユーザスペース・オブジェク

パスワード

P a s s w d パスワード変 更

表 6 - 2 オブジェクト・クラス

Page 142: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐133‐

上記以外のユーザスペース・オブジェクトクラスを以 下 に示す。

種別 オブジェクト・クラス名

D r a w a b l e

W i n d o w

G c

F o n t

C o l o r m a p

P r o p e r t y

C u r s o r

X c l i e n t

X i n p u t

X s e r v e r

X ウィンドウ

X e x t e n s i o n

P a X P a x

n e t l i n k _ r o u t e _ s o c k e t

n e t l i n k _ f i r e w a l l _ s o c k e t

n e t l i n k _ t c p d i a g _ s o c k e t

n e t l i n k _ n f l o g _ s o c k e t

n e t l i n k _ x f r m _ s o c k e t

n e t l i n k _ s e l i n u x _ s o c k e t

n e t l l i n k _ a u d i t _ s o c k e t

n e t l i n k _ i p 6 f w _ s o c k e t

カーネル・ユーザ間 通信

n e t l i n k _ d n r t _ s o c k e t

D - B U S D b u s

ユーザスペース・オブジェクト

N S C D N s c d

Page 143: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐134‐

I P S e c A s s o c i a t i o n

表 6 - 3 ユーザスペース・オブジェクトクラス

6 . 3 . 5 . 2 アクセス・ベクター(A C C E S S - V E C T O R)

オブジェクト・クラスに対 するアクセス形 態 は、アクセス・ベクターと呼 ば

れる。

例 えば、ファイルというオブジェクト・クラスに対 しては、読 み込 み、書 き

込 み、実 行 といったアクセス・ベクターが存在する。

以下に、代 表的 なオブジェクト・クラスのアクセス・ベクターを示す。

• ファイル関 連で共通 のアクセス・ベクター

アクセス・ベクター 概要

i o c t l i o c t l システムコール

r e a d 読み込み

w r i t e 書 き込み

c r e a t e 作成

g e t a t t r 属性 を取得

s e t a t t r 属性の設定

l o c k ロック

r e l a b e l f r o m タイプの変更

r e l a b e l t o タイプの変更

a p p e n d 追加

u n l i n k 削除

l i n k リンク

r e n a m e 名前の変更

e x e c u t e 実行

Page 144: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐135‐

s w a p o n スワップを有 効 に設定

q u o t a o n クウォータを有 効 に設定

m o u n t o n マウントポイントに指 定

表 6 - 4 ファイル関 連 共通 アクセス・ベクター

• ソケット関 連 で共通 のアクセス・ベクター

アクセス・ベクター 概要

i o c t l i o c t l システムコール

r e a d 読み込み

w r i t e 書 き込み

c r e a t e 作成

g e t a t t r 属性 を取得

s e t a t t r 属性の設定

l o c k ロック

r e l a b e l f r o m タイプの変更

r e l a b e l t o タイプの変更

a p p e n d 追加

b i n d 初期化

c o n n e c t 通信の開始

l i s t e n 接続待 ち

a c c e p t 接続待 ち

g e t o p t オプションの取 得

s e t o p t オプションの設 定

s h u t d o w n 通信の終了

r e c v f r o m 受信

s e n d t o 送信

r e c v _ m s g 送信先 ポートに基づく仲 介

Page 145: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐136‐

s e n d _ m s g 送信先 ポートに基づく仲 介

n a m e _ b i n d ポートの使 用

表 6 - 5 ソケット関 連 で共通 のアクセス・ベクター

• プロセス間 通信関連 で共通 のアクセス・ベクター

アクセス・ベクター 概要

c r e a t e 作成

d e s t r o y 削除

g e t a t t r 属性 を取得

s e t a t t r 属性の設定

r e a d 読み込み

w r i t e 書 き込み

a s s o c i a t e プロセス間 通信の I D 付与

u n i x _ r e a d I P C の処理で利用 される読み込み

u n i x _ w r i t e I P C の処理で利用 される書 き込 み

表 6 - 6 プロセス間 通信 関連共通 アクセス・ベクター

• f i l e s y s t e m

アクセス・ベクター 概要

m o u n t マウント

r e m o u n t マウントのオプション変 更

u n m o u n t アンマウント

g e t a t t r 属性 を取得

r e l a b e l f r o m タイプの変更

r e l a b e l t o タイプの変更

t r a n s i t i o n タイプの変更

a s s o c i a t i o n ファイルシステムにファイルを紐 付 け

Page 146: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐137‐

q u o t a m o d クウォータを有 効 に設定

q u o t a g e t クウォータの設定 を取得

表 6 - 7 f i l e s y s t e m のアクセス・ベクター

• d i r

ファイル関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセ

ス・ベクター。

アクセス・ベクター 概要

a d d _ n a m e ディレクトリに、ファイルやディレクトリを追 加

r e m o v e _ n a m e ディレクトリから、ファイルやディレクトリを削 除

r e p a r e n t 親ディレクトリの変 更

s e a r c h 検索

r m d i r 削除

表 6 - 8 d i r のアクセス・ベクター

• f i l e

ファイル関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセ

ス・ベクター。

アクセス・ベクター 概要

e x e c u t e _ n o _ t r a n s ドメイン遷 移 なしの実行

e n t r y _ p o i n t ドメイン遷 移 のエントリーポイント

e x e c m o d キャラクタ型 デバイスファイル用 のパーミッションチ

ェック

表 6 - 9 f i l e のアクセス・ベクター

Page 147: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐138‐

• l n k _ f i l e / b l k _ f i l e / s o c k _ f i l e / f i f o _ f i l e

ファイル関 連で共通 のアクセス・ベクターと同 様 。

• c h r _ f i l e

ファイル関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセ

ス・ベクター。

アクセス・ベクター 概要

e x e c u t e _ n o _ t r a n s ドメイン遷 移 なしの実行

e n t r y _ p o i n t ドメイン遷 移 のエントリーポイント

e x e c m o d キャラクタ型 デバイスファイル用 のパーミッションチ

ェック

表 6 - 1 0 c h r _ f i l e のアクセス・ベクター

• f d

アクセス・ベクター 概要

U s e ファイル識 別子 の継承

表 6 - 11 f d のアクセス・ベクター

• s o c k e t / n e t l i n k _ s o c k e t / p a c k e t _ s o c k e t / k e y _ s o c k e t /

u n i x _ d i a g r a m _ s o c k e t

ファイル関 連で共通 のアクセス・ベクターと同 様 。

Page 148: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐139‐

• t c p _ s o c k e t

ソケット関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセス・

ベクター。

アクセス・ベクター 概要

c o n n e c t t o 接続

n e w c o n 新規 ソケットの作 成

a c c e p t f r o m 接続待 ち

n o d e _ b i n d 特 定 のタイプのノードにソケットを使 用 可 能 に設

表 6 - 1 2 t c p _ s o c k e t のアクセス・ベクター

• u d p _ s o c k e t

ソケット関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセス・

ベクター。

アクセス・ベクター 概要

n o d e _ b i n d 特 定 のタイプのノードにソケットを使 用 可 能 に設

表 6 - 1 3 u d p _ s o c k e t のアクセス・ベクター

• r a w i p _ s o c k e t

ソケット関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセス・

ベクター。

アクセス・ベクター 概要

n o d e _ b i n d 特 定 のタイプのノードにソケットを使 用 可 能 に設

表 6 - 1 4 r a w i p _ s o c k e t のアクセス・ベクター

Page 149: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐140‐

• n o d e

アクセス・ベクター 概要

Tc p _ r e c v t c p パケットの受 信

Tc p _ s e n d t c p パケットの送 信

u d p _ r e c v u d p パケットの受 信

u d p _ s e n d u d p パケットの送 信

r a w i p _ r e c v R a w パケットの受 信

r a w i p _ s e n d R a w パケットの送 信

e n f o r c e _ d e s t 送受信に使われるソケットの I D のパーミッションチ

ェック

表 6 - 1 5 n o d e のアクセス・ベクター

• n e t i f

アクセス ・ベクタ

概要

Tc p _ r e c v t c p パケットの受 信

Tc p _ s e n d t c p パケットの送 信

u d p _ r e c v u d p パケットの受 信

u d p _ s e n d u d p パケットの送 信

r a w i p _ r e c v R a w パケットの受 信

r a w i p _ s e n d R a w パケットの送 信

表 6 - 1 6 n e t i f のアクセス・ベクター

Page 150: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐141‐

• u n i x _ s t r e a m _ s o c k e t

ソケット関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセス・

ベクター。

アクセス・ベクター 概要

c o n n e c t t o 接続

n e w c o n n 新規 ソケットの作 成

a c c e p t f r o m 接続待 ち

表 6 - 1 7 u n i x _ s t r e a m _ s o c k e t のアクセス・ベクター

• p r o c e s s

アクセス・ベクター 概要

f o r k f o r k システムコール

t r a n s i t i o n ドメイン遷 移 の許可

s i g c h l d s i g c h l d システムコール

s i g k i l l s i g k i l l システムコール

s i g s t o p s i g s t o p システムコール

s i g n u l l 0 番のシグナル

s i g n a l 0 番以外 のシグナル

p t r a c e p t r a c e システムコール

g e t s c h e d スケジュールを取得

s e t s c h e d スケジュールを設定

g e t s e s s i o n セッション I D を取 得

g e t p g i d g e t p g i d システムコール

s e t p g i d s e t p g i d システムコール

g e t c a p ケイパビリティを取 得

s e t c a p ケイパビリティを設 定

s h a r e リソースの共有

Page 151: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐142‐

g e t a t t r 属性 を取得

s e t e x e c s e t e x e c c o n システムコール

s e t f s c r e a t e s e t f s c r e a t e c o n システムコール

n o a t s e c u r e g l i b c セキュアモード

s i g i n h シグナルの状態 を継承

s e t r l i m i t プロセスのハードリミットを変 更

r l i m i t i n h リソースのリミットを継 承

d y n t r a n s i t i o n 動的 なコンテキスト遷 移 の許可

s e t c u r r e n t T B W

e x e c m e m T B W

表 6 - 1 8 p r o c e s s のアクセス・ベクター

• i p c / s e m

プロセス関 連で共通 のアクセス・ベクターと同 様 。

• m s g q

プロセス関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセ

ス・ベクター。

アクセス・ベクター 概要

e n q u e u e キューにメッセージを挿 入

表 6 - 1 9 m s g q のアクセス・ベクター

• m s g

アクセス・ベクター 概要

s e n d 送信

r e c e i v e 受信

表 6 - 2 0 m s g のアクセス・ベクター

Page 152: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐143‐

• s h m

プロセス関 連 で共 通 のアクセス・ベクターに付 け加 え、以 下 のアクセ

ス・ベクター。

アクセス・ベクター 概要

l o c k ロック

表 6 - 2 1 s h m のアクセス・ベクター

• s e c u r i t y

アクセス・ベクター 概要

c o m p u t e _ a v アクセス・ベクターの計算

c o m p u t e _ c r e a t e s e l i n u x f s ファイルシステムに作成情報 を設定

c o m p u t e _ m e m b e r s e l i n u x f s ファイルシステムにメンバー情 報 を設

c h e c k _ c o n t e x t s e l i n u x f s ファイルシステムにコンテキストを書 き

込 み

l o a d _ p o l i c y セキュリティ・ポリシーを読 み込み

c o m p u t e _ r e l a b e l s e l i n u x f s ファイルシステムにラベル変 更 情 報 を

設定

c o m p u t e _ u s e r s e l i n u x f s ファイルシステムにユーザ情報 を設定

s e t e n f o r c e p e r m i s s i v e モードと e n f o r c e i n g モードの切 り替

s e t b o o l ブーリアン値 の設定

s e t s e c p a r a m T B W

表 6 - 2 2 s e c u r i t y のアクセス・ベクター

Page 153: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐144‐

• s y s t e m

アクセス・ベクター 概要

I p c _ i n f o i p c ソケットに関する情 報 の取得

s y s l o g _ r e a d s y s l o g の読み込み

s y s l o g _ m o d s y s l o g の読 み込 み、コンソールへの書 き出 し以 外

の操作

s y s l o g _ c o n s o l e s y s l o g のコンソールへの書 き出 し

表 6 - 2 3 s y s t e m のアクセス・ベクター

• c a p a b i l i t y

アクセス・ベクター 概要

c h o w n C h o w n システムコール

D a c _ o v e r r i d e D A C によるアクセス制 御 の無効化

D a c _ r e a d _ s e a r c h D A C による読 み込み権限 を無効化

f o w n e r ファイル操 作 に対するオーナーシップを無 効化

f s e t i d S U I D、S G I D フラグを設 定する際 のチェックを無

効化

k i l l k i l l シグナルの送信

s e t g i d S e t g i d システムコール

s e t u i d S e t u i d システムコール

s e t p c a p ケイパビリティの設 定

l i n u x _ i m m u t a b l e S _ I M M U TA B L E、S _ A P P E N D のファイル属 性

を無効化

N e t _ b i n d _ s e r v i c e 1 0 2 4 番 までのポートの使 用

N e t _ b r o a d c a s t ブロードキャストの送 受信

N e t _ a d m i n ネットワーク設 定 の変更

N e t _ r a w r a w ソケットの使 用

Page 154: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐145‐

I p c _ l o c k 共有 メモリのロック

I p c _ o w n e r I P C のオーナーシップを無 効化

S y s _ m o d u l e カーネルモジュールのインストールと削 除

S y s _ r a w i o r a w I / O の実行

S y s _ c h r o o t C h r o o t システムコール

S y s _ p t r a c e プロセスのトレース

S y s _ p a c c t プロセスのアカウンティング情 報 の変更

S y s _ a d m i n システム管 理用 の様々なシステムコール

S y s _ b o o t リブート

S y s _ n i c e n i c e システムコール

S y s _ r e s o u r c e リソースに関する様々なシステムコール

S y s _ t i m e 時刻の設定

S y s _ t t y _ c o n f i g 端末の設定 の変更

m k n o d M k n o d システムコール

l e a s e l e a s e の許可

a u d i t _ w r i t e 監査 ログの書 き込 み

a u d i t _ c o n t r o l 監査 システムの管理や設定変更

表 6 - 2 4 c a p a b i l i t y のアクセス・ベクター

• p a s s w d

アクセス・ベクター 概要

p a s s w d パスワードの変 更

c h f n アカウント情 報 の変更

c h s h ログインシェルの変更

r o o t o k ユーザが r o o t の際 にパスワードの更 新 を許可

c r o n t a b T B W

表 6 - 2 5 p a s s w d のアクセス・ベクター

Page 155: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐146‐

上記以外のオブジェクト・クラスのアクセス・ベクターを以 下 に示す。

オブジェクト・クラス名 アクセスベクター名

C r e a t e

D e s t r o y

D r a w

C o p y

D r a w a b l e

G e t a t t r

C r e a t e

F r e e

G e t a t t r

G c

S e t a t t r

A d d c h i l d

C r e a t e

D e s t r o y

M a p

U n m a p

C h s t a c k

C h p r o p l i s t

C h p r o p

L i s t p r o p

G e t a t t r

S e t a t t r

S e t f o c u s

M o v e

C h s e l e c t i o n

Wi n d o w

C h p a r e n t

Page 156: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐147‐

C t t l l i f e

E n u m e r a t e

Tr a n s p a r e n t

M o u s e m o t i o n

c l i e n t c o m e v e n t

I n p u t e v e n t

D r a w e v e n t

w i n d o w c h a n g e e v e n t

w i n d o w c h a n g e r e q u e s t

s e r v e r c h a n g e e v e n t

e x t e n s i o n e v e n t

l o a d

f r e e

g e t a t t r

F o n t

u s e

c r e a t e

f r e e

i n s t a l l

u n i n s t a l l

l i s t

r e a d

s t o r e

g e t a t t r

C o l o r m a p

s e t a t t r

c r e a t e

f r e e

P r o p e r t y

r e a d

Page 157: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐148‐

w r i t e

c r e a t e

c r e a t e g l y p h

f r e e

a s s i n g n

C u r s o r

s e t a t t r

X c l i e n t k i l l

l o o k u p

g e t a t t r

s e t a t t r

s e t f o c u s

w a r p p o i n t e r

p a s s i v e g r a b

a c t i v e g r a b

u n g r a b

b e l l

m o u s e m o t i o n

X i n p u t

r e l a b e l i n p u t

s c r e e n s a v e r

g e t h o s t l i s t

s e t h o s t l i s t

g e t f o n t p a t h

s e t f o n t p a t h

g e t a t t r

g r a b

X s e r v e r

u n g r a b

X e x t e n s i o n q u e r y

Page 158: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐149‐

u s e

p a g e e x e c

e m u t r a m p

m p r o t e c t

r a n d m m a p

r a n d e x e c

P a x

s e g m e x e c

ソケット関 連 で共通 のアクセス・ベクター

n l m s g _ r e a d

n e t l i n k _ r o u t e _ s o c k e t

n e t l i n k _ f i r e w a l l _ s o c k e t

n e t l i n k _ t c p d i a g _ s o c k e t

n e t l i n k _ x f r m _ s o c k e t

n e t l i n k _ a u d i t _ s o c k e t

n e t l i n k _ i p 6 f w _ s o c k e t n l m s g _ w r i t e

n e t l i n k _ n f l o g _ s o c k e t

n e t l i n k _ s e l i n u x _ s o c k e t

n e t l i n k _ d n r t _ s o c k e t

プロセス関 連で共通 のアクセス・ベクター

a c q u i r e _ s v c D b u s

s e n d _ m s g

g e t p w d

g e t g r p

g e t h o s t

g e t s t a t

a d m i n

s h m e m p w d

s h m e m g r p

N s c d

S h m e m h o s t

A s s o c i a t i o n S e n d t o

Page 159: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐150‐

R e c v f r o m

表 6 - 2 6 その他 オブジェクト・クラスのアクセス・ベクター

6 .3 .6 ドメイン遷移の動的 な選択

ドメイン遷 移 は、「遷 移 元 のドメイン」と「プログラムファイルのオブジェク

ト・タイプ」の組 み合 わせに対 して「遷 移 後 のドメイン」が決 定 される。これ

らの遷 移 はポリシー・ファイルに記 述 されており、システム稼 動 中 は変 更

できない。しかし、幾 つかのアプリケーションでは遷 移 後 のドメインを動 的

に決定 したい場合 がある。例 えば s s h d では認証 されたユーザのシェルを、

そのユーザのドメインで起 動するようにしたい場合である。

s e t e x e c c o n は、ドメイン遷 移 の動 的 な選 択 を実 現 するシステムコー

ルである。プログラム起 動 に先 立 って、本 システムコールを呼 び出 すこと

によって e x e c システムコールより起 動 されたプログラムのドメインが指 定 し

たドメインになる。

i n t s e t e x e c c o n ( s e c u r i t y _ c o n t e x t _ t c o n t e x t ) ;

先ほどの s s h の例 を具体的 に説明する。まず、ユーザのリクエストに応

じて s s h d が f o r k され、ユーザの認証が行われる。PA M によってユーザ

が 承 認 さ れ る と 、 承 認 さ れ た ユ ー ザ の コ ン テ キ ス ト ( ド メ イ ン ) が

s e t e x e c c o n により設 定 される。次 にユーザのシェルを e x e c するために

s s h d がさらに f o r k される。複 製 されたプロセスは、ユーザのシェルを

e x e c する。この際 に、ドメイン遷 移 が行われるが、遷 移先 のドメインとして

s e t e x e c c o n で設 定 したユーザのドメインが使 用 される。これにより、ユー

ザのドメインでシェルが起動 されることになる。

Page 160: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐151‐

図 6 - 6 s e t e x e c c o n とドメイン遷 移

6 .4 Trusted So lar i s

6 .4 .1 格付けとコンパートメントの設定

格付 けとコンパートメントの定 義 は l a b e l _ e n c o r d i n g ファイルによって

設 定 される。

6 . 4 . 1 . 1 格付 け

格 付 けは、機 密 ラベルの信 頼 度 を階 層 的 に表 している。格 付 けの定

義は l a b e l _ e n c o r d i n g ファイル内 の C L A S S F I C AT I O N セクションに

sshdsshd

bashbash

sshdsshd

sshdsshd

fork

fork

access

pam call

setexeccon(userX_t)

exec

granted

denied

exit

process 1sid: sshd_tuid: root

process 2sid: sshd_tuid: root

process 3sid: sshd_tuid: root

process 3sid: userX_tuid: userX

sshdsshd

bashbash

sshdsshd

sshdsshd

fork

fork

access

pam call

setexeccon(userX_t)

exec

granted

denied

exit

process 1sid: sshd_tuid: root

process 2sid: sshd_tuid: root

process 3sid: sshd_tuid: root

process 3sid: userX_tuid: userX

Page 161: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐152‐

以下のように記 述 される。

n a m e = P U B L I C ; s n a m e = P U B ; v a l u e = 5 0 ;

上記の例 では、n a m e タグにより、P U B L I C という名 称 の格付 けが定

義 される。また、 s n a m e タグにより略 称 が定義 され、v a l u e により格 付 け

の信頼度 が定義 される。信 頼 度 は、1~2 5 5 の数字 であり、数 字 が大 き

いほど優 位 の格 付 けを示 す。格 付 けの設 定 時 に使 用 できる各 タグの概

要 を、以 下 に示す。

タグ 概要

n a m e 格付 けの名称

s n a m e 略称

a n a m e 代替名称

v a l u e 格付 けの値

i n i t i a l

c o m p a r t m e n t

デフォルトで設 定 されるコンパートメント

表 6 - 2 7 格 付 けの設定 時 に使用 できるタグ

6 . 4 . 1 . 2 コンパートメント

コンパートメントは、機 密 ラベルの区 分 を示 している。コンパートメントの

定 義は l a b e l _ e n c o r d i n g ファイル内 の W O R D S セクションに以 下 のよう

に記 述 される。

n a m e = w e b ; s n a m e = w e b ; m a x c l a s s = P U B ;

c o m pa r t m e n ts = 5 0 - 6 0 ;

Page 162: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐153‐

上記の例 では、n a m e タグにより w e b という名 称 のコンパートメントが

定 義 される。また、 s n a m e タグより略 称 が定義 され、m a x c l a s s によりコ

ン パ ー ト メ ン ト の 利 用 可 能 な 格 付 け の 上 限 が 定 義 さ れ る 。

c o m p a r t m e n t s タグはコンパートメントのビット列 を示 し、優 位 のコンパー

トメントとは劣 位 のコンパートメントのビット列 を全 て含 むことを指 す。コン

パートメントの設 定時 に使用できる各 タグの概要 を、以 下 に示す。

タグ 概要

n a m e コンパートメントの名 称

s n a m e 略称

p r e f i x 接頭文字

s u f f i x 接尾文字

c o m p a r t m e n t s コンパートメントのビット列

m i n i c l a s s コンパートメントの利 用可能 な格付 けの下限

m a x c l a s s コンパートメントの利 用可能 な格付 けの上限

o m n i c l a s s i n i t i a l c o m p a r t m e n t s から隠 蔽する文字

表 6 - 2 8 コンパートメントの設 定 時 に使用 できるタグ

6 . 4 . 1 . 3 格付 けとコンパートメントの制 約

格付 けとコンパートメントは、その組み合 わせに対 して制約 をかけること

が出 来 る 。 これらの制 約 の定 義 は、 l a b e l _ e n c o r d i n g フ ァ イル内 の

A C C R E D I TAT I O N R A N G E S セクションに以 下のように記 述 される。

c l a s s i f i c a t i o n = P U B ; a l l c o m pa r t m e n t c o m b i n a t i o n s v a l i d ;

Page 163: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐154‐

上 記 の例 では、P U B L I C 格 付 けに対 して、全 てのコンパートメントの

組 み合わせが許可 されている。これらのタグの概要 を以下 に示す。

タグ 概要

C l a s s i f i c a t i o n 格付 けの名称

o n l y v a l i d c o m p a r t m e n t

c o m b i n a t i o n s

有効 なコンパートメントの列 挙

a l l c o m p a r t m e n t

c o m b i n a t i o n s v a l i d e x c e p t

有効でないコンパートメントの列 挙

a l l c o m p a r t m e n t

c o m b i n a t i o n s v a l i d

全 てのコンパートメントは有 効

表 6 - 2 9 格 付 けとコンパートメントの組 み合 わせを制約 するためのタグ

6 .4 .2 特権

プログラムに対 して付 与することの出 来 る特 権 を以下 に列挙する。

• ファイルシステム関 連 の特権

特権 概要

F i l e _ a u d i t ファイルやディレクト リの監 査 事 前 選 択 情 報 の

設定 と取 得

F i l e _ c h o w n ファイル所 有者 の変更

F i l e _ d a c _ e x e c u t e D A C に制限 されない実行

F i l e _ d a c _ r e a d D A C に制限 されない読み込み

F i l e _ d a c _ s e a r c h D A C に制限 されない検索

F i l e _ d a c _ w r i t e D A C に制限 されない書 き込 み

F i l e _ d o w n g r a d e _ s l 優位でない機密 ラベルの設定

Page 164: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐155‐

F i l e _ l o c k 保持 しないファイルロックのロック情 報 の取得

f i l e _ m a c _ r e a d M A C に制限 されない読み込み

f i l e _ m a c _ s e a r c h M A C に制限 されない検索

f i l e _ m a c _ w r i t e M A C に制限 されない書 き込 み

f i l e _ o w n e r 所 有 しないフ ァ イルのア クセス時 刻 、修 正 時

刻 、監 査 事 前 選 択 属 性 、特 権 、機 密 ラベルの

変更

f i l e _ s e t d a c パーミッションと A C L の属性の変更

f i l e _ s e t i d s e t - u s e r - I D と s e t - g r o u p - I D の設定

f i l e _ s e t p r i v 特権の設定

f i l e _ u p g r a d e _ s l 優位 な機密 ラベルの設定

表 6 - 3 0 ファイルシステム関 連 の特 権

• S y s t e m V I P C 関連 の特権

( I P C メッセージキュー・セマフォセット・共 有 メモリセグメントに対 する

操 作 )

特権 概要

I p c _ d a c _ r e a d D A C に制限 されない読み込み

I p c _ d a c _ w r i t e D A C に制限 されない書 き込 み

I p c _ m a c _ r e a d M A C に制限 されない読み込み

I p c _ m a c _ w r i t e M A C に制限 されない書 き込 み

I p c _ o w n e r 削除 と、パーミッションと A C L の変更

表 6 - 3 1 S y s t e m V I P C 関連 の特権

Page 165: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐156‐

• ネットワーク関 連 の特権

特権 概要

N e t _ b r o a d c a s t ブロードキャストマルチキャストの送 信

N e t _ d o w n g r a d e _ s l 書 き込 み中 のデータか、ネットワークのエンドポイ

ントに優 位 でない機密 ラベルを設定

N e t _ m a c _ r e a d マルチレベルポートのバインドとアクセプト

N e t _ p r i v a d d r 特権 ポートのバインド

N e t _ r a w a c c e s s ネットワーク層 に対する直接 アクセス

N e t _ r e p l y _ e q u a l 受 け取 った機密 ラベルでの返信

N e t _ s e t c l r 書 き込 み中 のデータか、ネットワークのエンドポイ

ントに認 可上限 を設定

N e t _ s e t i d

N e t _ s e t p r i v 書 き込 み中 のデータか、ネットワークのエンドポイ

ントに特 権 を設定

N e t _ u p g r a d e _ s l 書 き込 み中 のデータか、ネットワークのエンドポイ

ントに優 位 な機密 ラベルを設定

表 6 - 3 2 ネットワーク関 連 の特 権

• プロセス関 連 の特権

特権 概要

P r o c _ a u d i t _ a p p l T C B イベント番 号 外 の監 査 イベントに

対 する監 査 ログの作成

P r o c _ a u d i t _ t c b T C B イベント番 号 外 の監 査 イベントに

対 する監 査 ログの作成

P r o c _ c h r o o t ルートディレクトリの変 更

P r o c _ d e b u g _ n o n t r a n q u i t l 機 密 ラベルを変 更 する際 のプロセスオ

ブジェクトに対 する一 定 の操作

Page 166: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐157‐

P r o c _ d u m p c o r e s e t - u s e r - I D、 s e t - g r o u p - I D またはパ

ーミッションの付 いた T C B プロセスの実

行 、または、シグナルを受 け取 り c o r e フ

ァイルを作 成 するための特 権 を付 与 さ

れたプロセスの実行

P r o c _ m a c _ r e a d 優位 な機 密 ラベルを持つプロセスからの

読み込み

P r o c _ m a c _ w r i t e 優位 な機 密 ラベルを持つプロセスからの

書 き込 み

P r o c _ n o d e l a y 秘 密 チャネルと識 別 される操 作 が行 わ

れる際 に、プロセスを遅 延 させない設定

P r o c _ o w n e r プロセスの所有者以外の読み込みや書

き込み

P r o c _ s e t c l r プロセスの認可上限 を設定

P r o c _ s e t i d プロセスに異 なる U I G と G I D を設 定

P r o c _ s e t s l プロセスに異 なる機 密 ラベルを設定

P r o c _ t r a n q u i l 他 のプロセスにプロセスオブジェクトが使

用 されている際 に、異 なる機 密 ラベルを

設定

表 6 - 3 3 プロセス関 連 の特 権

• システム関 連 の特権

特権 概要

S y s _ a u d i t 監査デーモンの起動

S y s _ b o o t システムの h a l t , r e b o o t , s u s p e n d

S y s _ c o n f i g メモリマップドファイルと共 有 メモリセグメントのロ

ックとアンロック

Page 167: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐158‐

S y s _ c o n s o l e コンソール出力 を他 のデバイスにリダイレクト

S y s _ d e v i c e デバイススペシャルファイルの生成

S y s _ f s _ c o n f i g ファイルシステムロックの操 作

S y s _ i p c _ c o n f i g I P C メッセージキューのバッファサイズを拡 張

S y s _ m a x p r o c プロセスの最大数 を超 えて、プロセスを生 成

S y s _ m i n f r e e ファイルシステムの空 き領 域 が最 低値 を越 えた

場合 の書 き込み

S y s _ m o u n t ファイルシステムへのマウント

S y s _ n e t _ c o n f i g インタフェース及びルーティングの設定

S y s _ n f s N F S デーモンの起動

S y s _ s u s e r _ c o m p a t s u s e r システムコール

S y s _ s y s e m _ d o o r 全 ての機密 ラベルから使 用 される d o o r の生 成

S y s _ t r a n s _ l a b e l 優 位 でない機 密 ラベルの「外 部 文 字 列 形 式 」

とラベルの変換

表 6 - 3 4 システム関 連 の特 権

• ウィンドウ関 連 の特権

特権 概要

Wi n _ c o l o r m a p カラーマップの制約 を越 える操 作

Wi n _ c o n f i g X サーバーに永続的に維持 されるリソースの設

定 と削 除

Wi n _ d a c _ r e a d 所 有 者 でないウィンドウリソースに対 する読 み

込み

Wi n _ d a c _ w r i t e 所 有 者 でないウィンドウリソースに対 する書 き

込 み

Wi n _ d e v i c e 入力デバイスの処理の実行

Wi n _ d g a ダイレクトグラフィックアクセス拡 張 プロトコルの

Page 168: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐159‐

使用

Wi n _ d o w n g r a d e _ s l ウィンドウの機 密 ラベルを、優 位 でない機 密 ラ

ベルに設定

Wi n _ f o n t p a t h フォントパスの設定

Wi n _ m a c _ r e a d 優 位 でない機 密 ラベルのウィンドウからの読 み

込み

Wi n _ m a c _ w r i t e 優 位 でない機 密 ラベルのウィンドウからの書 き

込 み

Wi n _ s e l e c t i o n 特 別 な仲 介 なしにウィンドウ間 でのデータを移

Wi n _ u p g r a d e _ s l ウィンドウの機 密 ラベルを、優 位 な機 密 ラベル

に設定

表 6 - 3 5 ウィンドウ関 連 の特 権

6 .5 Apache

6 .5 .1 認証 (A u t h e n t i ca t i o n)

認証 とは、正 規 のユーザであることを確 認する仕 組みを指す。

以下に述べるような様 々な認証 によって、正 規 のユーザであることを確

認すると共 に、認 証後 に割 り振 られるユーザとグループを制御する。

6 . 5 . 1 . 1 認証方式 の種類

認証方式は、下 表 の通 りである。

種類 解説

匿名認証 ユーザ名やパスワードの指 定 なしに We b サイトにアクセス

する方 式 。

Page 169: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐160‐

特 定 の認 証 方 式 を設 定 しない場 合 、この匿 名 認 証 が

使用 される。

認証に成功 したユーザに対 しては、A p a c h e の実行ユー

ザとグループが割 り振 られる。

基本認証 ユーザ名 とパスワードを入 力 させて認証 を行 う方 式 。

ただし、ユーザ名 やパスワードは暗 号 化 されずにネットワ

ークを流 れるため、セキュリティ上 の問題 がある。

認証に成功 したユーザに対 しては、A p a c h e の実行ユー

ザとグループが割 り振 られる。

ダ イ ジ ェ ス ト

認 証

基 本 認 証 と同 様 にユーザ名 とパスワードにより認 証 を行

う方 式 。

ただし、ユーザ名 とパスワードをハッシュ値 として送 信 する

ため、セキュリティの面 で優れている。

認証に成功 したユーザに対 しては、A p a c h e の実行ユー

ザとグループが割 り振 られる。

D B M 認証 基本認証 と同 様の認証方式 。A p a c h e にのみ存在 。

ユーザ名 とパスワードのリストをデータベースとして保 持 し

ているため、大 規 模 なシステムにおいてパフォーマンスに

優 れる。

認証に成功 したユーザに対 しては、A p a c h e の実行ユー

ザとグループが割 り振 られる。

L D A P 認証 ユーザ情報に L D A P を使 った認証方式 。

認証に成功 したユーザに対 しては、A p a c h e の実行ユー

ザとグループが割 り振 られる。

証明書認証 S S L のセキュリティ機 能 を使 った認証方式 。

サーバー証明 書 ではユーザによる We b サイトの認 証 を

行 うことができ、クライアント証 明 書では We b サイトによる

Page 170: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐161‐

ユーザの認証 を行 うことができる。

認 証 に成 功 したユーザに対 しては、予 めマップしたユー

ザと、そのユーザの所属するグループが割 り振 られる。

表 6 - 3 6 A p a c h e の認証方式

6 . 5 . 1 . 2 S u E x e c

通常 、A p a c h e では、 c g i の実行権限に We b サーバーの実行ユーザ

とグループが使われる。しかし、このように同 一 の実行権限 で c g i が実行

されてしまうと、アクセス制 御 を行 う事 が難 しくなり、セキュリティ上 の問 題

となる。

そこで c g i の実行権限 を制御する機能 が必要 となるが、これを実 現す

るのが S u E x e c である。

S u E x e c を使 うことで、仮 想 ホスト内 、または、ユーザ管 理 のディレクト

リ内 (p u b l i c _ h t m l など)に存 在する c g i に対 して、その c g i の実行ユー

ザとグループを制御する事 が出来 る。

6 .5 .2 認可 (A u t h o r i z a t i o n)

認証 されたユーザに対 して、アクセス権 限 の制御 を行 う仕 組み。

ユーザの操 作 対 象 と、その対 象 に関 するユーザのアクセス権 限 により

認 可 を行 う。

6 . 5 . 2 . 1 権限 の種類

We b サーバーのアクセス制 御 には、We b サーバー自身が持つアクセ

ス制 御 の仕組みを利用する場合 と、ファイルシステムに実 装 されたアクセ

ス制 御 の仕 組みを利 用する場 合 がある。ここでは、A p a c h e の実 装する

Page 171: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐162‐

アクセス制 御 とファイルシステムの実 装 するアクセス制 御 について解 説す

る。

A . A p a c h e の実装するアクセス制 御

A p a c h e の実装するアクセス制 御 については、下 表 の通 りである。

アクセス制 御 解説

E x e c C G I C G I の実 行 を許可する。

I n c l u d e s S S I の実 行 を許可する。

I n c l u d e s N O E X E C # e x e c , # i n c l u d e の命令 を無効 にして、

S S I の実 行 を許可する。

I n d e x e s D i r e c t o r y I n d e x で 指 定 し た フ ァ イ ル

( i n d e x . h t m l など)が存 在 しない場 合 、

ディレクトリ内 の一覧 の参照 を許可する。

M u l t i Vi e w s M u l t i v i e w s を許 可する。

F l l o w S y m L i n k s シンボリックを辿 ることを許 可する。

S y m L i n k s I f O w n e r M a t c h シンボリックリンク先 のファイルかディレクト

リが、シンボリックリンクの所 有 者 と同 じ場

合 に限 り、リンクを辿 ることを許 可する。

A l l M u l t i v i e w s を除 いた上記全 て。

A l l o w リクエスト元 の I P アドレスや、ネットワーク

セグメント、環 境 変 数 として取 得 された値

によって、対 象 にアクセスすることを許 可

する。

D e n y リクエスト元 の I P アドレスや、ネットワーク

セグメント、環 境 変 数 として取 得 された値

によって、対 象 にアクセスすることを拒 否

Page 172: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐163‐

する。

O r d e r A l l o w と D e n y の評価 される順 番 を制御

する。

表 6 - 3 7 A p a c h e の実装するアクセス制 御

B . ファイルシステムの実装するアクセス制 御

ファイルシステムの実 装するアクセス制 御 については、P o s i x 準拠のファ

イルシステムと N T F S についてそれぞれ解説する。

1 . P o s i x 準拠のファイルシステム

P o s i x 準 拠 のファイルシステムは、アクセス制 御 のために、下 表

のようなアクセス権 限 を持 っている。

アクセス権 限 解説

読み込み ファイルに対 しては、ファイルを読 み込 む権 限 。ディ

レクトリに対 しては、ディレクトリに対 して、 ” l s ”できる

権 限 。

書 き込み ファイルに対 しては、ファイルを変 更 する権 限 。ディ

レク ト リに対 しては、ディレク ト リの中 でファイルを作

成 ・削 除 する権 限 。

実 行 およびディレ

クト リ内 容 の一 覧

表示

ファイルに対 しては、ファイルを実 行 する権 限 。ディ

レクトリに対 しては、ディレクトリ内 のファイルにアクセ

スする権 限 。

表 6 - 3 8 P o s i x 準拠のファイルシステムのアクセス権 限

Page 173: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐164‐

2 . N T F S

N T F S では、アクセス制 御 のために、以 下 のようなアクセス権 限

を持 っている。

N T F S のアクセス権 限 には、フルコントロール、変 更 、読 み取 りと

実 行 、フォルダの内容 の一覧表示 、読み取 り、書 き込 みの 5 つ

が存在する。

それぞれのアクセス権 限 は、以 下 の 1 4 の論 理 グループから構

成 されている。

i . フォルダのスキャンとファイルの実行

フォルダに対 しては、他 のファイルまたはフォルダにアクセス

するために、フォルダ間 を移 動 する権 限 (フォルダのスキャ

ン)。

ファイルに対 しては、プログラムの実 行 権 限 (ファイルの実

行 )。

i i . フォルダの一覧 /データの読み取 り

フォルダに対 しては、フォルダ内 のファイル名 とサブフォルダ

名 を表示する権限 (フォルダの一覧 )。

ファイルに対 しては、ファイルのデータを表 示 する権 限 (デー

タの読み取 り)。

i i i . 属性の読み取 り

ファイルシステムによって定 義 されたファイル、または、フォル

ダの属性 を表示する権限 。

i v . 拡張属性の読み取 り

プログラムによって定 義 されたファイル、または、フォルダの拡

張属性 を表示する権限 。

v . ファイルの作成 /データの書 き込 み

フォルダに対 しては、フォルダ内 でファイルの作 成 を許 可 す

Page 174: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐165‐

る権 限 。

ファイルに対 しては、ファイルの変 更 及び内容 の上 書 きを許

可する権限 。

v i . フォルダの作成 /データの追加

フォルダに対 しては、フォルダ内 でフォルダの作 成 を許 可 す

る権限 。

ファイルに対 しては、既 存 のデータの変 更 、削 除 、または、

上 書 きを伴 わないファイル末 尾 に対 する変 更 を許 可 する権

限 。

v i i . 属性の書 き込み

ファイルシステムによって定 義 されたファイル、または、フォル

ダの属性 を変更する権限 。

v i i i . 拡張属性の書 き込み

プログラムによって定 義 されたファイル、または、フォルダの拡

張属性 を変更する権限 。

i x . サブフォルダとファイルの削除

サブフォルダ、または、ファイルに「削 除 」権 限 が付 与 されて

いない場合 にも、それらの削除 を許可する権限 。

x . 削除

ファイル、または、サブフォルダの削除 を許可する権限 。

x i . アクセス許 可 の読み取 り

ファイル、または、フォルダのアクセス許 可 の読 み取 りを許 可

する権限 。

x i i . アクセス許 可 の変更

ファイル、または、フォルダのアクセス許 可 の変 更 を許 可する

権限 。

x i i i . 所有権の取得

ファイル、または、フォルダの所 有 権 の取 得 を許 可 する権

Page 175: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐166‐

限 。

x i v . 同期

ファイル、または、フォルダのハンドルに複 数 のスレッドが動

作 し、他 のスレッドと同 期 することを許 可する権 限 。

り 書

フ ォ ル ダの ス キ

ャ ン と ファ イ ル

の 実 行

○ ○ ○ ○

フ ォ ル ダの 一 覧

/デ ー タ の 読 み

取 り

○ ○ ○ ○ ○

属 性 の 読み 取 り ○ ○ ○ ○ ○

拡 張 属 性の 読 み

取 り

○ ○ ○ ○ ○

フ ァ イ ルの 作 成

/デ ー タ の 書 き

込 み

○ ○ ○

フ ォ ル ダの 作 成

/デ ー タ の 追 加

○ ○ ○

属 性 の 書き 込 み ○ ○ ○

拡 張 属 性の 書 き

込 み

○ ○ ○

サ ブ フ ォル ダ と

フ ァ イ ルの 削 除

削 除 ○ ○

Page 176: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐167‐

ア ク セ ス許 可 の

読 み 取 り

○ ○ ○ ○ ○ ○

ア ク セ ス許 可 の

変 更

所 有 権 の取 得 ○

同 期 ○ ○ ○ ○ ○ ○

表 6 - 3 9 N T F S のアクセス権 限 と論 理 グループ

6 . 5 . 2 . 2 認可 の対象

A . 対象の種類

認可の対象 の種類 については、下 表 の通 りである。

認可の対象 解説

ファイル 個々のファイル

ファイル (正 規 表 現 による

マッチ)

ファイル名 が、指 定 された正 規 表 現 でマ

ッチしたファイル

ディレクトリ 個々のディレクトリ

ディレクトリ (正 規 表 現 によ

るマッチ)

ディレクトリ名 が、指 定 された正 規 表現 で

マッチしたディレクトリ

ロケーション ドキュメントルートからのパス

We b サイト全 体 を指定することも可 能

ロケーション (正 規 表 現 に

よるマッチ)

ドキュメントルートからのパスが、指 定 され

た正規表現マッチしたパス

表 6 - 4 0 A p a c h e の認可 の対象 の種類

Page 177: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐168‐

B . 対象の仮想化

■ ファイル単 位 の仮想化

A p a c h e では a l i a s ディレクティブを使 うことで実 現 できる。

■ ディレクトリ単 位 の仮想化

A p a c h e では、a l i a s ディレクトリを使 うことで実 現 できる。

6 .6 I IS

6 .6 .1 認証 (A u t h e n t i ca t i o n)

6 . 6 . 1 . 1 認証方式 の種類

認証方式は、下 表 の通 りである。

種類 解説

匿名認証 ユーザ名やパスワードの指 定 なしに We b サイトにアクセ

スする方 式 。

特 定 の認 証 方 式 を設 定 しない場 合 、この匿 名 認 証 が

使用 される。

認 証 に 成 功 し た ユ ー ザ に 対 し て は 、

I S U R _ c o m p u t e r n a m e というユーザと G u e s t グルー

プが割 り振 られる。

基本認証 ユーザ名 とパスワードを入 力 させて認証 を行 う方 式 。

ただし、ユーザ名やパスワードは暗号化 されずにネットワ

ークを流 れるため、セキュリティ上 の問題 がある。

認 証 に成 功 したユーザに対 しては、認 証 に成 功 したユ

ーザと、そのユーザの所 属 するグループが割 り振 られ

る。

Page 178: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐169‐

ダ イ ジ ェ ス ト

認 証

基 本 認 証 と同 様 にユーザ名 とパスワードにより認 証 を

行 う方 式 。

ただし、ユーザ名 とパスワードをハッシュ値 として送 信 す

るため、セキュリティの面 で優れている。

I I S では We b D AV ディレクトリで使 用 できる。

認 証 に成 功 したユーザに対 しては、認 証 に成 功 したユ

ーザと、そのユーザの所 属 するグループが割 り振 られ

る。

高 度 ダ イ ジ

ェスト認 証

ダイジェスト認 証 よりセキュリティの面 で優 れた認 証 方

式 。

I I S にのみ存在 。

ダイジェスト認 証 と違 い、ドメインコントローラの A c t i v e

D i r e c t o r y でもユーザ情報 をハッシュ値 として保 存 して

いる。

認 証 に成 功 したユーザに対 しては、認 証 に成 功 したユ

ーザと、そのユーザの所 属 するグループが割 り振 られ

る。

統 合

Wi n d o w s

認証

ブラウザの動作 している Wi n d o w s マシンにログインして

いるユーザ名 とパスワードを使 う認 証 方 式 。 I I S にのみ

存在 。

ユーザ名 とパスワードはハッシュ値 として送 信 される。

認 証 に成 功 したユーザに対 しては、認 証 に成 功 したユ

ーザと、そのユーザの所 属 するグループが割 り振 られ

る。

証 明 書 認

S S L のセキュリティ機 能 を使 った認証方式 。

サーバー証明書ではユーザによる We b サイトの認 証 を

行 うことができ、クライアント証 明 書では We b サイトによ

Page 179: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐170‐

るユーザの認証 を行 うことができる。

認証に成功 したユーザに対 しては、予 めマップしたユー

ザと、そのユーザの所属するグループが割 り振 られる。

表 6 - 4 1 I I S の認証方式

6 .6 .2 認可 (A u t h o r i z a t i o n)

6 . 6 . 2 . 1 権限 の種類

ここでは、 I I S の実装するアクセス制 御 とファイルシステムの実装するア

クセス制 御 について解説する。

A . I I S の実 装するアクセス制 御

I I S は、アクセス制 御 のために、下 表 のようなアクセス権 限 を持 ってい

る。

アクセス制 御 解説

読み取 り ファイル、または、ディレクトリの内 容 やプロパティ

を参 照 できる権 限

書 き込み ファイル、または、ディレクトリの内 容 やプロパティ

を変 更 できる権 限

スクリプトソースアク

セス

スクリプトのソースファイルにアクセスできる権 限

ディレクトリの参 照 ファイルの一 覧 とコレクションを参 照 できる権

実行 アクセス権 スクリプトを実 行 する際 の適 切 なレベルを、以 下

より選 択する。

1 . なし

2 . スクリプトのみ

Page 180: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐171‐

3 . スクリプト及 び実行可能 ファイル

表 6 - 4 2 I I S の実装するアクセス制 御

B . ファイルシステムの実装するアクセス制 御

1 . N T F S

N T F S では、アクセス制 御 のために、以 下 のようなアクセス権 限

を持 っている。

N T F S のアクセス権 限 には、フルコントロール、変 更 、読 み取 りと

実 行 、フォルダの内容 の一覧表示 、読み取 り、書 き込 みの 5 つ

が存在する。

それぞれのアクセス権 限 は、以 下 の 1 4 の論 理 グループから構

成 されている。

i . フォルダのスキャンとファイルの実行

フォルダに対 しては、他 のファイルまたはフォルダにアクセス

するために、フォルダ間 を移 動 する権 限 (フォルダのスキャ

ン)。

ファイルに対 しては、プログラムの実 行 権 限 (ファイルの実

行 )。

i i . フォルダの一覧 /データの読み取 り

フォルダに対 しては、フォルダ内 のファイル名 とサブフォルダ

名 を表示する権限 (フォルダの一覧 )。

ファイルに対 しては、ファイルのデータを表 示 する権 限 (デー

タの読み取 り)。

i i i . 属性の読み取 り

ファイルシステムによって定 義 されたファイル、または、フォル

ダの属性 を表示する権限 。

Page 181: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐172‐

i v . 拡張属性の読み取 り

プログラムによって定 義 されたファイル、または、フォルダの拡

張属性 を表示する権限 。

v . ファイルの作成 /データの書 き込 み

フォルダに対 しては、フォルダ内 でファイルの作 成 を許 可 す

る権限 。

ファイルに対 しては、ファイルの変 更 及び内容 の上 書 きを許

可する権限 。

v i . フォルダの作成 /データの追加

フォルダに対 しては、フォルダ内 でフォルダの作 成 を許 可 す

る権限 。

ファイルに対 しては、既 存 のデータの変 更 、削 除 、または、

上 書 きを伴 わないファイル末 尾 に対 する変 更 を許 可 する権

限 。

v i i . 属性の書 き込み

ファイルシステムによって定 義 されたファイル、または、フォル

ダの属性 を変更する権限 。

v i i i . 拡張属性の書 き込み

プログラムによって定 義 されたファイル、または、フォルダの拡

張属性 を変更する権限 。

i x . サブフォルダとファイルの削除

サブフォルダ、または、ファイルに「削 除 」権 限 が付 与 されて

いない場合 にも、それらの削除 を許可する権限 。

x . 削除

ファイル、または、サブフォルダの削除 を許可する権限 。

x i . アクセス許 可 の読み取 り

ファイル、または、フォルダのアクセス許 可 の読 み取 りを許 可

する権限 。

Page 182: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐173‐

x i i . アクセス許 可 の変更

ファイル、または、フォルダのアクセス許 可 の変 更 を許 可する

権限 。

x i i i . 所有権の取得

ファイル、または、フォルダの所 有 権 の取 得 を許 可 する権

限 。

x i v . 同期

ファイル、または、フォルダのハンドルに複 数 のスレッドが動

作 し、他 のスレッドと同 期 することを許 可する権 限 。

ル コ

フ ォ ル ダの ス キ

ャ ン と ファ イ ル

の 実 行

○ ○ ○ ○

フ ォ ル ダの 一 覧 /

デ ー タ の読 み 取

○ ○ ○ ○ ○

属 性 の 読み 取 り ○ ○ ○ ○ ○

拡 張 属 性の 読 み

取 り

○ ○ ○ ○ ○

フ ァ イ ルの 作 成 /

デ ー タ の書 き 込

○ ○ ○

フ ォ ル ダの 作 成 /

デ ー タ の追 加

○ ○ ○

属 性 の 書き 込 み ○ ○ ○

Page 183: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐174‐

拡 張 属 性の 書 き

込 み

○ ○ ○

サ ブ フ ォル ダ と

フ ァ イ ルの 削 除

削 除 ○ ○

ア ク セ ス許 可 の

読 み 取 り

○ ○ ○ ○ ○ ○

ア ク セ ス許 可 の

変 更

所 有 権 の取 得 ○

同 期 ○ ○ ○ ○ ○ ○

表 6 - 4 3 N T F S のアクセス権 限 と論 理 グループ

6 . 6 . 2 . 2 認可 の対象

A . 対象の種類

認可の対象 の種類 については、下 表 の通 りである。

認可の対象 解説

ファイル 個々のファイル

ディレクトリ 個々のディレクトリ

表 6 - 4 4 I I S の認可 の対象 の種類

B . 対象の仮想化

ディレクトリ単 位 の仮想化

I I S では、仮 想ディレクトリを使 うことで実 現 できる。

Page 184: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐175‐

7 おわりに

本報告書は、「強 制 的 アクセス制 御 に基づく We b サーバーに関する

調査 ・設 計 」に関する調 査報告書である。

本調査報告書の第 1 部 「強 制 的 アクセス制 御 に関するセキュリティ・

ポリシー・モデルの We b サーバーへの適用性の調査編 」では、強 制的 ア

クセス制 御 を採用するセキュリティ・ポリシー・モデルを調査 し、その We b

サーバーへの適用性 を検証 した。この検 証 にあたり、始 めに We b サーバ

ーをモデル化すると共 に、We b サーバーの脆弱性 を検証 し、アクセス制

御 の要件定義 を行 った。この結 果 を元 に、既 存 のセキュリティ・ポリシー・

モデルの適用性 を検証 した。

続 く第 2 部の「既 存 We b サーバー・システムにおけるアクセス制 御 の

調査編 」では、強 制的 アクセス制 御 を実現する既存 We b サーバーにお

いて、どのようなアクセス制 御 が行 われているかを調 査 し、その問 題 点 を

検証 した。

本 調 査 報 告 書 では、強 制 的 アクセス制 御 という、アプリケーションの

任 意 性 に依存せずに、セキュリティ管 理 者 によって設 定 されたセキュリテ

ィ・ポリシーが強制的 に適用 されるアクセス制 御 を利用 した We b サーバ

ーについて調査 した。従 来型 の一般的 な A p a c h e や I I S などの We b

サーバーは、O S から見 た時 、1 アプリケーションとして動 作する。これらの

We b サーバーが提供するアクセス制 御は、アプリケーションが任 意 に行 う

ものである。O S のアクセス制 御は、We b サーバーが必要 とする権 限 の総

和 に基 づくものであり、アプリケーションのアクセス制 御 の妥 当 性 を保 障

する手段は無い。

本 調 査 報 告 書 により、We b サーバーの脆 弱 性 、およびアクセス制 御

に対 する要 件 定 義 がされた。この調 査 結 果 に基 づき、強 制 的 アクセス

制 御 に基づく We b サーバーの機能設計 を行 った。その詳細は、機 能設

Page 185: 強制的アクセス制御に基づくWebサーバーに関する … › security › fy16 › reports › mandatory...5.4 SELinux SPM.....94 5.4.1 ポリシー・モデルの概要.....94

‐176‐

計書 を参考 にされたい。