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

SWUFORCE/์›Œ๊ฒŒ์ž„ ํ’€์ด

(42)
[+ ์ถ”๊ฐ€ ๊ฐœ๋… ๊ณต๋ถ€] ๋ธŒ๋ฃจํŠธํฌ์Šค ๋ณดํ˜ธ๋˜์–ด ์žˆ๋Š” ๊ธ€์ž…๋‹ˆ๋‹ค.
[Dreamhack] Small Counter (reversing) ๋ฌธ์ œ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ํ›„ ์••์ถ• ํ’€๋ฉด chall์ด๋ผ๋Š” ํŒŒ์ผ ํ•œ ๊ฐœ ์žˆ์Œ.ํ™•์žฅ์ž ์•ˆ ๋ณด์ž„. ๋ฐ”๋กœ IDA ๋„ฃ์–ด์„œ ์—ด๊ณ , ๋””์ปดํŒŒ์ผ๋ง ์™„. ๋ฌธ์ œ ์ œ๋ชฉ์ฒ˜๋Ÿผ counter ๊ด€๋ จ ์ฝ”๋“œ์ธ ๋“ฏ.src ๋ณ€์ˆ˜์— ํ”Œ๋ž˜๊ทธ ์ €์žฅ → memcpy ์‚ฌ์šฉํ•ด dest๋กœ ๋ณต์‚ฌ๋จ. ์—ฌ๊ธฐ์„œ ๊ฐ์„ ์ž˜ ๋ชป ์žก๊ฒ ์–ด์„œ, ๋“œ๋ฆผํ•ต ๋ฌธ์ œ ๋Œ“๊ธ€์„ ๋ณด๋‹ˆ๊นŒ gdb๋ฅผ ์ด์šฉํ•˜๋ผ๋Š” ๋ง์ด ์žˆ์—ˆ์Œ.gdb... ์–ด๋””์„œ ๋“ค์–ด๋ณธ ๊ฒƒ ๊ฐ™๊ธด ํ•œ๋ฐ ํ•œ ๋ฒˆ๋„ ํ™œ์šฉ์€ ์•ˆํ•ด๋ด„ ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ์—์„œ gdb ๊น”๊ณ  chall ์ฝ”๋“œ ๋””์Šค์–ด์…ˆ๋ธ”ํ•ด์„œ ํ™•์ธํ•ด ๋ดค๋‹ค. ๋‘ ๋ฒˆ์งธ ์‚ฌ์ง„ ์•„๋ž˜์ชฝ์— 0x00000000000015d3 :   call   0x11c9  ๋ผ๋Š” ํ•จ์ˆ˜ ํ˜ธ์ถœ ๋ถ€๋ถ„์ด ์žˆ๋Š”๋ฐ, ๋ฌธ์ œ ์„ค๋ช…์—์„œ ๋งํ•œ 'ํ”Œ๋ž˜๊ทธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํ•จ์ˆ˜ flag_gen()์„ ํ˜ธ์ถœํ•˜๊ณ  ํ”Œ๋ž˜๊ทธ๋ฅผ ์ถœ๋ ฅํ•˜์„ธ์š”'์˜ ๊ทธ ํ•จ์ˆ˜์ธ ๊ฑธ ์•Œ ์ˆ˜..
[H4CKING GAME] Season1 : Real PHP LFI (Web) ์›น์‚ฌ์ดํŠธ์— ์ ‘์†ํ•œ ๋ชจ์Šต์€ ์œ„์™€ ๊ฐ™๋‹ค.์•„๋งˆ ์ด์ „ ๋ฌธ์ œ์ธ 'Smuggling'๊ณผ ๋น„์Šทํ•œ ๋ฐฉ์‹์œผ๋กœ ํ’€์ดํ•˜๋Š” ๋ฌธ์ œ์ธ๋“ฏ.๋ฌธ์ œ ํŒŒ์ผ์„ ๋‹ค์šด๋ฐ›์•„ ์—ด์–ด๋ดค๋‹ค.   ์ด index.php ์ฝ”๋“œ์—์„œ ์ทจ์•ฝ์ ์ด ๋ฐœ์ƒํ•˜๋Š”๋ฐ, 10๋ฒˆ์งธ ๋ผ์ธ์„ ๋ณด๋ฉด '$$'๋ผ๋Š” ๋ฌธ์ž๊ฐ€ ์“ฐ์ธ ๊ฑธ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. $$๋Š” php์˜ ๊ฐ€๋ณ€๋ณ€์ˆ˜ ์„ ์–ธ ์‹œ ์‚ฌ์šฉ๋˜๋Š” ๊ตฌ๋ฌธ์ธ๋ฐ, ์—ฌ๊ธฐ์„œ 13๋ฒˆ์งธ ๋ผ์ธ์˜ ($_SESSION['include_path'])๋ฅผ ๋ฎ์œผ๋ฉด ํ”Œ๋ž˜๊ทธ๋ฅผ ํš๋“ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ๋ณด์ธ๋‹ค.๊ทธ๋Ÿฐ๋ฐ smuggling ๋ฌธ์ œ์™€ ๋น„์Šทํ•˜๊ฒŒ, ์ด ๋ฌธ์ œ์—์„œ ์—ญ์‹œ ํ•„ํ„ฐ๋ง๋˜๊ณ  ์žˆ๋Š” ๋ฌธ์ž๋“ค์ด ์žˆ๋‹ค.์—ฌ๊ธฐ์„œ๋Š” /, _, SESSION์ด ํ•„ํ„ฐ๋ง๋˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— URL encoding์„ ์‚ฌ์šฉํ•ด ์šฐํšŒ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ์ด๋ฒˆ์—๋„ ์—ญ์‹œ ๋ณ€์กฐ๋ฅผ ์œ„ํ•œ ์‚ฌ์ดํŠธ (https://dencode.com/)..
[H4CKING GAME] Season1 : Smuggling (Web) ์›น์‚ฌ์ดํŠธ ์ ‘์†ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํ™”๋ฉด์ด ๋‚˜์˜จ๋‹ค. ์‚ฌ์ดํŠธ ๋‚ด๋ถ€์— ํŠน๋ณ„ํ•œ ๊ธฐ๋Šฅ์ด ์žˆ๋Š” ๊ฑธ๋กœ ๋ณด์ด์ง„ ์•Š๋Š”๋‹ค.  ๋ฌธ์ œ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•ด์„œ ์ฝ”๋“œ๋ฅผ ๋จผ์ € ์‚ดํŽด๋ณด์•˜๋‹ค. ์ด ๋„ค ๊ฐœ์˜ ํŒŒ์ผ์ด ์žˆ๊ณ , config๋ผ๋Š” ํด๋” ๋‚ด์—๋Š” haproxy.cfg๋ผ๋Š” ํŒŒ์ผ ํ•œ ๊ฐœ๊ฐ€ ์กด์žฌํ•œ๋‹ค. main.py๋ฅผ ์—ด์–ด๋ดค๋‹ค. 15๋ฒˆ์งธ ๋ผ์ธ์„ ๋ณด๋ฉด, /flag ๊ฒฝ๋กœ๋กœ ์ ‘์†ํ–ˆ์„ ๋•Œ flag ๊ฐ’์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.ํ•ด๋‹น ๋ฌธ์ œ๋Š” url๋ฅผ ์ง์ ‘ ์ˆ˜์ •ํ•˜์—ฌ, /flag๋กœ ์ ‘์†ํ•ด flag ๊ฐ’์„ ์–ป์–ด์•ผ ํ•˜๋Š” ๋ฐฉ์‹์ธ ๋“ฏํ•˜๋‹ค.  ๋‹ค์Œ์œผ๋กœ haproxy.cfg๋ฅผ ์—ด์–ด ๋ดค๋‹ค. 10๋ฒˆ์งธ, 11๋ฒˆ์งธ ๋ผ์ธ์„ ๋ณด๋ฉด /flag ํ˜น์€ //๋กœ ์š”์ฒญํ–ˆ์„ ์‹œ ๊ฑฐ๋ถ€ํ•œ๋‹ค๋Š”?.. ๋‚ด์šฉ์ธ ๊ฑธ ์•Œ ์ˆ˜ ์žˆ๋‹ค.main.py์—์„œ๋Š” /flag ๊ฒฝ๋กœ๋กœ ์ ‘์†ํ–ˆ์„ ๋•Œ flag ๊ฐ’์„ ์–ป์„..
[H4CKING GAME] Hello,Postman (Cryptography) ๋ฌธ์ œ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด jpg ํŒŒ์ผ ํ•˜๋‚˜, jpeg ํŒŒ์ผ ํ•˜๋‚˜ ๋‚˜์˜จ๋‹ค.  hello_postman.jpg๋Š” ์ด๋ ‡๊ฒŒ ์ƒ๊น€๋ฐ”์ฝ”๋“œ ๊ฐ™๊ธฐ๋„ ํ•˜๊ณ  ๋…น์Œํ•œ ์Œ์„ฑ ํŒŒ์ผ ๋ญ ๊ทธ๋Ÿฐ ๊ฒƒ ๊ฐ™๊ธฐ๋„ ํ•˜๊ณ ...์ด๊ฒŒ ํžŒํŠธ๋ผ๋Š”๋ฐ ๋ฌด์Šจ ์˜๋ฏธ์ธ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ๋‹ค.๊ทธ๋ƒฅ postman์Šค๋Ÿฌ์›€ ๊ตฌ๊ธ€์— ์ฐพ์•„ ๋ณด๋‹ˆ๊นŒ Hello_Postman.jpg์ฒ˜๋Ÿผ ์ƒ๊ธด ํ˜•ํƒœ์˜ ๋ฐ”์ฝ”๋“œ๊ฐ€ ์‹ค์ œ๋กœ ์กด์žฌํ•œ๋‹ค!Intelligent Mail barcode๋ผ๊ณ  ํ•ด์„œ IMB๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ๋ฐ”์ฝ”๋“œ์˜ ๋ชจ์Šต์ธ ๋“ฏ.์ด๊ฑธ ๋ณ€ํ™˜ ๊ฐ€๋Šฅํ•œ ์‚ฌ์ดํŠธ ๊ฐ™์€ ๊ฒŒ ์žˆ์„๊นŒ ์‹ถ์–ด ์ฐพ์•„๋ด„.  https://online-barcode-reader.inliteresearch.com/์ง„์งœ ์žˆ๋‹ค.์—ฌ๊ธฐ์„œ ์„ธ ๋ฒˆ์งธ์˜ Postal: IBM ํด๋ฆญํ•˜๊ณ  ์ด๋ฏธ์ง€ ํŒŒ์ผ ์—…๋กœ๋“œํ•ด ๋ณด๊ฒ ๋‹ค ๋ณ€ํ™˜ํ•˜๋ฉด ์œ„์ฒ˜๋Ÿผ ์ˆซ์ž ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ..
[H4CKING GAME] Keygen (rev) exe ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•ด ์—ด์—ˆ๋‹ค.์•Œ๋งž์€ flag๋ฅผ ์ž…๋ ฅํ•ด์•ผ ๋ญ”๊ฐ€ ์ถœ๋ ฅ๋˜๋Š” ํ˜•ํƒœ๋กœ ์ถ”์ •.  notepad++ ์‚ฌ์šฉํ•ด์„œ exe ํŒŒ์ผ ์—ด์—ˆ๋”๋‹ˆ ๊นจ์ ธ์„œ.. ใ…Žใ…ŽIDA freeware ์‚ฌ์šฉํ•ด์„œ ์—ด์—ˆ๋‹ค.main ํ•จ์ˆ˜ ๋ถ€๋ถ„ ์ฐพ์•˜๋‹ค. ์ด ์ƒํƒœ๋กœ๋Š” ํ•ด์„์ด ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์—, F5 ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ๋””์ปดํŒŒ์ผํ•œ๋‹ค. int __fastcall main(int argc, const char **argv, const char **envp){ int i; // [rsp+20h] [rbp-48h] char Buf2[24]; // [rsp+28h] [rbp-40h] BYREF char Buf1[24]; // [rsp+40h] [rbp-28h] BYREF strcpy(Buf2, "?;FJDnv8dw8lRulyRmmt"); memset(B..
[H4CKING GAME] Season1 : art (Forensics) ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ํ•ด๋ณด๋ฉด ์ด๋ฒˆ์—” ํŒŒ์ผ์ด .mp4๋‹ค๋‹ค์šด๋ฐ›์•„์„œ ์—ด๋ฉด ์ด๋ ‡๊ฒŒ ํŒŒ์ผ์ด ์†์ƒ๋˜์—ˆ๋‹ค๊ณ  ๋‚˜์˜ด.์†์ƒ๋œ ๊ฑธ ๋ณต๊ตฌ์‹œํ‚ค๋ฉด ํ”Œ๋ž˜๊ทธ ํš๋“์ด ๊ฐ€๋Šฅ?  ์šฐ์„ ์€ HxD๋กœ ํŒŒ์ผ์„ ์—ด์—ˆ๋‹ค. ์†์ƒ๋˜์–ด์„œ์ธ์ง€ ํŒŒ์ผ์„ ๊นŒ ๋ณด๋ฉด ๋ญ๊ฐ€ ์—†๋‹ค.์šฉ๋Ÿ‰์ด ์ปค์„œ ์Šคํฌ๋กค์ด ์ž‘์€ ๊ฑธ ๋ณด๋ฉด ๋ญ”๊ฐ€ ์ˆจ์–ด์žˆ์„ ๊ฒƒ ๊ฐ™๊ธด ํ•œ๋ฐ... ์ด๋ ‡๊ฒŒ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๋ถ€๋ถ„์ด ์กด์žฌ๊ทธ๋Ÿฐ๋ฐ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ์€ ์—†๋‹ค. ์—ฌ๊ธฐ ๋ง๊ณ ๋„ ๋‹ค๋ฅธ ๋ถ€๋ถ„์—๋„ ๋ฐ์ดํ„ฐ ์˜์—ญ ์žˆ์Œ.flag ๊ด€๋ จ ๋‚ด์šฉ์ด ์žˆ์„๊นŒ ์‹ถ์–ด flag๋กœ ๊ฒ€์ƒ‰์„ ํ•ด๋ดค์Œ์ด๋Ÿฐ ๋‚ด์šฉ์ด ๋‚˜์™”๋‹ค๊ทผ๋ฐ ์—ฌ๊ธฐ ์ง์ ‘์ ์ธ ํ”Œ๋ž˜๊ทธ ๋‚ด์šฉ์ด ๋‚˜์™€ ์žˆ์ง„ ์•Š์Œ volatility ์ด์šฉํ•ด์„œ ํ’€์ดํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ. ๊ทผ๋ฐ ๋ณผ๋ผํ‹ธ๋ฆฌํ‹ฐ ์‚ฌ์šฉ๋ฒ• ๊นŒ๋จน์—ˆ๋‹คใ…Žใ…Ž. ๊ตฌ๊ธ€๋ง์œผ๋กœ ๋‹ค์‹œ ๊ณต๋ถ€ํ•จ ๋ณผ๋ผํ‹ธ๋ฆฌํ‹ฐ ์žˆ๋Š” ํด๋”์— ๋‚ด๊ฐ€ ๋ถ„์„ํ•  data.mp4 ํŒŒ์ผ ๋„ฃ๊ณ  cmd ์ฐฝ ์—ด์–ด์„œ ์•„..
[H4CKING GAME] Season1 : CODE (Forensics) code.bmp ํŒŒ์ผBMP ํŒŒ์ผ์ด๋ž€?BMP๋Š” ๋น„ํŠธ๋งต(Bitmap)์˜ ์ค„์ž„๋ง๋กœ, ์–ด๋–ค ๋””๋ฐ”์ด์Šค์—์„œ๋„ ์ •ํ™•ํ•˜๊ฒŒ ์ด๋ฏธ์ง€๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ๋Š” ํŒŒ์ผ ํฌ๋งท.๊ฐ๊ฐ์˜ ์ด๋ฏธ์ง€ ํ”ฝ์…€์„ ๊ณ ์œ ํ•œ ๊ฐœ์ฒด๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ํŠน์ง• ๋•Œ๋ฌธ์— ์ด๋ฏธ์ง€ ํ’ˆ์งˆ์ด ์ข‹๊ณ  ์„ธ๋ถ€ ์ •๋ณด๋„ ๋งŽ์ŒํŒŒ์ผ ํฌ๊ธฐ๊ฐ€ ํฌ์ง€๋งŒ ๊ทธ๋งŒํผ ํŽธ์ง‘๋„ ์‰ฝ๋‹ค. ์œก์•ˆ์œผ๋กœ ํ”Œ๋ž˜๊ทธ ์‹๋ณ„ ๊ฐ€๋Šฅํ•œ ๊ฑด ์•„๋‹Œ ๊ฒƒ ๊ฐ™์•„์„œ, HxD๋กœ ๊นŒ๋ดค๋‹ค BMP ํŒŒ์ผ ๊ตฌ์กฐ๋ฅผ ๋จผ์ € ์•Œ์•„์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค.BMP์˜ ํŒŒ์ผ ํ—ค๋”๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.์ด๋ฆ„ํฌ๊ธฐ์„ค๋ช…bfType2.bmp ํŒŒ์ผ์˜ ์‹œ๊ทธ๋‹ˆ์ฒ˜ (0x42 0x4D = BM)bfSize4ํ•ด๋‹น ํŒŒ์ผ์˜ ์ „์ฒด ํฌ๊ธฐ (Bytes)bfReserved12์˜ˆ์•ฝ๋œ ์˜์—ญ. ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.bfReserved22์˜ˆ์•ฝ๋œ ์˜์—ญ 2. ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.bfOffBits4์‹ค์งˆ์ ์ธ ๋ฐ์ดํ„ฐ์˜ ์‹œ์ž‘ ..