FreeBSD Daily Topics
2011年8月30日 Capsicumを知る - DACとMAC,双方の特徴を持つ
9月末または10月のリリースが予定されているFreeBSD 9.
保護ドメインやアクセス制御リストなどの保護機構に慣れていると,
- Capsicum is DAC and MAC Hybrid model
FreeBSDのデフォルトのセキュリティポリシーは任意アクセス制御
(DAC - Discretionary Access Control) です。FreeBSDに限らず, ほとんどのOSは任意アクセス制御をデフォルトに採用しています。これはユーザ自身が保護機構におけるアクセス設定を変更できる, というものです。chmod(1)やsetfacl(1)でパーミッションやアクセス制御リストを設定できるというのは, このDACに該当します。 一方,
FreeBSDはDACとは反対のポリシーとなる強制アクセス制御 (MAC - Mandatory Access Control) にも対応しています。強制アクセス制御においては, ユーザが保護に関する設定を変更することができなくなります。より高いセキュリティが求められる場合に活用される機能です。PCで作業したりサーバを運用する場合, MACは規制がきつすぎてあまり扱いやすいセキュリティポリシーとはいえないところがあります。高い機密が求められる場合などに使われる機能です。 「Capsicum」 はDACとMACの双方の特徴を備えている, という面で興味深いところがあります。敢えて言ってしまうと, DACに相当するのがcap_ new(), MACに相当するのがcap_ enter()実行後, ということになります。 「Capsicum」 ではcap_ new()を使ってディスクリプタに対して操作の許可を設定することができます(注意: 設定するのではなく, 実際にはその許可を持った新しい特別なファイルディスクリプタ(ケーパビリティ)を生成しているので, DACと考えるのは若干違うといえば, 違うともいえます)。自由に設定できることからDACに近いポリシーにあるといえます。一方, cap_ enter()を実行したあとには, さまざまなリソースへのアクセスは制限されます。MACのようにかなり厳しい状況になるというわけです。起動時はDACな状況にあるものの, 必要なディスクリプタを取得し設定をしたあとは, cap_ enter()を実行してMACのように変更がほとんど許可されない状況に入る。DACの扱いやすさとMACのセキュリティの高さの双方を兼ね備えたような動きをするわけです。
バックナンバー
FreeBSD Daily Topics
- 2010年8月31日 Capsicumを知る - 実装がとてもシンプル,普及が容易
- 2011年8月30日 Capsicumを知る - DACとMAC,双方の特徴を持つ
- 2011年8月29日 Capsicumを知る - アプリ自ら積極的にジェイルに入る
- 2011年8月27日 Capsicumを知る - ファイルディスクリプタをケーパビリティへ
- 2011年8月26日 Capsicumを知る - 「ケーパビリティ」という保護機構を知ろう
- 2011年8月17日 FreeBSD 9.0-BETA1 IPv6オンリーカーネル登場
- 2011年8月16日 TrueNAS Proストレージ登場 - FreeNAS 8ベースのエンプラ向けストレージアプライアンス
- 2011年8月15日 2011年8月分のBSD Magazine登場 - FreeNASとメモリファイルシステム
- 2011年8月12日 次はFreeBSD 9.0-BETA2 - 9.0正式登場は9月めざす
- 2011年8月11日 FreeBSD,動的電波周波数選択(DFS)サポート状況報告