- Using Makefile
$ git clone https://github.com/acm-iem/LD_PRELOAD-Rootkit
$ cd LD_PRELOAD-Rootkit
$ make- Using GCC
$ gcc smoochum.c -fPIC -shared -D_GNU_SOURCE -o libc.man.so.6 -ldlLet's break down the command :
gcc: Our very own GNU Compiler Collectionsmoochum.c: The name of our program (Get the pokemon refernce ?)-fPIC: Generate position-independent codeshared: Create a Shared Object which can be linked with other objects to produce an executable-D_GNU_SOURCE: It is specified to satisfy#ifdefconditions that allow us to use theRTLD_NEXTenum. Optionally this flag can be replaced by adding#define _GNU_SOURCE-o: Create an output filelibc.man.so.6: Name of output file-ldl: Link againstlibdl
- ssize_t write(int fd, const void *buf, size_t count) : To Provide Reverse or Bind Shell as per trigger
- FILE *fopen(const char *pathname, const char *mode); To Hide
netstatandlsofconnections - struct dirent *readdir(DIR *dirp); : To Hide our
sofile fromls
Note : The variants of these functions are provided incase the file sizes are large
- Add SSL Encryption
- Test and Debug IPv6 compatibilty
- Hide our Shared Object from
ldd - MORE !