์ถ๋ ฅ๋๋ ๋ฉ๋ด์ ๋ฐ๋ผ 1~3์ ๊ฐ๊ฐ 1, 2, 3์ฉ points ๊ฐ ์ฆ๊ฐ, 4๋ points ๊ฐ 1 ๊ฐ์ ๊ธฐ๋ฅ์ ์ํํ๋ ํ๋ก๊ทธ๋จ์ด๋ค.
์ฐ์ flag๋ฅผ ํ๋ํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด๊ธฐ ์ํด IDA๋ฅผ ์ฌ์ฉํด ํ๋ก๊ทธ๋จ์ ๋ฏ์ด๋๋ค.
IDA๋ฅผ ํตํด ๋ณธ๋ C์ฝ๋๋ก ํ์ธํ ๊ฒฐ๊ณผ v3๊ณผ v4์ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ์ฌ ํ๋ก๊ทธ๋จ์ด ๊ตฌ๋๋๋ฉฐ, ์ ๋ ฅ๋ฐ์ ๊ฐ์ด ํน์ while๋ฌธ์ ํตํด systemํจ์๋ฅผ ์คํํ ์ ์์์ ์์๋ค. ๋ฐ๋ผ์ ์๋ ๋ฐฉ๋ฒ์ ํตํด flag๋ฅผ ํ๋ํ ์ ์์์ ์ ์ ์๋ค.
1) v4๊ฐ์ 0x17D78400 (=400000000) ์ด์์ด ๋๋๋ก ํ๋ค
2) v3๊ฐ์ผ๋ก 999๋ฅผ ์ ๋ ฅํ๋ค
3) shell์ flag ํ์ผ์ ํ์ธํ๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ์ฌ flag๋ฅผ ์ทจ๋ํ๋ค
v4๋ unsigned int์ด๋ฏ๋ก 4์ต๋ฒ ํ๋ค๊ฒ ์ ๋ ฅํ ํ์ ์์ด 30์ ์ญ์ผ๋ก -1์ฉ ํ์ฌ int์ ์ต๋๊ฐ์ผ๋ก ๋ง๋ค๋ฉด ๋๋ค.
๋ฐ๋ผ์ ์์ ๊ณผ์ ์ ํตํด ์๋์ flag๋ฅผ ์ทจ๋ํ๋ค.
์๋ฃ!
'๐ ๋ณด์,์ ๋ณด๋ณดํธ > ๐ [STYDY] ๋ฆฌ๋ฒ์ฑ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ DoPwn ] Week3 - "military" Write Up (0) | 2021.12.09 |
---|---|
[ DoPwn ] Week3 - "ilovepwn" Write Up (0) | 2021.12.05 |
[ DoPwn ] Week2 - "assemlator" Write Up (0) | 2021.11.30 |
[ DoPwn ] Week2 - "assembly" Write Up (0) | 2021.11.30 |
[ DoPwn ] Week1 - "system" Write Up (0) | 2021.11.22 |