스택에서 저장된 경로를 가져올 때 push된 마지막의 경로만 가져옵니다.
orw 강의를 참고하여 쉘코드를 작성 하였는데요. 공격 서버에서 실행해도 답이 나오지 않고 이상한 값들만 출력이 되어서 디버깅을 통해 확인 해본 결과,
파일을 열 때, push된 마지막의 경로만 open의 인자값으로 가져와 엉뚱한 경로에 있는 파일을 읽어 오는 것 같았습니다.
아래는 제 쉘코드 이고,
이것은 인터넷에서 찾아본 쉘코드와 디버깅을 했을 때 입니다.
저 둘의 차이점을 확인해보니, 맨 처음에 push 0x0을 한다는 것입니다.
맨처음 push 0x0의 역할이 뭐길래 제 쉘코드는 스택의 마지막만 가져오고 인터넷의 쉘코드는 스택 전체를 다 가져오는 것인가요?
#pwnable
작성자 정보
답변
0