[28810] in bugtraq
Re: Preventing exploitation with rebasing
daemon@ATHENA.MIT.EDU (Seth Breidbart)
Thu Feb 6 14:02:50 2003
Date: Wed, 5 Feb 2003 19:07:15 -0500 (EST)
Message-Id: <200302060007.h1607Fs04177@panix5.panix.com>
From: Seth Breidbart <sethb@panix.com>
To: bugtraq@securityfocus.com
In-reply-to: <m3y94u4dq2.fsf@jetcar.qnz.org> (message from Todd Sabin on 05
Feb 2003 16:30:45 -0500)
In theory, it's easy to prove that some programs cannot be relocated,
period. Anybody who has been programming long enough has seen people
re-use a memory location as both an address and a constant in order to
keep the program small enough (12k OK; 12k + 2 bytes really bad
news). That can't be relocated.
Even under the assumption that locations aren't re-used, it's provably
impossible (Turing-complete) to determine whether the contents of a
location can be used as an address by a program.
That said, _if_ a program is relocatable, relocating it would seem to
be an easy way to gain some security. Whether that's worth the cost
(in fragility and undebuggability) is another question.
Seth