From 0f01403dc7473fbc755ecd7178284237477c64d8 Mon Sep 17 00:00:00 2001 From: Andrei Vagin Date: Wed, 29 Sep 2021 22:52:42 -0700 Subject: executor: fail if the first argument isn't a known command We have seen cases when a test program re-execed the current binary: 11:53:29 executing program 0: openat$zero(0xffffffffffffff9c, &(0x7f0000000040), 0x0, 0x0) r0 = openat(0xffffffffffffff9c, &(0x7f0000000080)='/proc/self/exe\x00', 0x0, 0x0) lseek(r0, 0x4000000000000000, 0x4) execveat(r0, &(0x7f0000000080)='\x00', 0x0, 0x0, 0x1000) In such cases, we have to be sure that executor will not print SYZFAIL log messages and will not exit with kFailStatus. Since a659b3f1, syzkaller reports bugs in all these cases. Fixes: a659b3f1dc88 ("pkg/report: detect executor failures") Signed-off-by: Andrei Vagin --- pkg/ipc/ipc.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'pkg') diff --git a/pkg/ipc/ipc.go b/pkg/ipc/ipc.go index 1d6ba4f40..f6bf3f61f 100644 --- a/pkg/ipc/ipc.go +++ b/pkg/ipc/ipc.go @@ -188,7 +188,7 @@ func MakeEnv(config *Config, pid int) (*Env, error) { out: outmem, inFile: inf, outFile: outf, - bin: strings.Split(config.Executor, " "), + bin: append(strings.Split(config.Executor, " "), "exec"), pid: pid, config: config, } -- cgit mrf-deployment