상세 컨텐츠

본문 제목

005 Stack

본문

I. Stack Memory

       : 로컬 변수 저장, 함수 파라미터 전달, 복귀 주소 저장

       : '스택은 주소가 높은 곳에서 낮은 곳으로 거꾸로 자란다.', PUSH → RSP(,SP, ESP)↓, POP  RSP(,SP, ESP)

 

II. Stack Frame

       : 계속 변하는 ESP 대신 EBP를 사용하여 스택 내 로컬 변수, 파라미터, 복귀 주소에 접근하는 기법

Stack Frame Structure from ReverseCore

        ※ 로컬 변수에 파라미터 대입 시 프롤로그 후 함수가 시작될 때 해당 변수들에 대한 스택 메모리 영역 확보 (함수 종료 시에 RSP 다시 복구해줌, 남은 값 삭제는 x)

             ex) SUB ESP, 8 (로컬 변수가 2개일 때)

'Reversing > Project - 악성 코드, 진실의 방으로' 카테고리의 다른 글

007 PE File Format  (0) 2020.09.20
006 Calling Convention  (0) 2020.09.19
004 Assembly  (0) 2020.09.19
003 Register  (0) 2020.09.19
002 Byte Ordering  (0) 2020.09.18

관련글 더보기