inflearn logo
강의

Course

Instructor

System Hacking & Reversing: Learning Everything from Beginner to Intermediate in One Go

Calling Convention

cdecl 에서 내부가 아닌 외부 정리

45

yungjegal7778262

13 asked

0

add esp,0x8을 보고 어떻게 내부가 아닌 함수 외부에서 에필로그가 적히는 건지 이해가 가지 않습니다.

시스템-해킹 보안-교육

Answer 2

0

knockOn

안녕하세요! AI인턴이 잘 답변해 주었네요 ㅎㅎ
cdecl 은 호출자가 스택을 정리하는 방식이기 때문에 함수 내부가 아닌 함수 호출 전과 후에 스택을 정리하게 됩니다!

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 제갈융님.

cdecl 호출 규약에서 함수 호출 후 스택 정리에 관해 혼란스러울 수 있는 부분이 있습니다. 여기에서 중요한 점은 cdecl 호출 규약은 호출자(caller)가 호출된 함수의 스택을 정리하는 방식이라는 점입니다.

add esp, 0x8 명령어는 함수가 호출된 후, 호출자(caller) 측에서 스택 포인터를 조정하는 과정입니다. 이는 함수가 반환된 이후, 호출자가 인자들을 스택에서 제거하는 과정으로, 이를 통해 호출자가 스택을 어떻게 관리하고 있는지를 볼 수 있습니다.

이와 관련해 좀 더 깊이 있는 정보와 설명을 원하시면, 유사한 질문 및 답변이 제공되는 다음의 링크를 참고해 보시기 바랍니다:

이 링크에서는 cdecl 호출 규약에서 스택이 어떻게 관리되고, 함수 종료 시 호출자가 스택을 청소하는 방식을 다룹니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

rop64 뭐가 잘못 됐을까요..?

0

52

2

rop64 질문입니다

0

34

2

bof3 문제 관련 질문

0

41

2

bof2 문제 페이로드 관련 질문

0

49

1

bof1 마지막 파이썬 실행

0

39

2

bof1 마지막에 질문 있아요

0

50

3

bof로 변수 조작

0

41

3

체크의 위치

0

35

2

패딩과 체크

0

34

1

스택의 구조에 대한 질문 입니다.

0

32

2

Rev-basic-2 문제 파일

0

49

3

강의 속 버블 파일은 어디서 받을 수 있나요?

0

50

1

디스코드 참가 관련

0

46

2

디스코드 참가

0

43

2

0x9와 9의 차이

0

42

1

디스코드 이메일 등록 오류

0

73

2

수업자료는 어디서 다운받을 수 있을까요?

0

79

1

디스코드 오류

0

100

2

WEB, REV&PWN 두개 과정 동시에 LMS가입이 안되나요?

0

85

2

디스코드 이메일 등록 오류

0

264

2

문제풀이 문제가 어디에있죠?

0

81

1

log, debug

0

75

2

디스코드

0

121

2

디스코드 DM으로 이메일/과정명 인증 오류

0

196

3