1. 가젯(Gadget)
- 가젯이란 ROP(Retrun Oriented Programming)에서 주로 쓰임
- 원래 의미는 코드조각을 지칭했지만 요즘은 RET로 끝나는 연속된 명령어를 뜻함
2. bss영역
- 초기화 되지 않은 전역변수들을 위한 곳으로
- 보통 이 변수들이 0으로 초기화 되있고 이 곳은 주소값이 변하지 않는다.
- 임시스택이라고도 불림
3. PLT(Procedure Linkage Table)
- 프로시저들을 연결해주는 테이블
- 프로그램이 호출하는 모든 함수들을 나열하는 테이블
4. GOT(Global Offset Table)
- 프로그램이 실행후 libc.so 내의 실제 함수 주소가 저장되는 곳
5. DEP(Data Execution Prevention)
- 스택에 실행 권한을 주지않는 기법
6. ASLR(Address Space Layout Randomization)
- 공유라이브러리의 주소를 랜덤하게 바꾸는 기법
- 메모리 보호기법중 하나
7. Leak
- (정확한건 아님)원래는 보이지 않는 영역인데 보이게 하는 것
8. RCE 취약점
- Remote code execution 약자
- drive-by install을 뜻하는 것
조작된 웹페이지나 이미지 파일을 보는 것만으로도 사용자의 네트워크 외부에서 전송된 실행 코드를 시작가능
9. NX
Never eXecute의 약자로써 스택의 실행권한이 없는, 즉 스택에 실행코드를 넣어도 무효화 된다.