Research Menu

.
Skip Search Box

SELinux Mailing List

A notion

From: Justin R. Smith <jsmith_at_mcs.drexel.edu>
Date: 02 Oct 2001 04:42:53 -0400


It occurred to me that custom versions of software can be more secure than standard versions because various exploits (like stack smashing, etc.) require precise knowledge of certain sizes and distances in RAM (for instance, the distance from the end of a buffer to the return point...).

Isn't it possible to develop a "randomizing C compiler" that randomly varies these distances every time it compiles a program? No two compiles of the same source code would be exactly the same (but they would execute the same way).

This might involve inserting small random-sized blocks of dead code, or doing returns from subroutines through a level of indirection (i.e., putting the actual return at some random location in the object code with a branch to it).

Done right, this might not degrade performance significantly.

-- 


--
You have received this message because you are subscribed to the selinux list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
Received on Mon 1 Oct 2001 - 17:05:52 EDT
 

Date Posted: Jan 15, 2009 | Last Modified: Jan 15, 2009 | Last Reviewed: Jan 15, 2009

 
bottom

National Security Agency / Central Security Service