我想知道,为了infosec演示的目的,以及诸如此类的目的,是否可以在C编程中手动创建一个代码洞?
维基百科声明:
代码洞是进程内存中的一系列空字节
我试过这个:
char *cave = malloc(10000);
register int i;
for(i=0;i<999;i++){
cave[i]='\0';
}
EDB显示它都是空字节,但是cave_miner(GutHUB的最新版本)在我尝试10000甚至100字节的长度时似乎找不到这个洞。我的海合会不知怎么把它去掉了吗?编译时,我没有从GCC获得任何输出。我使用的是GCC版本8.2.0(Debian)。
提前谢谢你的帮助。
同样,我只想演示一个不使用任何其他二进制文件的代码洞注入攻击,即使它是开源的。
~kp
最佳答案
Cave-miner-->在二进制文件(即elf文件、obj文件等)中搜索代码Cave
您提供的代码将在RAM中分配10000字节cave
。特别是在堆里。
所以没找到。
关于c - Code_Cave示例C编程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52980588/