๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง2 Dreamhack ๋ฆฌ๋ฒ์ฑ ๋ฌธ์ ํ์ด: rev-basic-2 IDA์ ๋ฃ๊ณ F5 ๋๋ฌ ์คํ์์ผ๋ณด๋ฉด ์์ ํ๋ฉด์ด ๋ธ. ์ ๋ ฅ ๊ฐ ๋ฐ์์ sub_140001000 ํจ์์ ๋ฃ์ ๋ค์ ์ฐธ์ด๋ฉด Correct, ๊ฑฐ์ง์ด๋ฉด Wrong ์ถ๋ ฅ. ์ sub_140001000 ํจ์๊ฐ ๋ญ์ง ๊ถ๊ธํ๋๊น ๋ค์ด๊ฐ์ ์์๋ณด์. ํจ์ ๋๋ธ ํด๋ฆญํด์ ๋ค์ด๊ฐ๋ฉด ์์ ๊ฐ์ ํ๋ฉด์ด ๋ณด์. for๋ฌธ์ด ๋ณด์ธ๋ค. i๊ฐ 0๋ถํฐ 0x12 ๊ทธ๋ฌ๋๊น 18๋ณด๋ค ์์ ๋๊น์ง i++๋๋๊น ํ ๋ง๋๋ก 18๋ฒ ๋ฌด์ธ๊ฐ๋ฅผ ๋ฐ๋ณตํ๋ผ๋ ์ด์ผ๊ธด๋ฐ, ๋ญ ๋ฐ๋ณตํ๋์ง for๋ฌธ ์์ ๋ณด๋๊น !=๊ฐ ๋ณด์ธ๋ค. ๋ ๊ฐ๋ฅผ ๋น๊ตํด์ ๋ค๋ฅด๋ฉด return 0ํ๊ณ ๊ฐ์ผ๋ฉด return1 ํ๋๋ค. ๋ฐํ๊ฐ์ด 0์ด๋ฉด ๊ฑฐ์ง, 0์ด ์๋๋ฉด ์ฐธ์ด๋๊น ๋น๊ตํ๋ ์ ๋์ด ๊ฐ์์ผ ํ๋ค. ๋ ๋น๊ต ๋์์ ๋ณด๋ ๋ฌธ์์ ์ฐ๊ด์ด ์์ด ๋ณด์ธ๋ค. ๋ฌธ์๋ 1byte, 4bit๋๊น &a.. 2023. 10. 31. ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง: ์ด์ ๋ธ๋ฆฌ (ํจ์) ๊น๋ง๋์ด๋ค.ใท์ด๋ฒ ๊ธ์์๋ ๋ฆฌ๋ฒ์ฑ์ ํ์ํ ์ด์ ๋ธ๋ฆฌ ๋ด์ฉ ์ค ํจ์ ๋ถ๋ถ์ ๋ค๋ฃจ๊ณ ์ ํ๋ค.'๊ฐ๋ณํ, ใ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋ง ๋ฐ์ด๋ธใ, ์ํค๋ถ์ค, 2014, 1p-127p.'์ ์ฐธ๊ณ ํ๋ค. ํจ์์ ๊ธฐ๋ณธ ๊ตฌ์กฐํจ์์ ์์push ebpmov ebp, esp ebp๋ ์คํ ๋ฒ ์ด์ค ํฌ์ธํฐ๋ค.push ebp๋ ์ง๊ธ๊น์ง์ ๋ฒ ์ด์ค ์ฃผ์๋ฅผ ์คํ์ ๋ณด๊ดํ๊ธฐ ์ํด ํ์ํ๋ค.์ด๋ ๊ฒ ๋ฒ ์ด์ค ํฌ์ธํฐ๋ฅผ ๋ฐฑ์ ํ ๋ค, mov ebp, esp๋ฅผ ํตํด ์คํ ํฌ์ธํฐ์ธ esp๋ฅผ ebp๋ก ๋ฐ๊พผ๋ค.์๋ก์ด ํฌ์ธํฐ๋ฅผ ๋ฒ ์ด์ค๋ก ์ก๋๋ค๊ณ ํ ์ ์๋ค. * ํจ์์ ์์๊ณผ ๋ ์ค๊ฐ์ rsp๋ก ํ ๋น๋ ๋ฐ์ดํธ๋งํผ์ ๊ณต๊ฐ์ ํ๋ณดํ๋ค.ex:) 'sub rsp, 0x100' ํจ์์ ๋mov esp, ebppop ebpํจ์๊ฐ ์ข ๋ฃ๋ ๋๋ ์ง๊ธ๊น์ง ์ฌ์ฉํ ์คํ ์์น๋ฅผ ์๋๋.. 2023. 8. 3. ์ด์ 1 ๋ค์