-
-
linux hook
-
发表于:
2014-1-29 22:02
6582
-
最近在做linux下so文件的hook,总体思路比较清晰,用一段shellcode注入被攻击进程,这段shellcode代码就会驱动so文件的注入,主要是利用dlopen函数来动态加载so文件,从而完成so文件的注入,现在关键是如果找不到dlopen怎么办呢,根据我的实践,我的linux系统版本是ubuntu10.04,内核版本是2.6.32,在我的动态连接器中并不存在dlopen这个函数,而dlopen这个函数存在于libdl.so的共享库中,可是假如一个被攻击的程序运行时并没有加载libdl.so这个共享库,那么我就无法找到dlopen函数了,想请问大家有什么另外的办法???
我的被攻击程序是简单的HelloWorld程序,运行时内存中只存在三个ELF文件的映射:一个是HelloWorld的可执行文件的内存映射,一个是动态链接器ld.so的内存映射,另一个是libc.so的映射,libc.so文件在静态的的时候存在对dlopen的引用,不过加载到内存中的时候,在符号表里面并不存在dlopen这个符号,所以,现在没想到啥好办法能够解决,希望大家能够给点提示,谢谢
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)