Hi,
If I don't have the source code, how can I discover the memory
address where the shellcode lives, to use with the '/i
memory_address' command?
Regards,
-Rafael
> ---------- Mensagem original -----------
>
> De : "Eloy A. Paris" <peloy_at_chapus.net>
> Para : Sean Zadig <seanzadig_at_hotmail.com>
> Cc : vuln-dev_at_securityfocus.com
> Data : Tue, 8 Oct 2002 16:19:25 -0400
> Assunto : Re: shellcode -> asm?
>
> Don't know if this is what you are looking for, but let's try an
> example:
>
> Get http://www.immunitysec.com/GOBBLES/exploits/apache-scalp.c. The
> shell code is in a the char array "shellcode". To see the code:
>
> peloy_at_canaima:~$ gcc -g -o apache-scalp apache-scalp.c
> peloy_at_canaima:~$ gdb ./apache-scalp
> GNU gdb 2002-08-18-cvs
> [...]
> (gdb) x /10i shellcode
> 0x804ac20 <shellcode>: mov %esp,%edx
> 0x804ac22 <shellcode+2>: sub $0x10,%esp
> 0x804ac25 <shellcode+5>: push $0x10
> 0x804ac27 <shellcode+7>: push %esp
> 0x804ac28 <shellcode+8>: push %edx
> 0x804ac29 <shellcode+9>: push $0x0
> 0x804ac2b <shellcode+11>: push $0x0
> 0x804ac2d <shellcode+13>: mov $0x1f,%eax
> 0x804ac32 <shellcode+18>: int $0x80
> 0x804ac34 <shellcode+20>: cmpb $0x2,0x1(%edx)
> (gdb)
>
> The 'x' gdb command is your friend. It allows you to see anything th
e
> way you want (instructions, bytes, words, strings, etc.) If you don'
t
> have the source code you still use the 'x' command and give it '/i
> memory_address' where memory_address is the place where the shell co
de
> lives.
>
> Cheers,
>
> Eloy.-
>
> On Tue, Oct 08, 2002 at 12:12:21PM -0700, Sean Zadig wrote:
> > Hi,
> > I'm doing some research into creating variants of common attacks,
but I ran
> > into a problem of sorts. For most of the attacks I have, the shell
code
> > consists of the overflow and the actual malicious code that is run
. I want
> > to be able to isolate the overflow from the rest of the shellcode
and use
> > that to create attack variants. Problem is, I don't know where one
ends and
> > the other begins! I figure if I turn the hex-
encoded shellcode back into
> > assembly code, I could probably figure it out. I'm familiar with h
ow to do
> > the reverse in gdb, but is it possible to do what I want? To resta
te:
> > shellcode -
> asm is what I need. If this is a simple thing, my apologies -
> > but the security-basics list rejected my post =)
> > -Sean Zadig
> >
> > -----
> > Sean Zadig
> > Student, UC Davis
> > PGP Key ID: 0xDE44A79F
> > 7EE1 C80A A0C1 B224 45CE F74B 5835 0115 DE44 A79F
> >
> >
> > _________________________________________________________________
> > Chat with friends online, try MSN Messenger: http://messenger.msn.
com
>
>
Received on Oct 24 2002