Follow Excellent, Success will Chase you

0%

ASLR

ASLR(Address space layout randomization)是一种针对缓冲区溢出的安全保护技术,通过对堆、栈、共享库映射等线性区布局的随机化,通过增加攻击者预测目的地址的难度,防止攻击者直接定位攻击代码位置,达到阻止溢出攻击的目的。

控制接口

1
/proc/sys/kernel/randomize_va_space

randomize_va_space的属性:

randomize_va_space作用
0关闭
1mmap basestackvdso page将随机化。这意味着.so文件将被加载到随机地址。链接时指定了-pie选项的可执行程序,其代码段加载地址将被随机化。randomize_va_space缺省为1。此时heap没有随机化
2在1的基础上增加了heap随机化。配置内核时如果禁用CONFIG_COMPAT_BRK,randomize_va_space缺省为2。

操作

查看

1
cat  /proc/sys/kernel/randomize_va_space
1
sysctl -n kernel.randomize_va_space

设置(关闭)

1
echo 0 > /proc/sys/kernel/randomize_va_space
1
sysctl -w kernel.randomize_va_space=0

参考

地址空间布局随机化(ASLR)增强研究综述 Remix: On-demand Live Randomization

-------------本文结束感谢您的阅读-------------
  • 本文作者: Winddoing
  • 本文链接: https://winddoing.github.io/post/4177.html
  • 作者声明: 本博文为个人笔记, 由于个人能力有限,难免出现错误,欢迎大家批评指正。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!