FIFO以外のプロセスがファイルIOを実行できないように無効にする

FIFO以外のプロセスがファイルIOを実行できないように無効にする

完了できないプロセスを開始する方法どの事前に生成されたFIFOを読み書きする以外のファイルIO(ファイルを開く/閉じる、ファイルを作成/削除、ファイルを読み書きするなど)?

chrootプロセスが中断される可能性があるため動作しませんが、カーネルなどを操作/修正するのは大丈夫です)

ところで:実行中のプログラムを変更できません。

ベストアンサー1

もし

  1. 信頼できないコードの前に必要なシステムコールを実行するようにプログラムを変更できます(これは次の方法で実行できます)。LD_予圧)、そして
  2. exit()sigreturn()プログラムは、以外のシステム呼び出しを行う必要はありません。read()write()

それからあなたは利用可能ですセキュリティコンピューティング(ウィキペディア記事)。より多くのシステムコールを可能にするためにseccomp-bpfがあります。Berkeleyパケットフィルタ許可されるシステムコールを決定します。これlibseccompライブラリはseccomp-bpfを簡素化するので(たとえば)システムコールを許可したい場合close()

seccomp_rule_add(ctx, SCMP_ACT_ALLOW, SCMP_SYS(close), 0);

または、似ているが壊れない場合はchroot試してみてください。LinuxコンテナオープンVZまたはLinux仮想サーバー

おすすめ記事