본문 바로가기
보안/리버싱

[리버싱] 스택 프레임

by Nobb 2024. 2. 4.

스택 프레임 (Stack Frame)

 : 함수 호출 시, 그와 관련된 데이터들을 저장해두는 메모리의 스택 영역

    * 메모리의 스택 영역  :함수 호출시, 관련 지역변수, 매개변수 저장되는 영역

    *C언어 - 함수 호출할 때마다 호출된 함수의 지역변수,매개변수,반환주소 등을 저장하는 메모리 영역을 스택에 할당함

        > 그 할당하는 걸 스택프레임이라고 함.

 

출처: tcpschool.com

    -함수 호출될 시,

         스택 - 함수의 매개변수, 반환 주소값, 지역변수 등이 저장됨

 

    -효과 : 해당 함수가 호출되기 이전 상태로 되돌리기 가능

 

 

 

 

 

 

 

* 스택 오버플로우 (stack overflow)

 : 스택플레임이 계속 쌓여서 스택 영역 넘어가서 저장되는 현상

    - 예) 재귀호출 무한 반복할 경우

출처: tcpschool.com

    > C언어_ 실행 중 프로그램에서 스택 오버플로우 발생 시,  즉시 강제종료시키고 에러 출력함.

'보안 > 리버싱' 카테고리의 다른 글

[리버싱] x64 어셈블리어 기초 01  (0) 2024.02.25
[어셈블리어] Hello World 코드 해석  (0) 2024.02.12
[리버싱] 레지스터  (0) 2024.02.04
[리버싱] 스택  (0) 2024.02.04
[리버싱] 03 소프트웨어 분석 기법  (0) 2024.01.28