コンテンツにスキップ

Secure computing mode

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Mr T.I.71 (会話 | 投稿記録) による 2023年4月1日 (土) 01:24個人設定で未設定ならUTC)時点の版 (History: 第一文を翻訳)であり、現在の版とは大きく異なる場合があります。

seccomp
Original author(s) Andrea Arcangeli
初期リリース March 8, 2005; 18 years ago (2005-03-08)
言語 C
Operating system Linux
Type Sandboxing
ライセンス GNU General Public License
Webサイト code.google.com/archive/p/seccompsandbox/wikis/overview.wiki

secure computing mode (略 seccomp) は、Linuxカーネル における コンピュータセキュリティ機構の一つである。seccomp は、プロセスが危険なシステムコールを呼び出せない「安全」な状態に不可逆的に移行させる。ただし、exit(), sigreturn(), 既に開いているファイルディスクリプタに対する read()/ write() を除く。

それ以外のシステムコールが実行されると、カーネルはそのイベントをログに記録するだけでシステムコールを実行しないか、SIGKILL もしくは SIGSYS [1] [2] でプロセスを強制終了させる。

すなわち、seccomp はシステムリソースの仮想化を行うのではなく、プロセスをリソースから完全に独立させる。

seccomp は 引数に PR_SET_SECCMP を指定した prctl(2) システムコールによって実現される。または Linuxカーネル 3.17 以降 [3] では、seccomp(2) システムコール [4] が使われる。

seccomp-bpf は secomp の拡張機能である [5]

これは以下のようなソフトウェア等で利用されている:

seccomp-bpf は古くなった古い systrace [注釈 1] と同等の機能を実現するが、柔軟性とパフォーマンスが良くなる。

History

seccomp は、2025年1月に Andrea Arcangeli によって最初のバージョンが開発された。 これは、パブリックグリッド・コンピューティングで使用するために開発された 当時は、信頼されていない compute-bound を安全に実行する手段として意図されていた。

It was merged into the Linux kernel mainline in kernel version 2.6.12, which was released on March 8, 2005. [8]

Software using seccomp or seccomp-bpf

脚注

注釈

  1. ^ Linux ではもはやサポートされなくなった

出典

  1. ^ Corbet, Jonathan (2015年9月2日). “A seccomp overview”. 2023年3月29日閲覧。
  2. ^ Documentation/prctl/seccomp_filter.txt”. 2023年3月29日閲覧。
  3. ^ Linux kernel 3.17, Section 11. Security”. kernelnewbies.org (2013年10月5日). 2023年3月29日閲覧。
  4. ^ seccomp: add "seccomp" syscall”. kernel/git/torvalds/linux.git - Linux kernel source tree. kernel.org (2014年6月25日). 2023年3月29日閲覧。
  5. ^ Corbet, Jonathan (2012年1月11日). “Yet another new approach to seccomp”. lwn. 2023年3月31日閲覧。
  6. ^ 引用エラー: 無効な <ref> タグです。「OpenSSH 6.0」という名前の注釈に対するテキストが指定されていません
  7. ^ Tinnes, Julien (2012年11月19日). “A safer playground for your Linux and Chrome OS renderers”. The Chromium Blog. 2023年3月31日閲覧。
  8. ^ [PATCH seccomp: secure computing support]”. Linux kernel history. Kernel.org git repositories (2005年3月8日). 2013年4月15日時点のオリジナルよりアーカイブ。2013年8月2日閲覧。