[PATCH 4/6] UML - Don't allow processes to call into stub

From: Jeff Dike
Date: Wed Dec 12 2007 - 15:48:59 EST


Kill a process that tries to branch into a stub and execute a system
call. There are no security implications here - a system call in a
stub is treated the same as a system call anywhere else. But if a
process is trying to branch into a stub, either it is trying something
nasty or it has gone haywire, so it's a good idea to get rid of it in
either case.

Signed-off-by: Jeff Dike <jdike@xxxxxxxxxxxxxxx>
---
arch/um/os-Linux/skas/process.c | 3 +++
1 file changed, 3 insertions(+)

Index: linux-2.6.22/arch/um/os-Linux/skas/process.c
===================================================================
--- linux-2.6.22.orig/arch/um/os-Linux/skas/process.c 2007-12-05 12:51:53.000000000 -0500
+++ linux-2.6.22/arch/um/os-Linux/skas/process.c 2007-12-05 16:34:55.000000000 -0500
@@ -146,6 +146,9 @@ static void handle_trap(int pid, struct
{
int err, status;

+ if ((UPT_IP(regs) >= STUB_START) && (UPT_IP(regs) < STUB_END))
+ fatal_sigsegv();
+
/* Mark this as a syscall */
UPT_SYSCALL_NR(regs) = PT_SYSCALL_NR(regs->gp);

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/