๐Ÿ”’ Cyber Security/Reverse Engineering (๋ฆฌ๋ฒ„์‹ฑ)

[DreamHack] ๋“œ๋ฆผํ•ต ๋ฆฌ๋ฒ„์‹ฑ : rev-basic-0

์„ ๋‹ฌ 2022. 11. 10. 20:05
๋ฐ˜์‘ํ˜•

https://dreamhack.io/wargame/challenges/14/writeups

 

rev-basic-0

Reversing Basic Challenge #0 ์ด ๋ฌธ์ œ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฌธ์ž์—ด ์ž…๋ ฅ์„ ๋ฐ›์•„ ์ •ํ•ด์ง„ ๋ฐฉ๋ฒ•์œผ๋กœ ์ž…๋ ฅ๊ฐ’์„ ๊ฒ€์ฆํ•˜์—ฌ correct ๋˜๋Š” wrong์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๋ถ„์„ํ•˜์—ฌ correct๋ฅผ ์ถœ

dreamhack.io

 

๋ฌธ์ œ์ •๋ณด - Reversing Basic Challenge #0

์ด ๋ฌธ์ œ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฌธ์ž์—ด ์ž…๋ ฅ์„ ๋ฐ›์•„ ์ •ํ•ด์ง„ ๋ฐฉ๋ฒ•์œผ๋กœ ์ž…๋ ฅ๊ฐ’์„ ๊ฒ€์ฆํ•˜์—ฌ correct ๋˜๋Š” wrong์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.

ํ•ด๋‹น ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ๋ถ„์„ํ•˜์—ฌ correct๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์ž…๋ ฅ๊ฐ’์„ ์ฐพ์œผ์„ธ์š”!

ํš๋“ํ•œ ์ž…๋ ฅ๊ฐ’์€ DH{} ํฌ๋งท์— ๋„ฃ์–ด์„œ ์ธ์ฆํ•ด์ฃผ์„ธ์š”.

์˜ˆ์‹œ) ์ž…๋ ฅ ๊ฐ’์ด Apple_Banana์ผ ๊ฒฝ์šฐ flag๋Š” DH{Apple_Banana}

 

 

์ค€๋น„๋ฌผ

IDA Freeware

https://hex-rays.com/ida-free/#download

 

IDA Freeware

IDA Freeware The free binary code analysis tool to kickstart your reverse engineering experience.

hex-rays.com

 

ํ’€์ด

์ฃผ์–ด์ง„ ๋ฌธ์ œํŒŒ์ผ์„ 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}

 

๋ฐ˜์‘ํ˜•