【发布时间】:2018-07-24 20:19:24
【问题描述】:
ASLR 会影响地图文件吗? AFAIK 对于 64 位二进制文件,文本段的默认虚拟地址是 0x400000,但是在解析 /proc/pid/maps 文件时,我发现操作系统显然对文本和数据使用随机地址段,即:
564992f16000-564992f17000 r-xp 00000000 00:2c 306966 /tmp/foo
564993116000-564993117000 r--p 00000000 00:2c 306966 /tmp/foo
564993117000-564993118000 rw-p 00001000 00:2c 306966 /tmp/foo
有人能解释一下这里发生了什么吗?
【问题讨论】:
-
相关:32-bit absolute addresses no longer allowed in x86-64 Linux?。发行版已开始发布 gcc,默认情况下配置为生成 PIE 可执行文件。
标签: x86 elf aslr position-independent-code