2. 『머리말』
처음 푼 CTF 문제이기에 삽질이 매우 많았다.
그래서 환경도 몇 번이나 새로 설정하고
분석을 안하고 어렴풋이 풀려 하니 페이로드가 너무나 헷갈렸다.
이 교육자료를 통해 ROP에 대한 개념을 조금이나마 숙지하고
조금 더 나아가 다른 풀 수 있는 계기가 된다면 좋겠다.
3. I. Plaid CTF 2013 - ropasaurusrex
II. What is ROP??
III. 개요 및 기초 분석
IV. 정보 수집
V. Exploit
Contents
9. PLT, GOT
함수를 호출하면(PLT를 호출하면) GOT로 점프하는데 GOT에는 함수의 실제 주소가 쓰여있다.
첫 번째 호출이라면 GOT는 함수의 주소를 가지고 있지 않고 ‘어떤과정’ 을 거쳐 주소를 알아낸다.
두 번째 호출부터는 첫 번째 호출 때 알아낸 주소로 바로 점프한다.
31. 『마치며』
스스로 이 문제를 풀기 위해 3일간 삽질을 했고
부족했던 개념들을 다시 이해하기 위해 2일을 더 배워야 했습니다
이 자료를 보시는 분들도 이 자료를 통해 많은 공부가 되고
이해가 안되는 부분을 더 많이 스스로 찾고 탐구하는
그래서 자신만의 첫 CTF문제를 풀게 되는 순간이
모두들 오게 되었으면 좋겠습니다.
32. Thanks to
가장 먼저 이 기법에 대한 문제들을 소개해준 정경빈 군
문제 풀며 삽질할 때 아주 많은 도움을 준 심상현 군
자료를 만들며 많은 이해와 자료의 도움을 주신
Blackperl Security의 안소희 연구원님과 김민정 연구원님
마지막으로 이 자료를 만드는 모든 기회와 계기를 주신
보안 프로젝트 조정원 대표님
33. Reference to
• ropasaurusrex_salen – link
• [PlaidCTF] ropasaurusrex_conchi – link
• PLT와 GOT 자세히 알기 1 - link
• Plaid CTF 2013 ropasaurusrex_confus3r – link
• remote BOF1 - [xinetd 데몬으로 작동하는 프로그램] – link
• LD_LIBRARY_PATH 에 경로 추가 - link