시스템 해킹

 1576, 1/79 회원가입  로그인  
   you88311
   함수 종료와 스택 관련 질문

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=1899 [복사]


안녕하세요 LOB문제를 풀다 Fake ebp와 FPO 기법들에 대해 알게되었습니다.
제가 알기로는 함수가 실행되고 종료되면서 leave-ret 혹은 esp+스택크기를 통해
그 함수에 할당되었던 스택이 제거된다고 알고있습니다. 그런데 위의 기법들(특히 FPO)의 경우
leave-ret이 진행된 후에도 제거된 스택의 메모리에 접근을 하더군요.
실제로 gdb를 통해 스택을 보았을 때 leave-ret을 한 후에도 데이터들이 남아있더군요.

그렇다면 실제로 스택에 있는 값들이 제거되는 것이 아닌 단순히 esp값을 증가시킴으로서
해당 위치를 스택영역이 아니라고 인식하게 하는 것인가요?
program이 종료되더라도 이러한 데이터들은 남아있게 되고 이게 소위 말하는 쓰레기값들이 되는건가요?

감사합니다.

  Hit : 2876     Date : 2017/11/05 01:01



    
you88311 답변 감사합니다! 2017/11/06