2015 DEFCON CTF ๋ฌธ์ r0pbaby - Baby's First 1 ํ์ผ ์ด๋ฆ๋ถํฐ rop(Return Oriented Programming) ๊ธฐ๋ฒ์ ์์ํฉ๋๋ค. ๋จผ์ ์คํ์ ์์ผ๋ณผ๊น์ ์ ์ฃผ์๋ฅผ ๋ฐ์ ์ ์๊ณ , ์คํ์ ์ ๋ ฅ์ ํ ์ ์๋ค์. gdb์์ ์คํ ํ ๊ณผ์ฐ ์ฌ๋ฐ๋ฅธ ์ฃผ์์ธ์ง ์์๋ด ์๋ค. ํ๋ก๊ทธ๋จ์ ํตํด ์๊ฒ ๋ libc ์ฃผ์๋ ํฌ์ธํฐ ์ฃผ์๋ก ๋ณด์ ๋๋ค. ํฌ์ธํฐ ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ offset ์์ ์ ํ๊ธฐ์๋ ๋ฌด๋ฆฌ๊ฐ ์๊ธฐ์, 1๋ฒ ๋ฉ๋ด๋ ์ ์ธํ๊ณ ๋ฌธ์ ๋ฅผ ํ์ด๋๊ฐ์ผ ๊ฒ ๋ค์. ๊ทธ๋ ๋ค๋ฉด 2๋ฒ ๋ฉ๋ด, ํจ์์ ์ฃผ์๋ ์ด๋จ๊น์? ๋์ผํฉ๋๋ค. 2๋ฒ ๋ฉ๋ด๋ ๋ฏฟ๊ณ ์ฌ์ฉํด๋ ๋๊ฒ ๋ค์. ๋ค์์ผ๋ก 3๋ฒ ๋ฉ๋ด๋ฅผ ์ดํด๋ณผ๊น์. 3๋ฒ ๋ฉ๋ด์ breakpoint๋ฅผ ๊ฑธ์ด์ฃผ๊ณ ์ญ ๋ด๋ ค๊ฐ๋ค๋ณด๋ฉด, memcpy๊ฐ ๋์ต๋๋ค. rbp๋ถํฐ..