セキュリティモデル(Bell-LaPadulaとBiba)
セキュリティモデル
CISSPの試験に出てくる、Bell-LaPadulaなど、意味が分からない。テストとして割り切って暗記すれば良いのかもしれないが、少しまとめてみる。
そもそも、セキュリティモデルの必要性はどこにあるのか?
例えば、ユーザーがファイルにアクセスする際、そのファイルのへのアクセスの可否を判断する必要がある。
それぞれに名前がついていて、
・Subject(ユーザー)
・Object(ファイル)
・Reference Monitor(可否を判断する)
ということになる。
可否を判断するための指針がセキュリティモデルになる。
そのモデルがいろいろあって、その一つがBell-LaPadulaモデルになる。
以下のIPAの資料は2005年に作成されたもの。
https://www.ipa.go.jp/security/fy16/reports/access_control/documents/PolicyModelSurvey.pdf
詳しいというか、詳しすぎて逆に混乱します。ただ、セキュリティモデルが数式で示すことができて、それにより安全性を証明している、ということは理解できた。
この資料では、
- Confidential(秘匿性)
- Integtrity(完全性)
- 中立型
という観点でポリシーを分類している。
上記資料から引用:
それ以外に情報の区分けに応じた分類として、
- 多層的(上下:トップシークレット・シークレット・機密)
- 多元的(左右:営業・総務・管理)
という観点がある。
この観点での分類は、以下の通り。
多層的
- Bell-LaPadula
- Biba
- LOMAC
多元的
- Clark-Wilson
- Chinese Wall(Brewer-Nash)
- DTE
これらのセキュリティポリシーの割り当て方法についても分類がある。
DACとRBACはWindowsやLinuxで使用されている。
Lattice-Based Access controlはMACの一種。
DACはユーザーが、RBACは管理者がアクセス権を決める。
と、周辺知識だけで頭の中が?で一杯になる。
Bell-LaPadulaモデルについて
1973年に発明されたモデル。秘匿性、多層的、DACに該当。
参照アクセスと更新アクセスを明確に区別し、とくに更新アクセスに関する*-特性を導入したことが技術的特徴となっている。
またモデルの性質を数学的帰納法によって証明可能とした点が大きい。
引用:https://www.ipa.go.jp/security/fy16/reports/access_control/documents/PolicyModelSurvey.pdf
Confidentialityを守るためのモデル。
たとえば、
- Top Secret
- Secret
- Confidential
という情報のレベルがあって、Secretにアクセルできる権限がある場合を想定する。
1.Top Secretは読み取りできないけど、2.,3.は読める(シンプルセキュリティ属性)。
スター属性(*属性)という状態になると、1.は読めないけど書き込みが許可される。同様に2.にも書き込みが可能だが、3.には書き込めない。
強化スター属性では、2.に対してのみ、読み取りと書き込みが可能。
という状態を持たせることで情報へのアクセスを制御して、下位の情報への書き込みを許可せず、情報の漏洩を防ぐようにした。
という結論にたどり着くのに随分と時間がかかった。
Bibaモデルについて
1977年のモデルで、Bell-LaPadulaと対に語られることが多い。
こちらは、Integtrityを維持するためのもの。
たとえば、
- 高い正確性
- 中程度の正確性
- 低い正確性
の情報があったとする。
2.中程度の正確性にアクセスできる人は、1.にアクセスできるが、3.にはアクセスできない(シンプルインテグリティ属性)。低い正確性の情報で汚染されることを防止することで完全性を維持する。
逆に、書き込みについて1.には書き込めないようにして、高い正確性を汚染することを防ぐ(スター属性)。
まとめ
WindowsやLinuxで使用されているDACとRBACに慣れているので、そちらの方が柔軟だし、MACであるBell-LaPadulaは過去の遺物、と思ってしまう。これがCISSPで問われるの意味が分からない。ただ、最近言われている、ゼロトラストはMACに該当する。システムの利用形態によって、新しいセキュリティモデルが生まれる可能性もゼロではないのかもしれない。そういう意味では、Bell-LaPadulaを学ぶことは、温故知新なのでしょうか。