■ はじめに
ケーパビリティ(POSIX Capability)について扱う
目次
【1】ケーパビリティ(POSIX Capability) 【2】主なケーパビリティ 【3】ケーパビリティセット 【4】ケーパビリティの設定
【1】ケーパビリティ(POSIX Capability)
POSIX(Portable Operating System Interface for UNIX)
* プロセスにroot特権を与えてしまうと、 動作しているプロセスに脆弱性があった場合、 コンピュータのすべてを自由にできる特権を 奪われてしまう可能性がある => 特権をさらに細分化した『ケーパビリティ』と 呼ばれる単位で取り扱えるようにし、 プロセスに最小限のケーパビリティを与え、 必要な処理を行わせようにする
【2】主なケーパビリティ
CAP_NET_BIND_SERVICE
* 1024 番以下のポート番号へのバインディングを許可する
【3】ケーパビリティセット
effective (実効)
* カーネルがスレッドの権限 (permission) をチェックするときに 使用するケーパビリティセット
permitted (許可)
* そのプロセスが持つことを許されているケイパビリティ
inheritable (継承可能)
* 実行時に継承されるケーパビリティセット
【4】ケーパビリティの設定
# setcapコマンドを使用する sudo setcap 'CAP_NET_BIND_SERVICE=+ep' /path/to/serive
参考文献
http://www.atmarkit.co.jp/fsecurity/rensai/lids03/lids01.html
関連記事
パーミッション / アクセス権限
https://dk521123.hatenablog.com/entry/2022/07/01/000000