리눅스 환경에서 환경변수로 저장한 shellcode 주소 알아내기
2019. 7. 23. 21:58
728x90
728x90
728x90
bof 문제를 풀다보면 스택에 ASLR이 걸려있어 스택에 shellcode를 입력할 경우 shellcode의 주소를 정확히 알아내기 매우 어렵다.
이럴 때 환경변수에 shellcode를 저장해두고 getenv 함수로 shellcode의 주소를 알아낼 수 있다.

위와 같이 getenv 함수로 "shellcode"라는 환경변수의 주소를 출력해준다.
그리고 "shellcode" 이름으로 환경변수를 등록해주고 컴파일한 파일을 실행해주면 주소가 출력되는 것을 확인할 수 있다.
728x90
728x90
'ETC > Security' 카테고리의 다른 글
| 리눅스 환경에서의 메모리 보호 기법 (0) | 2019.08.02 |
|---|---|
| PLT & GOT (0) | 2019.08.01 |
| RTL / Return To Library (0) | 2019.08.01 |
| 리눅스 환경에서 공유 라이브러리 내의 함수 주소와 필요한 인자 주소 알아내기 (0) | 2019.08.01 |