● 정상 프롤로그 & 에필로그 검증 메커니즘
함수 진입 시(Prologue) CPU 전용 레지스터에서 난수 카나리 값을 읽어 리턴 주소 직전에 배치함. 함수 종료 시(Epilogue) 저장된 값과 원본 레지스터 값을 비교하여 변조가 없으면 정상 반환함.
; x86_64 Function Epilogue Check
movq -0x8(%rbp), %rax
xorq %gs:0x28, %rax ; 카나리 일치 검증
je .L_return ; 일치 시 정상 반환
call __stack_chk_fail ; 불일치 시 패닉 호출