Buffer over-run vulnerabilities
From: AndyJ (andy_at_wild-flower.co.uk)
Date: 02/25/04
- Next message: Tom Junior: "Discuss Bill Gates Statement"
- Previous message: Noi: "Re: anyone good with text?"
- Next in thread: Robert Newson: "Re: Buffer over-run vulnerabilities"
- Reply: Robert Newson: "Re: Buffer over-run vulnerabilities"
- Reply: P Gentry: "Re: Buffer over-run vulnerabilities"
- Reply: Mattias Honrendgard: "Re: Buffer over-run vulnerabilities"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: 25 Feb 2004 02:38:46 -0800
Just a thought (from a complete newbie)...
Firstly, If I understand correctly, a Buffer Over-run *Vulnerability*
occurs when data is inserted into a buffer (patch of memory) without
first checking whether or not the amount of data will fit into the
allocated space. Any data beyond the length of the buffer "spills
over" into the memory following the buffer, overwriting its contents.
Secondly, IIUC, a Buffer Over-run *Exploit* exists when there is a
section of program code stored in memory at some point after the
buffer, and the overflowing data contains executable program code that
will spill over into the area containing the program code.
Subsequently, the attacked program is then 'persuaded' to run the
injected code (by causing it to follow a given path of logic that
eventually leads to the processor executing the code). This code can,
of course, perform actions other than those which the program was
originally intended to perform.
Am I right on those two? Close enough, maybe? (I am not a C/C++
programmer, but I do program).
So, a question: Under Linux, is the arrangement of a program's data
segments in memory determined at *compile* time or *load* time?
Either way, is there a way to *randomise* (or otherwise perturb) the
locations at which the code is actually loaded into memory, so that
you could never be sure of the sequence? This would, of course, break
any programs which do pointer-arithmetic that rely on where things are
'supposed' to go, but would this be very often? Is this practise not,
in fact 'bad style' anyway?
My point is, can Buffer Over-run Exploits be 'cut off at the pass', so
to speak, or is this just fantasy?
-andyj
- Next message: Tom Junior: "Discuss Bill Gates Statement"
- Previous message: Noi: "Re: anyone good with text?"
- Next in thread: Robert Newson: "Re: Buffer over-run vulnerabilities"
- Reply: Robert Newson: "Re: Buffer over-run vulnerabilities"
- Reply: P Gentry: "Re: Buffer over-run vulnerabilities"
- Reply: Mattias Honrendgard: "Re: Buffer over-run vulnerabilities"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|