aslr

    1热度

    2回答

    我写了一个简单的python脚本(只是一个消息框),并使用pyInstaller可执行文件。我想使用Powershell脚本Invoke-ReflectivePEInjection.ps1反射性地加载该exe文件,但PowerShell发生错误(PE文件不支持ASLR) 有没有什么办法可以让Python脚本与ASLR兼容的exe文件。

    3热度

    1回答

    目标是在AES的openssl实现中获取预计算表的地址。这些表包含在aes_core.c文件中,并命名为Te0,Te1等。我试图使用info address SYMBOL_NAME命令在gdb中执行此操作。 因此,这些都是我跟着至今步骤: 禁用ASLR(sudo sysctl kernel.randomize_va_space=0) 编译OpenSSL的(版本101E)与configure -d

    0热度

    1回答

    我是一名学习逆向工程的学生。在Windows上学习ASLR之后,我要检查它。以下捕获: 记事本的图像基础上的第一和第二时间相同。每当我在ollydbg上重新启动记事本时,imagebase都是一样的。我也通过PEView和Windows 10上的注册表值检查了文件上的ASLR属性。他们是正常的。有什么理由不改变记事本的imagebase?

    0热度

    1回答

    int main(int argc, char **argv) { personality(ADDR_NO_RANDOMIZE); if (fork()) { return 0; } printf("Hook me") 我在练习中遇到了这段代码。根据我的估算,这应该禁用子进程的ASLR。但是,我使用LD_PRELOAD在prin

    0热度

    1回答

    我正在开发一个项目,我需要使用LD_PRELOAD将一些库加载到内存空间中。 这就像: LD_PRELOAD="./libapp.so" ./my_app 由于某些原因(我在实际工作中的一些二进制黑客攻击),我必须知道的某些功能(内存地址(不是符号)让我们说,foo )在libapp.so中,并在执行前测试my_app的二进制代码。 但是,由于ASLR(地址空间布局随机化),每次libapp.

    3热度

    1回答

    Windows 8中的堆随机化算法(用于分配堆内存)是否适用于32位和64位进程?或仅用于64位进程? 谢谢!

    0热度

    1回答

    我一直在阅读关于ASLR的问题,我有几个问题。我没有什么编程经验,但我对它背后的理论很感兴趣。 我知道它会随机化DLLs,堆栈和堆在虚拟地址空间中,以便恶意代码不知道它们的位置,但实际程序在需要它们时如何知道它们的位置? 如果合法进程能够找到它们,什么能阻止恶意代码的执行? 最后,是ASLR试图防止在正在攻击的进程的用户空间中运行的恶意代码? 感谢

    2热度

    1回答

    我正在使用32位x86 Ubuntu桌面。我查看了/ proc/[pid]/mmaps,发现堆栈基址总是变化(例如,在以下情况下为0xbfe76000)。所以我猜测内核(或ELF加载器)必须在每次进程开始时随机化堆栈位置。 我想知道什么/哪里是确切的代码(在内核或ELF加载器)的堆栈基地址随机化。原因我想分配(例如,通过mmap)0xC0000000之下几页,我只是不确定是否有任何可能的堆栈可能位

    0热度

    1回答

    我正在为易受攻击的程序(堆栈溢出,打开NX和ASLR)编写一个rop链。 我通过观察gdb peda上的堆栈指针来执行我的小工具。除非遇到小配件mov[eax], edx; ret,否则它运作良好。这个小工具得到执行,但是之后有一个push ebx,即使我没有在我的ROP链中放置任何类似的小工具。最后,我的利用不起作用。 我已经尝试过不同的寄存器这条指令,总是有下面的push ebx,我不知道为什

    3热度

    2回答

    我读过几个地方,ASLR应该在每次运行程序时随机地址加载.data部分,这意味着全局变量的地址应该不同。但是,如果我有以下代码: int global_var = 42; int main() { global_var = 10; return 0; } 和我一起gcc -fpie -o global global.c编译它,objdump -d -M intel显