Messages in this thread | | | Date | Tue, 8 Feb 2011 11:44:40 +1100 (EST) | From | James Morris <> | Subject | Re: [SECURITY] /proc/$pid/ leaks contents across setuid exec |
| |
On Mon, 7 Feb 2011, Kees Cook wrote:
> $ ./procleak.py auxv,syscall /usr/bin/passwd > running > AT_BASE: 0x7f2828bde000 > AT_RANDOM: 0x7fff80bde7c9 > Changing password for kees. > (current) UNIX password: 0 0x0 0x7fff80bdda90 0x1ff 0x7fff80bdd580 0x7f2828dc57c0 0x7f28287cec1d 0x7fff80bdd088 0x7f28282fe6c0 > > There needs to be some way to break the connection to these files across > the setuid exec, or perform some sort of revalidation of permissions. (Maybe > check dumpable?)
The way to do this is to set O_CLOEXEC.
See:
http://udrepper.livejournal.com/20407.html https://www.securecoding.cert.org/confluence/display/seccode/FIO42-C.+Ensure+files+are+properly+closed+when+they+are+no+longer+needed
Changing the behavior in the core kernel will break userspace.
- James -- James Morris <jmorris@namei.org>
| |