๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ  HOME27

Dreamhack ๋ฆฌ๋ฒ„์‹ฑ ๋ฌธ์ œํ’€์ด: rev-basic-3 cmd๋กœ ์‹คํ–‰์‹œ์ผœ ์•„๋ฌด ์ˆซ์ž๋‚˜ ๋„ฃ์–ด๋ณธ๋‹ค. ๊ธฐ์ ์€ ์ผ์–ด๋‚˜์ง€ ์•Š์•˜๋‹ค..ใ…Žใ…Ž IDA๋กœ ๋จผ์ € ์—ด์–ด์ค€๋‹ค. ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ ๋ฐ›์•„ ํ•จ์ˆ˜๋กœ ์ฐธ๊ฑฐ์ง“์„ ํŒ๋ณ„ํ•ด Correct๋‚˜ Wrong์„ ์ถœ๋ ฅํ•œ๋‹ค. sub_140001000 ํ•จ์ˆ˜๊ฐ€ ์–ด๋–ค ํ•จ์ˆ˜์ธ์ง€ ๋”๋ธ” ํด๋ฆญํ•ด ์•Œ์•„๋ณธ๋‹ค. ๋ณต์žกํ•ด๋ณด์ธ๋‹ค. 0x18๋ฒˆ ์–ด๋–ค ๋ฌธ์ž์—ด ๋น„๊ต๋ฅผ ๋ฐ˜๋ณตํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. byte_140003000[i]๋Š” ์ž…๋ ฅํ•œ ๋ฌธ์ž์—ด์ธ ๊ฒƒ ๊ฐ™๊ณ  ์˜ค๋ฅธ์ชฝ์€ ์ข€ ๋” ๋ณด๊ธฐ ์ข‹๊ฒŒ ์ •๋ฆฌํ•˜๋ฉด ( i ^ ์ •๋‹ต๋ฌธ์ž์—ด[ i ]) + 2 * i ) ์ด๋‹ค. ์ฆ‰ ์ •๋‹ต ๋ฌธ์ž์—ด์„ ์ˆœ์„œ๋Œ€๋กœ 0๋ฒˆ๋ถ€ํ„ฐ 23๋ฒˆ๊นŒ์ง€(0x18=24) ๋ฐ˜๋ณต ํšŸ์ˆ˜์ธ i์™€ XOR ์—ฐ์‚ฐํ•œ ๋’ค 2 * i๋ฅผ ๋”ํ•ด์ค€ ๊ฒƒ์ด input ๊ฐ’์ด์–ด์•ผ ํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค. ๋””๋ฒ„๊ฑฐ๋กœ๋„ ์—ด์–ด๋ณด์ž. ๋ฌธ์ž์—ด ์ฐธ์กฐ๋ฅผ ํ†ตํ•ด input ๋ฌธ์ž์—ด์ด ๋“ค์–ด๊ฐ„ ๋ถ€๋ถ„์„ ์ฐธ์กฐํ•˜๋ฉด ๋ฉ”์ธ.. 2023. 10. 31.
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.
๊ธฐํƒ€ ๋ฆฌ๋ฒ„์‹ฑ ๋ฌธ์ œํ’€์ด: easy-crackme1 ๋ฌธ์ œ ์ดํ•ดcmd ์ฐฝ์„ ์—ด์–ด easy crackme1 ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•ด๋ณธ๋‹ค."input: " ๋’ค์— ์ˆซ์ž ๋‘ ๊ฐœ๋ฅผ ์ž…๋ ฅ ๋ฐ›์€ ๋’ค์— " Wrong"์ด ์ถœ๋ ฅ ๋๋‹ค. ๋”ฐ๋ผ์„œ Wrong์ด ๋‚˜์˜ค์ง€ ์•Š๋Š” ์ˆซ์ž 2๊ฐœ๋ฅผ ์ฐพ๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์ด๋‹ค.๋ฌธ์ œ ๊ณ„ํšX64 Debuger๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ์—ด์–ด ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์ธ์ง€ ๋ถ„์„ํ•  ์ค€๋น„๋ฅผ ํ•œ๋‹ค."Wrong"์ด๋‚˜ "Input" ๊ด€๋ จ ๋ช…๋ น์–ด๊ฐ€ ์–ด๋”” ์žˆ๋Š”์ง€ ์ฐพ์•„ main ํ•จ์ˆ˜ ๋ถ€๋ถ„์„ ์•Œ์•„๋‚ธ๋‹ค."Wrong" ๋˜๋Š” "Correct"๋ฅผ ๊ฒฐ์ •์ง“๋Š” ์ฝ”๋“œ, ๋˜๋Š” ํ•จ์ˆ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋‚ธ๋‹ค.๊ทธ ๊ฒฐ์ •์ง“๋Š” ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•ด ์–ด๋–ค ๊ฐ’์„ ์ž…๋ ฅํ•ด์•ผ ์ถœ๋ ฅ๊ฐ’์ด "Correct"๊ฐ€ ๋˜๋Š”์ง€ ์•Œ์•„๋‚ธ๋‹ค.ida๋กœ ์ถ”์ธกํ•œ ์ฝ”๋“œ๊ฐ€ ๋งž๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.๋ฌธ์ œ ์‹คํ–‰X64 Debuger๋กœ ๋ฌธ์ œ ํŒŒ์ผ์„ ์—ด์–ด์ค€๋‹ค. ์œ„์™€ ๊ฐ™์€ ํ™”๋ฉด์ด ๋ณด์ธ๋‹ค.์•„๋Š” ๊ฒƒ์€ ์ž….. 2023. 10. 9.
Dreamhack ๋ฆฌ๋ฒ„์‹ฑ ๋ฌธ์ œํ’€์ด: rev-basic-1 ๋ฌธ์ œ ์ดํ•ด ๋“œ๋ฆผํ•ต ์›Œ๊ฒŒ์ž„ ๋ฆฌ๋ฒ„์‹ฑ ๋ถ„์•ผ์—์„œ rev-basic-1 ๋ฌธ์ œ๋ฅผ ๋‹ค์šด๋กœ๋“œ ๋ฐ›์•„์ค€๋‹ค. [์œˆ๋„์šฐ+R] ํ‚ค๋ฅผ ๋ˆ„๋ฅด๊ณ  cmd ์ฐฝ์„ ์—ด์–ด์ค€๋‹ค. "cd (๋‚ด๊ฐ€ ์‹คํ–‰ํ•˜๊ณ  ์‹ถ์€ ํŒŒ์ผ ์ฃผ์†Œ)" ์ž…๋ ฅํ•˜๊ณ  "(์‹คํ–‰ ํ”„๋กœ๊ทธ๋žจ).exe"๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์œ„ ํ™”๋ฉด์ฒ˜๋Ÿผ "Input : "์ด ๋œฌ๋‹ค. ์•„๋ฌด ์ˆซ์ž๋‚˜ ์ž…๋ ฅํ•ด์คฌ๋”๋‹ˆ "Wrong"์ด ๋–ด๋‹ค. ์ด ๋ฌธ์ œ๋Š” ์ •๋‹ต์ด ๋˜๋Š” ํŠน์ • ๋ฌธ์ž๋‚˜ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋ฌธ์ œ ๊ณ„ํš X64 Debuger๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ์—ด์–ด ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์ธ์ง€ ๋ถ„์„ํ•  ์ค€๋น„๋ฅผ ํ•œ๋‹ค. "Wrong"์ด๋‚˜ "Input" ๊ด€๋ จ ๋ช…๋ น์–ด๊ฐ€ ์–ด๋”” ์žˆ๋Š”์ง€ ์ฐพ์•„ main ํ•จ์ˆ˜ ๋ถ€๋ถ„์„ ์•Œ์•„๋‚ธ๋‹ค. "Wrong" ๋˜๋Š” "Correct"๋ฅผ ๊ฒฐ์ •์ง“๋Š” ์ฝ”๋“œ, ๋˜๋Š” ํ•จ์ˆ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋‚ธ๋‹ค. ๊ทธ ๊ฒฐ์ •์ง“๋Š” ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•ด ์–ด๋–ค ๊ฐ’์„ ์ž…๋ ฅํ•ด์•ผ ์ถœ๋ ฅ๊ฐ’์ด .. 2023. 10. 9.