More Related Content
Similar to iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた (20)
More from Yoshio Hanawa (20)
iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた
- 8. App Sandbox 概要
● iOS/macOS上のsandbox環境
○ storeアプリは全てsandbox配下
● システムコールをフック
○ DSLでフィルタを記述
● 構成
○ カーネル拡張
○ デーモン
○ ライブラリ
8
(iOS Hacker’s Handbook より引用)
- 11. カスタムプロファイル
● SBPL (Sandbox Profile Language)で記述
○ 許可・拒否のルールを記述するDSL
○ 内部的にはカスタムのScheme処理系で処理
● 手元のmacOSにもある
○ /usr/share/sandbox/*.sb
○ /System/Library/Sandbox/Profiles/*.sb
11
- 16. BPF (Barkley Packet Filter)
● パケットフィルタに特化したVM(?)
○ レジスタマシン(レジスタ数2)
○ フィルタとしてVM命令列を与える
○ JITコンパイルされるので高速、らしい
→高速かつ記述力が高いのでseccompでも採用
16