https://dreamhack.io/wargame/challenges/14/writeups
๋ฌธ์ ์ ๋ณด - Reversing Basic Challenge #0
์ด ๋ฌธ์ ๋ ์ฌ์ฉ์์๊ฒ ๋ฌธ์์ด ์ ๋ ฅ์ ๋ฐ์ ์ ํด์ง ๋ฐฉ๋ฒ์ผ๋ก ์ ๋ ฅ๊ฐ์ ๊ฒ์ฆํ์ฌ correct ๋๋ wrong์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ด ์ฃผ์ด์ง๋๋ค.
ํด๋น ๋ฐ์ด๋๋ฆฌ๋ฅผ ๋ถ์ํ์ฌ correct๋ฅผ ์ถ๋ ฅํ๋ ์ ๋ ฅ๊ฐ์ ์ฐพ์ผ์ธ์!
ํ๋ํ ์ ๋ ฅ๊ฐ์ DH{} ํฌ๋งท์ ๋ฃ์ด์ ์ธ์ฆํด์ฃผ์ธ์.
์์) ์ ๋ ฅ ๊ฐ์ด Apple_Banana์ผ ๊ฒฝ์ฐ flag๋ DH{Apple_Banana}
์ค๋น๋ฌผ
IDA Freeware
https://hex-rays.com/ida-free/#download
ํ์ด
์ฃผ์ด์ง ๋ฌธ์ ํ์ผ์ IDA ์์ ์ด์๋ค.
Shift + F12
์ฐ์ด๋ ๋ฌธ์์ด์ค ๋๋ฌด FLAG ๊ฐ์ ๋ฌธ์์ด์ด ์๊ธด ํ์ง๋ง..!
๋ณด์ํ๋ Input: ์ ์ ๋ ฅ๊ฐ์ ๋ฐ์๋ ์ถ๋ ฅํ๋ ๋ฌธ์์ด, Correct ์ Wrong ์ ๊ฒ์ฆ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ ๋ฌธ์์ด์ธ๋ฏ ํ๋ค.
main ํจ์๋ก ์ด๋ํด์ฃผ๊ณ
๋์ปดํ์ผ์ ํด์ค๋ค
IDA Mac ๋์ปดํ์ผ ๋จ์ถํค : TAB
IDA Window ๋์ปดํ์ผ ๋จ์ถํค : F5
๋ฉ์ธํจ์๋ฅผ ๋ณด๋ sub_140001190 ํจ์๋ ๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ๊ณ ์์ผ๋ฏ๋ก scanf ์ด๋ผ๋๊ฑธ ์ ์ ์๋ค
if ์กฐ๊ฑด๋ฌธ์์ sub_140001000 ์ ํตํด ํน์ ๋ฌธ์์ด๊ณผ ๋น๊ต๋ฅผ ํ๊ณ
๋ง์ผ๋ฉด Correct, ํ๋ฆฌ๋ฉด Wrong ์ ์ถ๋ ฅํ๋ ๊ตฌ์กฐ๋ผ๋ ๊ฒ์ ์ ์ ์๋ค.
sub_140001000 ๋ฅผ ๋๋ฌ์ ์์ธํ ์ดํด๋ณด์
strcmp !!
๋ฌธ์์ด์ ๋น๊ตํ๋ ํจ์๊ฐ ๋ง์๋ค.
a1 ์ด๋ผ๋ ๋ฌธ์์ด์ "Compar3์ด์ฉ๊ตฌ" ์ ๋น๊ตํด์ 0๊ณผ 1์ ๋ฆฌํดํ๋ค
๊ทธ๋ ๋ค๋ฉด ์ "Compar3์ด์ฉ๊ตฌ" ๊ฐ Correct๋ฅผ ์ถ๋ ฅํ๋ ์ ๋ ฅ๊ฐ
์ฆ, FLAG ์ธ ๊ฒ์ด๋ค.
DH{Compar3_the_str1ng}