问题描述
运行sysctl -a --pattern "randomize"
= 2
,因此数据段也应该是随机的,但是cat maps
似乎总是随机化vdso
stack
和其他提供的内核仅映射。这是流程图.text
和.data
的前2个条目
cat maps
00400000-00402000 r-xp 00000000 08:07 14569655
00402000-00403000 rwxp 00002000 08:07 14569655
我暂停了应用程序,因此可以通过使用set disable-randomization off
在gdb中运行来读取地图文件。我使用的源代码是:
section .data
name: db "k"
section .text
global _start
_start:
end: mov rax,60
mov rdi,0
syscall
构建并链接为:
ld sand.o -o sand
nasm -g -F DWARF -f elf64 -o sand.o sand.asm
另一个问题,我猜不能.text
被随机化,因为在读取时是不需要的,对还是错?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)