๋ฌธ์ ํด์
ํ์ผ ์คํ ๊ฒฐ๊ณผ
IDA
์๋ ์ฝ๋๋ฅผ ์ดํด๋ณด๋ฉด i๋ 10์์ 0๊น์ง ๋ฐ๋ณตํ๋ฉด์ ์ถ๋ ฅ๋๊ณ , i=3์ผ๋, src์ ์ด๋ค ์คํธ๋ง์ด ๋ณต์ฌ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
flag_gen ํจ์๋ IDA View์์ ์ฐพ์ ์ ์์๋ค. ๋์๊ณผ์ ์ ์์ฝํ๋ฉด ์๋์ ๊ฐ๋ค.
loc_15A0 : i์ 0 ๋น๊ต.
→ i > 0 : ๋ฐ๋ณต๋ฌธ ์ํ
→ i ≤ 0 : i ์ 5 ๋น๊ต.
→ i == 5 : flag_gen ์คํ
→ i ≠ 5 : ํ๋ก๊ทธ๋จ ์ข ๋ฃ.
i๋ฅผ ์ค๊ฐ์์ 5๋ก ๋ฐ๊ฟ์ฃผ๋ฉด flag_gen ํจ์๋ฅผ ์คํ์ํฌ ์ ์๋ค.
pwndbg
$ break main
$ run
<main+278> ์์ <rbp-4>์ 5๊ฐ ๋น๊ต๋๋ ๊ฒ์ ๋ณผ ์ ์๋ค. breakpoint๋ฅผ ๊ฑธ๊ณ ์คํํ๋ค.
$ break *main+278
$ continue
$ x/1 $rbp-4
0x7fffffffe1cc: 0
$ set *0x7fffffffe1cc = 5
$ x/1 $rbp-4
0x7fffffffe1cc:5
$ continue
<rbp-4> ๊ฐ์ 5๋ก ๋ฐ๊พธ์ด์ฃผ๊ณ ํ๋ก๊ทธ๋จ์ ์คํํ๋ฉด flag_gen ํจ์๊ฐ ์คํ๋๊ณ flag๊ฐ ์ถ๋ ฅ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค!!
'๐ดโโ ๏ธ CTF ๐ดโโ ๏ธ > ๋ฆฌ๋ฒ์ฑ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Dream Hack - Reversing] Simple Patch me (0) | 2024.08.23 |
---|