Need help with memdlopen?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

m1m1x
141 Stars 34 Forks GNU General Public License v3.0 2 Commits 2 Opened issues

Description

dlopen from memory

Services available

!
?

Need anything else?

Contributors list

# 161,784
C
Python
Shell
antivir...
2 commits

memdlopen

Description

memdlopen is a proof of concept that demonstrate the possibility to fully load a dynamic library from memory on 64 bits linux systems. To achieve this goal, runtime code patching within the process is performed in order to hook the following functions in the ld memory space : * open * lseek * read * mmap * fstat * close

This code implements methods described in Nologin's paper (www.nologin.org/Downloads/Papers/remote-library-injection.pdf).

Compilation

$ mkdir build

$ cmake /path/to/memdlopen

$ make

Examples

load library from a file

$ ./memdlopen -f libexample.so

load library from network

$ ./memdlopen -l 8888

$ nc -w 1 127.0.0.1 8888 < libexample.so

Limitations

  • only tested on debian 8.0 (ld-2.19.so)
  • for now, this code will only work on x86_64 systems

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.