課后老師布置作業(yè)荣堰,查看各類(lèi)變量以及代碼區(qū)在內(nèi)存中的分布情況。
在運(yùn)行之前牛隅,要關(guān)閉ASLR(Address Space Layout Randomization)即地址空間布局隨機(jī)化
ALSR
aslr是一種針對(duì)緩沖區(qū)溢出的安全保護(hù)技術(shù),通過(guò)對(duì)堆酌泰、棧媒佣、共享庫(kù)映射等線(xiàn)性區(qū)布局的隨機(jī)化,通過(guò)增加攻擊者預(yù)測(cè)目的地址的難度陵刹,防止攻擊者直接定位攻擊代碼位置默伍,達(dá)到阻止溢出攻擊的目的的一種技術(shù)。如今Linux衰琐,Windows等主流操作系統(tǒng)都已采用了該技術(shù)也糊。
系統(tǒng)
機(jī)器為自身所用的阿里云云主機(jī),系統(tǒng)CentOS 7.3
操作
ALSR由 /proc/sys/kernel/randomize_va_space
決定羡宙,默認(rèn)為2
0 - 表示關(guān)閉進(jìn)程地址空間隨機(jī)化
1 - 表示將mmap的基址狸剃,stack和vdso頁(yè)面隨機(jī)化。
2 - 表示在1的基礎(chǔ)上增加棧(heap)的隨機(jī)化狗热。
要關(guān)閉ALSR钞馁,只需將randomize_va_space
里面的內(nèi)容改為0即可。
修改該文件不能直接用 vi
或者 vim
進(jìn)行修改,也不能直接 sudo echo 0 > /proc/sys/kernel/randomize_va_space
使用此條命令即可關(guān)閉ALSR:sudo sh -c "echo 0 > /proc/sys/kernel/randomize_va_space"