提交 635efc70 编写于 作者: K Kees Cook

tile/ptrace: run seccomp after ptrace

Close the hole where ptrace can change a syscall out from under seccomp.
Signed-off-by: NKees Cook <keescook@chromium.org>
Cc: Chris Metcalf <cmetcalf@mellanox.com>
上级 1addc57e
...@@ -255,14 +255,15 @@ int do_syscall_trace_enter(struct pt_regs *regs) ...@@ -255,14 +255,15 @@ int do_syscall_trace_enter(struct pt_regs *regs)
{ {
u32 work = ACCESS_ONCE(current_thread_info()->flags); u32 work = ACCESS_ONCE(current_thread_info()->flags);
if (secure_computing(NULL) == -1) if ((work & _TIF_SYSCALL_TRACE) &&
tracehook_report_syscall_entry(regs)) {
regs->regs[TREG_SYSCALL_NR] = -1;
return -1; return -1;
if (work & _TIF_SYSCALL_TRACE) {
if (tracehook_report_syscall_entry(regs))
regs->regs[TREG_SYSCALL_NR] = -1;
} }
if (secure_computing(NULL) == -1)
return -1;
if (work & _TIF_SYSCALL_TRACEPOINT) if (work & _TIF_SYSCALL_TRACEPOINT)
trace_sys_enter(regs, regs->regs[TREG_SYSCALL_NR]); trace_sys_enter(regs, regs->regs[TREG_SYSCALL_NR]);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册