Unit 설명
PLT/GOT로 함수 주소가 연결되는 과정을 이해하고, GOT 엔트리를 덮어 함수 호출 목적지를 바꾸는 방법을 배웁니다.
학습목표

이런 내용을 배워요

  • 지연 바인딩으로 GOT에 라이브러리 함수 주소가 기록되는 과정
  • PLT가 GOT의 값을 따라 함수 호출 목적지를 정하는 원리
  • 누수한 puts() 주소로 libc의 system() 주소를 계산하는 방법
  • 임의 쓰기로 puts@got을 바꿔 system()을 호출하는 실습

이런 분께 추천해요

  • PLT/GOT의 실행 흐름을 실제 바이너리에서 확인하고 싶은 분
  • 주소 누수와 임의 쓰기를 연결한 익스플로잇을 연습하고 싶은 분

이런 선수 지식이 필요해요

  • 동적 링크와 PLT/GOT의 기본 구조
  • libc base와 offset을 이용한 주소 계산

이런 환경을 기준으로 설명해요

  • x86-64 리눅스 환경
구성
동적 심볼 해석과 PLT/GOT
Background: PLT/GOT 심화
[함께 실습] GOT Overwrite
Exploit Tech: GOT Overwrite
GOT Overwrite
평점
10.0 (1)
0
Unit의 모든 항목을 완료한 후 평가할 수 있습니다.
GOT Overwrite
10.0
(1)
Tier 1 Medium
0% 진행중 총 0개 항목 완료
강의 0 /2
워게임 0 /1
1
잠긴 강의는 플랜을 업그레이드하거나 Unit을 별도 구매하여 수강할 수 있어요.
Lab은 실습 개념으로, 전체 진도율에 포함되지 않아요.