Messages in this thread |  | | | Subject | Re: [PATCH] x86: prevent binaries from making system calls using the wrong syscall interface | | From | Andi Kleen <> | | Date | Fri, 08 Aug 2008 13:16:32 +0200 |
| |
md@google.com (Michael Davidson) writes:
> Prevent binaries from making system calls using other than one > of the "normal" system call interfaces for that binary type. > > Currently there is nothing to prevent 64 bit binaries from > attempting to make system calls using the 32 bit system call > interfaces and vice versa.
nack. That was allowed intentionally because there are some use cases for 32bit syscalls from 64bit (e.g. 64bit JIT running 32bit executable). I believe it is used in production in a few cases.
> > Since the 32 bit and 64 bit system call numbers are different > this means that a binary could attempt to obfuscate which system > calls it was actually making by using the "wrong" system call > interface. In particular, the call to audit_syscall_entry() > relies on checking the TIF_IA32 flag to determine whether it is > dealing with a 32 or 64 bit system call without regard to the > actual type of system call that was made.While this specific issue > could be addressed by checking the TS_COMPAT flag in threadinfo_status > it seems preferable to simply disallow this situation altogether.
audit is wrong to assume this and should be just fixed
-Andi
|  |