I am trying to create a custom ELF and Windows PE loader for the purpose
of security research. I am having a difficult time finding how to
allocate memory for a binary at the desired address in memory
(especially if its non-relocatable). I would like to see why I cannot
get memory allocated at the exact address request in the binary headers.
Is there a program or system call that allows me to see a list of memory
address ranges allocated to the running processes on a system?
Stephen
Selon Stephen Torri <[email protected]>:
> I am trying to create a custom ELF and Windows PE loader for the purpose
> of security research. I am having a difficult time finding how to
> allocate memory for a binary at the desired address in memory
> (especially if its non-relocatable).
Use mmap system call.
Anyway, the address is only going to be a hint.
> I would like to see why I cannot
> get memory allocated at the exact address request in the binary headers.
address should be page aligned.
> Is there a program or system call that allows me to see a list of memory
> address ranges allocated to the running processes on a system?
>
pmap pid_of_your_program will give you the memory map.
> Stephen
>
Remi
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
On Wed, 2006-12-06 at 17:56 -0600, Stephen Torri wrote:
> I am trying to create a custom ELF and Windows PE loader for the purpose
> of security research. I am having a difficult time finding how to
> allocate memory for a binary at the desired address in memory
> (especially if its non-relocatable). I would like to see why I cannot
> get memory allocated at the exact address request in the binary headers.
> Is there a program or system call that allows me to see a list of memory
> address ranges allocated to the running processes on a system?
Hi,
check the /proc/<pid>/maps and /proc/<pid>/smaps files... they have
exactly what you need
Greetings,
Arjan van de Ven