aboutsummaryrefslogtreecommitdiffstats
path: root/sys/targets
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2023-12-18 11:58:39 +0100
committerAleksandr Nogikh <nogikh@google.com>2023-12-19 00:16:19 +0000
commit3ad490ea48468e50fe91f6f6b2ca4cbc74d924bf (patch)
treed6960156ac4fcbeb908fbbbba79c8716d8e47172 /sys/targets
parent924661f4beda6a647079237cc843df44626fc44b (diff)
executor: introduce syz_pidfd_open()
This kernel interface provides access to fds of other processes, which is readily abused by the fuzzer to mangle parent syz-executor fds. Pid=1 is the parent syz-executor process when PID namespace is created. Sanitize it in the new syz_pidfd_open() pseudo-syscall. We could not patch the argument in sys/linux/init.go because the first argument is a resource.
Diffstat (limited to 'sys/targets')
-rw-r--r--sys/targets/targets.go1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/targets/targets.go b/sys/targets/targets.go
index b81b0ce70..4c840119a 100644
--- a/sys/targets/targets.go
+++ b/sys/targets/targets.go
@@ -490,6 +490,7 @@ var oses = map[string]osCommon{
"syz_io_uring_setup": {"io_uring_setup"},
"syz_clone3": {"clone3", "exit"},
"syz_clone": {"clone", "exit"},
+ "syz_pidfd_open": {"pidfd_open"},
},
cflags: []string{"-static-pie"},
},