[28810] in bugtraq

home help back first fref pref prev next nref lref last post

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

home help back first fref pref prev next nref lref last post