WindowsXPでaddress-space randomization
- この辺の話での続き・・(??)
WindowsXPでaddress-space randomization (yoggy's diary)
w:\Release>type printesp.bat
@echo off
for %%I in (0 1 2 3 4 5 6 7 8 9)do printesp.exe
for /L %%I in (1 1 10)do printesp.exe
w:\Release>printesp.bat
esp = 0338ff84
esp = 5f45ff84
esp = 54d2ff84
esp = 2419ff84
esp = 4918ff84
esp = 3f71ff84
esp = 19daff84
esp = 48c3ff84
esp = 51a2ff84
esp = 5568ff84
- で、espがばらばらだと何がうれしいのってところは・・
スタックオーバーフローを突いて突っ込んだshellcodeを直接実行することが難しくなります。 (引用:yoggy's diary)
- ってことで、この辺の話に行くことになると・・・
- あくまでも難しくなるって程度で、共通する所なんかは残っちゃうってことかな・・、気が向くのを待ってみたりする (^-^;;
*1: FOR /L %変数 IN (開始,ステップ,終了) DO コマンド [コマンドパラメータ]
セットは、ステップの量ごとに変化する開始から終了までの数列です。
たとえば、(1,1,5) は 1 2 3 4 5、(5,-1,1) は (5 4 3 2 1) という数列になります。