<<
32/34
>>
First
Last
興味無いシステムコールで止まらないで欲しい
そこでseccomp-bpf
- システムコールが呼ばれる時に、kernel内でberkeley packet filterを走らせて、その時のレジスタの状態などに応じてプログラムの挙動を変えられる
- 本来はサンドボックスのためのもの
- 許可できないシステムコールはEPERMを返したり(SECCOMP_RET_ERRNO)、SIGSYSで殺したり(SECCOMP_RET_KILL)と挙動を変えられる
挙動の変え方として、SECCOMP_RET_TRACEというのがある。これを使うとptraceを止めることができる
- 親プロセスはPTRACE_SYSCALLのかわりにPTRACE_CONTする
- 子プロセスは、興味ないシステムコールは素通しする
- 子プロセスは、興味あるシステムコールが実行された時はSECCOMP_RET_TRACE