dep는 data execution prevention으로 데이터 영역에서의 코드를 실행하지 못하게 하는 방법이라고
한다. 저번에 mprotect에 대해서 글을 썼었는데 mprotect가 이걸 우회하기 위해서 나온것 같다.
dep가 non executable stack(nx-bit)하고 같은 말로 생각해도 될것 같다.
aslr은 주소를 난수화시키는 기법이라고 한다. aslr이 난수화 시키는 주소영역은
Image Base, Heap, Stack, PEB(Process Environment Block), TEB(Thread Environment Block)
라고 한다. 즉 저부분을 벗어나기만 하면 고정된 주소이므로 익스플로잇이 성공 가능하다는 소리같다.
(ex) got부분)
ascii_armor은 라이브러리 영역의 시작주소가 00으로 시작함으로서, 코드 실행 중에 해당 부분이
널값으로 처리되어 코드 실행을 멈추게 하는거라고 한다.
'systemhacking > background' 카테고리의 다른 글
execve, execl (0) | 2015.03.09 |
---|---|
/proc/<pid>/maps 메모리 권한, 로드중인 라이브러리 확인 (0) | 2015.02.11 |
mprotect (메모리 권한 변경) (0) | 2015.02.10 |
linux background 2 (binary hacks) (0) | 2015.02.08 |
linux background 1 (binary hacks) (0) | 2015.02.06 |