cho2cee
TIL
cho2cee
전체 방문자
오늘
어제
  • 전체 게시글 (78)
    • Cloud (31)
      • AWS (12)
      • Kubernetes (16)
      • IaC (3)
    • Security (15)
      • ELK (5)
      • Reversing (10)
    • Network (8)
    • Linux (4)
    • Etc. (20)
      • 기타 (4)
      • 업무 (16)

태그

  • 합격후기
  • SAA
  • VPC
  • AWS
  • CLOUD

최근 댓글

블로그 메뉴

  • 홈
  • 태그
  • 방명록
hELLO
cho2cee

TIL

[Reversing] 05. 스택
Security/Reversing

[Reversing] 05. 스택

2021. 11. 26. 00:26

1. 스택

프로세스에서 스택 메모리의 역할은 아래와 같다. 

  1. 함수 내의 로컬 변수 임시 저장
  2. 함수 호출 시 파라미터 전달
  3. 복귀 주소(return address) 저장 

위와 같은 역할을 수행하기에는 스택의 FILO(First In Last Out) 구조가 아주 유용하다. 

 

1.1 스택의 특징 

 일반적으로 스택 메모리는 그림과 같이 표현한다. 

 

프로세스에서 스택 포인터(ESP)의 초기값은 Stack Bottom쪽에 가깝다. 

PUSH 명령어에 의해 Stack에 값이 추가되면 스택 포인터는 Stack Top을 향해(위쪽으로) 움직이고, POP 명령어에 의해 스택에서 값이 제거되면 스택 포인터는 Stack Bottom을 향해 (아래쪽으로) 움직인다. 

 

즉 높은 주소에서 낮은 주소 방향으로 스택이 자라난다.

이러한 스택의 특성 때문에 보통 "스택은 거꾸로 자란다" 라는 표현을 쓰기도 한다. 

 

 

저작자표시 (새창열림)

'Security > Reversing' 카테고리의 다른 글

[Reversing] 07. 스택 프레임  (0) 2021.12.02
[Reversing] 06. abex'crackme #1 분석  (0) 2021.12.02
[Reversing] 04. IA-32 Register 기본 설명  (0) 2021.11.25
[Reversing] 03. 리틀 엔디언 표기법  (0) 2021.11.25
[Reversing] OllyDbg 기초 사용법  (0) 2021.11.25
    'Security/Reversing' 카테고리의 다른 글
    • [Reversing] 07. 스택 프레임
    • [Reversing] 06. abex'crackme #1 분석
    • [Reversing] 04. IA-32 Register 기본 설명
    • [Reversing] 03. 리틀 엔디언 표기법
    cho2cee
    cho2cee
    Today I Learned

    티스토리툴바