Greg Lopp on Wed, 17 Jul 2002 00:20:25 -0400


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] new kernel bombs


On Tue, Jul 16, 2002 at 02:36:53PM -0500, Sean Finney wrote:
> On Tue, Jul 16, 2002 at 06:42:31AM -0400, W. Chris Shank wrote:
> > can you tell me how to do this?
> 
> i'm not exactly the expert on this, perhaps someone can correct me if i'm
> wrong...
I'm not an expect on the linux specifics, but I've spent many an
hour tracing register specifics through the in-house developed
OSs and bootstraps at a couple of companies I've been with.
> 
> System.map is a list of the addresses of all the kernel symbols.  when you
> get a stack-trace, the eip points to the specific hex address in memory where
> you were when the crash happened.  again, my memory is a little fuzzy, but i
> believe eip is 'effective instruction pointer', the register that contains the
> machine code instruction currently being executed.  
Close.  You got the contents correct, but the word is more likly
extended than effective (not that this 486 SW developer's manual
pdf uses either term).  As in "extended to 32 bits from 16 in the
previous generations of the architecture family".  Notice how
each of the three-letter registers start with 'e'? 
> you could use that
> eip to find the closest address less than the eip to figure out what
> function you were in. 
Exactly.  Simlarly,  he could use the other values in the call
trace to follow the execution path back through other functions
until he finds something related to his patches.  



Attachment: pgpH5Lq4BAId7.pgp
Description: PGP signature