Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src



In article <alpine.DEB.0.999.0802190340010.13154%m2s05.vlinux.de@localhost>,
Hubert Feyrer  <hubert%feyrer.de@localhost> wrote:
>
>On Mon, 31 Dec 2007, Andrew Doran wrote:
>> Log Message:
>> Remove systrace. Ok core@.
>
>Was there a rationale behind this decision published somewhere?
>If so, where?

I am not sure where it has been mentioned but:

The current implementation has security issues resulting from using
the stackgap to pass modified arguments to syscalls. This is is
easier to understand with with multi-threaded programs: since
systrace is using the stackgap to pass modified arguments to
syscalls, a second thread can overwrite those arguments after
systrace placed them but before the first thread executed the
syscall. Fixing this would require a completely different mechanism
to pass arguments to syscalls, perhaps having a wrapper for each
syscall to accommodate systrace (and receive arguments in kernel
space) and avoid TOCTOU races.

christos



Home | Main Index | Thread Index | Old Index