每日一記:Linux 關閉ASLR是否需要重啓?

答案:不用重啓。

想了解更多的同學繼續往下看:

最近在處理Oracle問題時遇到一個因ASLR開啓導致的問題。

經過查閱mos文檔,建議關閉ASLR。

那麼有人會問了,關閉ASLR需不需要重啓服務器?生產可不能隨便重啓。

這裏實戰測試一下:

## 關閉前驗證
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007fff593a6000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007f482d04e000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f482ce4a000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f482ca87000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f482d599000)
[root@localhost ~]# 
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffe366a1000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007f4e59c7d000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f4e59a79000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f4e596b6000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f4e5a1c8000)
[root@localhost ~]# 
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffee8194000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007fb5d6dea000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fb5d6be6000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fb5d6823000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fb5d7335000)

## 關閉ASLR
[root@localhost ~]# echo 0 > /proc/sys/kernel/randomize_va_space

## 關閉後驗證
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffff7ffa000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007ffff7889000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff7685000)
	libc.so.6 => /lib64/libc.so.6 (0x00007ffff72c2000)
	/lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd4000)
[root@localhost ~]# 
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffff7ffa000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007ffff7889000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff7685000)
	libc.so.6 => /lib64/libc.so.6 (0x00007ffff72c2000)
	/lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd4000)
[root@localhost ~]# 
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffff7ffa000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007ffff7889000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff7685000)
	libc.so.6 => /lib64/libc.so.6 (0x00007ffff72c2000)
	/lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd4000)
[root@localhost ~]# 
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffff7ffa000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007ffff7889000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff7685000)
	libc.so.6 => /lib64/libc.so.6 (0x00007ffff72c2000)
	/lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd4000)
[root@localhost ~]# 
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffff7ffa000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007ffff7889000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007ffff7685000)
	libc.so.6 => /lib64/libc.so.6 (0x00007ffff72c2000)
	/lib64/ld-linux-x86-64.so.2 (0x00007ffff7dd4000)

## 重新調整爲默認值
[root@localhost ~]# echo 2 > /proc/sys/kernel/randomize_va_space

## 再次驗證
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007fff351e0000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007f4c02fe9000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f4c02de5000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f4c02a22000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f4c03534000)
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffc6f7fb000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007f6f88a9d000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f6f88899000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f6f884d6000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f6f88fe8000)
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffe623fe000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007f33448fa000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f33446f6000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f3344333000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f3344e45000)
[root@localhost ~]# ldd /bin/bash
	linux-vdso.so.1 (0x00007ffdf4edb000)
	libtinfo.so.6 => /lib64/libtinfo.so.6 (0x00007fec81652000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fec8144e000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fec8108b000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fec81b9d000)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章