[๐Ÿฅ‰ Bronze 4] JPEG ๋’ค์— ๋ถ™์€ ZIP ๊บผ๋‚ด๊ธฐ โ€” DreamHack Hefty Image ํ’€์ด

2026-07-13ยท1๋ถ„ ์ฝ๊ธฐยท

[๐Ÿฅ‰ Bronze 4] JPEG ๋’ค์— ๋ถ™์€ ZIP ๊บผ๋‚ด๊ธฐ โ€” DreamHack Hefty Image ํ’€์ด

์ด๋ฏธ์ง€ ํŒŒ์ผ ํ•˜๋‚˜๋ฅผ ์ฃผ๋Š” ํฌ๋ Œ์‹ ๋ฌธ์ œ. JPEG ๋(FF D9) ๋’ค์— ZIP์ด ํ†ต์งธ๋กœ ์ด์–ด ๋ถ™์–ด ์žˆ์–ด, ๋ทฐ์–ด๋กœ๋Š” ๊ทธ๋ƒฅ ๊ทธ๋ฆผ์ด์ง€๋งŒ unzip์œผ๋กœ ์—ด๋ฉด flag.txt๊ฐ€ ๋‚˜์˜จ๋‹ค. ZIP์€ ํŒŒ์ผ ๋๋ถ€ํ„ฐ ์ฝ๋Š” ๊ตฌ์กฐ๋ผ ์•ž์— ๋ฌด์—‡์ด ๋ถ™์–ด๋„ ๊ทธ๋Œ€๋กœ ์—ด๋ฆฐ๋‹ค๋Š” ์„ฑ์งˆ์„ ์ด์šฉํ•œ ์ „ํ˜•์ ์ธ ์—ฐ๊ฒฐ(concatenation) ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ๋‹ค. flag.txt๊ฐ€ ๋ฌด์••์ถ•(Stored)์œผ๋กœ ์ €์žฅ๋ผ ์žˆ์–ด ํ—ฅ์Šค๋คํ”„๋งŒ์œผ๋กœ๋„ ๋‚ด์šฉ์ด ๊ทธ๋Œ€๋กœ ์ฝํžŒ๋‹ค.

๋ฌธ์ œ: DreamHack โ€” Hefty Image ๋ถ„๋ฅ˜: Forensics ๋‚œ์ด๋„: ๐Ÿฅ‰ Bronze 4 FLAG: DH{s1mpl3_st3g4n0gr4phy_w1th_c0nc4t}

๋ฌธ์ œ ์„ค๋ช…์€ ์ด๋ ‡๋‹ค. "์นœ๊ตฌ๊ฐ€ ์—ฌํ–‰ ์ค‘์— ์ฐ์€ ์‚ฌ์ง„์ด๋ผ๋ฉฐ ํŒŒ์ผ์„ ํ•˜๋‚˜ ๋ณด๋‚ด์™”์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, ํ‰๋ฒ”ํ•œ ์‚ฌ์ง„ ํŒŒ์ผ์น˜๊ณ ๋Š” ์šฉ๋Ÿ‰์ด ์กฐ๊ธˆ ๋ฌต์งํ•˜๋„ค์š”." ๊ทธ๋ฆผ ํŒŒ์ผ ํ•˜๋‚˜๋ฅผ ์ฃผ๋Š” ํฌ๋ Œ์‹ ๋ฌธ์ œ์ธ๋ฐ, ์—ด์–ด ๋ณด๋ฉด ํ‰๋ฒ”ํ•œ ์ด๋ฏธ์ง€์ง€๋งŒ ํŒŒ์ผ์ด ํ™”๋ฉด์— ๋ณด์ด๋Š” ๊ฒƒ๋ณด๋‹ค "๋ฌด๊ฒ๋‹ค(hefty)". JPEG๊ฐ€ ๋๋‚œ ๋’ค์— ZIP์ด ๋ชฐ๋ž˜ ์ด์–ด ๋ถ™์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋Œ€๊ตฌ๋Œ€ํ•™๊ต๊ฐ€ ์ถœ์ œํ•œ ๋ฌธ์ œ๋กœ, ๋Œ€ํ•™ ์œ„๊ฒŒ์ž„ ์†Œ๊ฐœ ์บ๋ฆญํ„ฐ ๊ณ„์ •์œผ๋กœ ๋“ฑ๋ก๋ผ ์žˆ๋‹ค.

Hefty Image ๋ฌธ์ œ ํŽ˜์ด์ง€ โ€” "ํ‰๋ฒ”ํ•œ ์‚ฌ์ง„ ํŒŒ์ผ์น˜๊ณ ๋Š” ์šฉ๋Ÿ‰์ด ์กฐ๊ธˆ ๋ฌต์งํ•˜๋„ค์š”"
Hefty Image ๋ฌธ์ œ ํŽ˜์ด์ง€ โ€” "ํ‰๋ฒ”ํ•œ ์‚ฌ์ง„ ํŒŒ์ผ์น˜๊ณ ๋Š” ์šฉ๋Ÿ‰์ด ์กฐ๊ธˆ ๋ฌต์งํ•˜๋„ค์š”"

๋ฌธ์ œ ๊ฐœ์š”

ํ•ญ๋ชฉ๋‚ด์šฉ
๋ฌธ์ œ๋ช…Hefty Image
๋‚œ์ด๋„๐Ÿฅ‰ Bronze 4
๋ถ„๋ฅ˜Forensics
์ œ๊ณต ํŒŒ์ผchallenge.jpg (5,356๋ฐ”์ดํŠธ, 500ร—500 JPEG)
ํ•ต์‹ฌ ๊ธฐ๋ฒ•JPEG ๋’ค์— ZIP์„ ์ด์–ด ๋ถ™์ธ ์—ฐ๊ฒฐ(concat) ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ

ํŒŒ์ผ ํ•˜๋‚˜๋งŒ ์žˆ์œผ๋ฉด ์˜คํ”„๋ผ์ธ์—์„œ ๋ฐ”๋กœ ํ’€๋ฆฐ๋‹ค.



๐Ÿ”ฌ ์ •์ฐฐ โ€” ๊ทธ๋ฆผ์ธ๋ฐ ์••์ถ•ํŒŒ์ผ์ด ์—ด๋ฆฐ๋‹ค

file๋กœ ๋ณด๋ฉด ๋ถ„๋ช… JPEG์ธ๋ฐ, ๊ทธ ํŒŒ์ผ์„ unzip์œผ๋กœ ์—ด์–ด ๋ณด๋ฉด ๋ชฉ๋ก์ด ๋‚˜์˜จ๋‹ค.

file challenge.jpg
unzip -l challenge.jpg
file์€ JPEG(500x500)๋ผ๊ณ  ํ•˜์ง€๋งŒ unzip -l ์€ "5206 extra bytes" ๊ฒฝ๊ณ ์™€ ํ•จ๊ป˜ flag.txt๋ฅผ ์ฐพ์•„๋‚ธ๋‹ค
file์€ JPEG(500x500)๋ผ๊ณ  ํ•˜์ง€๋งŒ unzip -l ์€ "5206 extra bytes" ๊ฒฝ๊ณ ์™€ ํ•จ๊ป˜ flag.txt๋ฅผ ์ฐพ์•„๋‚ธ๋‹ค

file์€ JPEG image data, 500ร—500์ด๋ผ๊ณ  ํ•˜์ง€๋งŒ, unzip -l challenge.jpg๋Š” "5206 extra bytes at beginning or within zipfile"์ด๋ผ๋Š” ๊ฒฝ๊ณ ๋ฅผ ๋„์šฐ๋ฉด์„œ๋„ ๊ทธ ํŒŒ์ผ ์•ˆ์—์„œ flag.txt(36๋ฐ”์ดํŠธ)๋ฅผ ๋ชฉ๋ก์œผ๋กœ ์ฐพ์•„๋‚ธ๋‹ค. ๊ฒฝ๊ณ  ๋ฌธ๊ตฌ ์ž์ฒด๊ฐ€ ํžŒํŠธ๋‹ค โ€” unzip์ด ํŒŒ์ผ ์•ž์ชฝ 5206๋ฐ”์ดํŠธ๋ฅผ "์“ธ๋ชจ์—†๋Š” ๋ค"์œผ๋กœ ์ธ์‹ํ•˜๊ณ  ๊ฑด๋„ˆ๋›ฐ์—ˆ๋‹ค๋Š” ๋œป์ด๋‹ค. ํ•œ ํŒŒ์ผ์ด ์ด๋ฏธ์ง€์ด๋ฉด์„œ ๋™์‹œ์— ์œ ํšจํ•œ ZIP์ธ ๊ฒƒ์ด๋‹ค.

๋จผ์ € ํ”ํ•œ ๋„๊ตฌ์ธ binwalk๋กœ ์ž„๋ฒ ๋””๋“œ ์‹œ๊ทธ๋‹ˆ์ฒ˜๋ฅผ ํ›‘์–ด๋ณด๋ ค ํ–ˆ๋‹ค.

binwalk challenge.jpg
binwalk ์‹คํ–‰ โ€” ์ด ํ™˜๊ฒฝ์˜ capstone ๋ฒ„์ „ ์ถฉ๋Œ๋กœ ๋ชจ๋“ˆ ์ž„ํฌํŠธ ๋‹จ๊ณ„์—์„œ ์ฃฝ๋Š”๋‹ค
binwalk ์‹คํ–‰ โ€” ์ด ํ™˜๊ฒฝ์˜ capstone ๋ฒ„์ „ ์ถฉ๋Œ๋กœ ๋ชจ๋“ˆ ์ž„ํฌํŠธ ๋‹จ๊ณ„์—์„œ ์ฃฝ๋Š”๋‹ค

์ด ํ™˜๊ฒฝ์— ์„ค์น˜๋œ binwalk(2.4.3)๊ฐ€ ๋‚ด๋ถ€์ ์œผ๋กœ ์ฐธ์กฐํ•˜๋Š” capstone.CS_ARCH_ARM64๊ฐ€ ์ตœ์‹  capstone ํŒจํ‚ค์ง€(6.0.0 ์•ŒํŒŒ)์—์„œ ์‚ฌ๋ผ์ ธ ์ž„ํฌํŠธ ๋‹จ๊ณ„๋ถ€ํ„ฐ ์ฃฝ๋Š”๋‹ค. ๋””์Šค์–ด์…ˆ๋ธ” ๊ธฐ๋Šฅ์„ ์“ฐ์ง€ ์•Š์•„๋„ ๋ชจ๋“ˆ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ˆœ๊ฐ„ ์‹คํŒจํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์˜ต์…˜์œผ๋กœ ์šฐํšŒํ•  ์ˆ˜๋„ ์—†๋‹ค. ์–ด์ฐจํ”ผ unzip -l์ด ์ด๋ฏธ ๋‹ต์„ ๋ณด์—ฌ์คฌ์œผ๋‹ˆ, ๊ตณ์ด ๋ถ™์žก์ง€ ์•Š๊ณ  ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๋„˜์–ด๊ฐ”๋‹ค.


๐Ÿ’ฃ ํ•ต์‹ฌ โ€” ๋์—์„œ ์ฝ๋Š” ZIP, ์•ž์—์„œ ๋ฉˆ์ถ”๋Š” ๋ทฐ์–ด

JPEG๋Š” FF D8๋กœ ์‹œ์ž‘ํ•ด FF D9(EOI, End Of Image)๋กœ ๋๋‚œ๋‹ค. ์ด๋ฏธ์ง€ ๋ทฐ์–ด๋Š” FF D9๋ฅผ ๋งŒ๋‚˜๋ฉด ๊ฑฐ๊ธฐ์„œ ๋ Œ๋”๋ง์„ ๋ฉˆ์ถ”๊ณ , ๊ทธ ๋’ค์— ๋ฌด์—‡์ด ์žˆ๋“  ๋ฌด์‹œํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋’ค์— ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ™์—ฌ๋„ ๊ทธ๋ฆผ์€ ๋ฉ€์ฉกํžˆ ๋ณด์ธ๋‹ค.

๋ฐ˜๋Œ€๋กœ ZIP์€ ํŒŒ์ผ ๋์— ์žˆ๋Š” ์ค‘์•™ ๋””๋ ‰ํ† ๋ฆฌ(central directory)๋ถ€ํ„ฐ ๊ฑฐ๊พธ๋กœ ์ฝ๋Š” ๊ตฌ์กฐ๋‹ค. ๊ทธ๋ž˜์„œ ZIP ์•ž์— ์•„๋ฌด ๋ฐ์ดํ„ฐ(์—ฌ๊ธฐ์„œ๋Š” JPEG ์ „์ฒด)๊ฐ€ ๋ถ™์–ด ์žˆ์–ด๋„ unzip์€ ๋์—์„œ๋ถ€ํ„ฐ ์ •์ƒ ๊ตฌ์กฐ๋ฅผ ์ฐพ์•„ ์—ด์–ด ์ค€๋‹ค.

์ด ๋‘˜์„ ํ•ฉ์น˜๋ฉด, [JPEG ... FF D9][ZIP ... flag.txt] ํ•œ ํŒŒ์ผ์ด ๋ทฐ์–ด์—๊ฒ ๊ทธ๋ฆผ, unzip์—๊ฒ ์••์ถ•ํŒŒ์ผ๋กœ ๋™์‹œ์— ๋™์ž‘ํ•œ๋‹ค. ์‹ค์ œ๋กœ ๊ฒฝ๊ณ„๋ฅผ ์ง์ ‘ ์ฐพ์•„ ํ™•์ธํ–ˆ๋‹ค.

d = open("challenge.jpg", "rb").read()
i = d.find(b"\xff\xd9")
print("์ „์ฒด ํฌ๊ธฐ:", len(d))
print("JPEG EOI(FFD9) ๋์œ„์น˜:", i + 2)
print("๊ทธ ์งํ›„ 4๋ฐ”์ดํŠธ:", d[i + 2:i + 6])
๊ฒฝ๊ณ„ ํ™•์ธ โ€” FFD9 ์งํ›„ 4๋ฐ”์ดํŠธ๊ฐ€ ์ •ํ™•ํžˆ PK\x03\x04(ZIP ๋กœ์ปฌ ํ—ค๋” ์‹œ๊ทธ๋‹ˆ์ฒ˜), flag.txt ๋‚ด์šฉ๊นŒ์ง€ ํ—ฅ์Šค๋คํ”„์— ๊ทธ๋Œ€๋กœ ๋…ธ์ถœ
๊ฒฝ๊ณ„ ํ™•์ธ โ€” FFD9 ์งํ›„ 4๋ฐ”์ดํŠธ๊ฐ€ ์ •ํ™•ํžˆ PK\x03\x04(ZIP ๋กœ์ปฌ ํ—ค๋” ์‹œ๊ทธ๋‹ˆ์ฒ˜), flag.txt ๋‚ด์šฉ๊นŒ์ง€ ํ—ฅ์Šค๋คํ”„์— ๊ทธ๋Œ€๋กœ ๋…ธ์ถœ

FF D9๊ฐ€ ๋๋‚˜๋Š” 5206๋ฒˆ์งธ ๋ฐ”์ดํŠธ ๋ฐ”๋กœ ๋‹ค์Œ์ด ์ •ํ™•ํžˆ PK\x03\x04 โ€” ZIP ๋กœ์ปฌ ํŒŒ์ผ ํ—ค๋”์˜ ๋งค์ง ์‹œ๊ทธ๋‹ˆ์ฒ˜๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ํ—ฅ์Šค๋คํ”„๋ฅผ ๋ณด๋ฉด flag.txt๋ผ๋Š” ํŒŒ์ผ๋ช… ๋ฌธ์ž์—ด๊ณผ, ๊ทธ ๋’ค๋กœ DH{s1mpl3_st3g4n0gr4phy_w1th_c0nc4t}๋ผ๋Š” ํ”Œ๋ž˜๊ทธ ๋ณธ๋ฌธ์ด ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ASCII๋กœ ๊ทธ๋Œ€๋กœ ์ฐํ˜€ ์žˆ๋‹ค. unzip -lv๋กœ ์••์ถ• ๋ฐฉ์‹์„ ํ™•์ธํ•ด๋ณด๋ฉด Stored(0% ์••์ถ•, ๋ฌด์••์ถ• ์ €์žฅ)๋ผ๊ณ  ๋‚˜์˜ค๋Š”๋ฐ, ๊ทธ๋ž˜์„œ ์••์ถ•์„ ํ’€ ํ•„์š”๋„ ์—†์ด ํ—ฅ์Šค๋คํ”„๋งŒ์œผ๋กœ ๋‚ด์šฉ์ด ๊ทธ๋Œ€๋กœ ๋…ธ์ถœ๋œ ๊ฒƒ์ด๋‹ค โ€” ์••์ถ•(Deflate)๋ผ ์žˆ์—ˆ๋‹ค๋ฉด ์ด๋ ‡๊ฒŒ ํ‰๋ฌธ์œผ๋กœ ๋ณด์ด์ง€ ์•Š์•˜์„ ๊ฒƒ์ด๋‹ค.

JPEG(FF D9๋กœ ๋)์™€ ZIP(flag.txt ํฌํ•จ)์ด ํ•œ ํŒŒ์ผ์— ์ด์–ด๋ถ™์–ด ์žˆ๊ณ , unzip์€ ํŒŒ์ผ ๋๋ถ€ํ„ฐ ์ฝ์–ด ์—ด๋ฆฐ๋‹ค
JPEG(FF D9๋กœ ๋)์™€ ZIP(flag.txt ํฌํ•จ)์ด ํ•œ ํŒŒ์ผ์— ์ด์–ด๋ถ™์–ด ์žˆ๊ณ , unzip์€ ํŒŒ์ผ ๋๋ถ€ํ„ฐ ์ฝ์–ด ์—ด๋ฆฐ๋‹ค


๐ŸŽฏ ํ’€์ด โ€” unzip -p

๋ชฉ๋ก์— flag.txt๊ฐ€ ์žˆ์œผ๋‹ˆ ๊ทธ๋Œ€๋กœ ๊บผ๋‚ด๋ฉด ๋œ๋‹ค. ์••์ถ•์„ ํ’€์–ด ํŒŒ์ผ์„ ๋‚จ๊ธฐ์ง€ ์•Š๊ณ  ๋‚ด์šฉ๋งŒ ํ‘œ์ค€์ถœ๋ ฅ์œผ๋กœ ๋ฝ‘๋Š”๋‹ค.

unzip -p challenge.jpg flag.txt
unzip -p ๋กœ challenge.jpg ์•ˆ์˜ flag.txt ๋‚ด์šฉ์„ ์ถœ๋ ฅํ•˜๋‹ˆ ํ”Œ๋ž˜๊ทธ๊ฐ€ ๋‚˜์˜จ๋‹ค
unzip -p ๋กœ challenge.jpg ์•ˆ์˜ flag.txt ๋‚ด์šฉ์„ ์ถœ๋ ฅํ•˜๋‹ˆ ํ”Œ๋ž˜๊ทธ๊ฐ€ ๋‚˜์˜จ๋‹ค

flag.txt์˜ ๋‚ด์šฉ์ด ๊ทธ๋Œ€๋กœ ํ”Œ๋ž˜๊ทธ๋‹ค. ๋ฌธ์ œ ์ด๋ฆ„ Hefty Image(๋ฌด๊ฑฐ์šด ์ด๋ฏธ์ง€)์™€ ํ”Œ๋ž˜๊ทธ ๋ฌธ๊ตฌ(s1mpl3 st3g4n0gr4phy w1th c0nc4t, ์—ฐ๊ฒฐ๋กœ ๋งŒ๋“  ๊ฐ„๋‹จํ•œ ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ)๊ฐ€ ๊ทธ๋Œ€๋กœ ๊ธฐ๋ฒ•์„ ๋งํ•ด ์ค€๋‹ค.

FLAG: DH{s1mpl3_st3g4n0gr4phy_w1th_c0nc4t}


๐Ÿ“ ๊ฒฐ๋ก 

"๋ณด์ด๋Š” ๊ฒƒ"๊ณผ "ํŒŒ์ผ ์ „์ฒด"๋Š” ๋‹ค๋ฅด๋‹ค. ์ด๋ฏธ์ง€ ๋ทฐ์–ด๊ฐ€ ๋ณด์—ฌ ์ฃผ๋Š” ๊ฑด FF D9๊นŒ์ง€์ผ ๋ฟ, ํŒŒ์ผ์—๋Š” ๊ทธ ๋’ค๊ฐ€ ๋” ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ํŒŒ์ผ ํฌ๊ธฐ๊ฐ€ ํ™”๋ฉด ๋‚ด์šฉ์— ๋น„ํ•ด ํฌ๋ฉด(hefty), ๋’ค์— ๋ญ”๊ฐ€ ์ด์–ด ๋ถ™์—ˆ๋Š”์ง€๋ถ€ํ„ฐ ์˜์‹ฌํ•œ๋‹ค. file์€ ์•ž๋ถ€๋ถ„๋งŒ ๋ณด๊ณ  ํŒ๋‹จํ•˜๋‹ˆ ๊ทธ ๋ง๋งŒ ๋ฏฟ์–ด์„  ์•ˆ ๋œ๋‹ค.

ํฌ๋งท๋งˆ๋‹ค ์ฝ๋Š” ๋ฐฉํ–ฅ์ด ๋‹ค๋ฅด๋‹ค. JPEG๋Š” ์•ž์—์„œ, ZIP์€ ๋’ค์—์„œ ์ฝ๋Š”๋‹ค. ์ด ๋ฐฉํ–ฅ ์ฐจ์ด ๋•Œ๋ฌธ์— ๋‘ ํฌ๋งท์„ ํ•œ ํŒŒ์ผ์— ๊ฒน์ณ ๋‘˜ ์ˆ˜ ์žˆ๋‹ค. ํฌ๋ Œ์‹์—์„œ ํŒŒ์ผ์ด ์ˆ˜์ƒํ•˜๋ฉด unzip -l, ํŒŒ์ผ ๋๋ถ€๋ถ„ hex ๋คํ”„๋กœ ๋‹ค๋ฅธ ์‹œ๊ทธ๋‹ˆ์ฒ˜(PK, FF D8, %PDF ๋“ฑ)๊ฐ€ ์„ž์—ฌ ์žˆ๋Š”์ง€๋ถ€ํ„ฐ ํ›‘๋Š” ์Šต๊ด€์ด ์œ ์šฉํ•˜๋‹ค โ€” binwalk ๊ฐ™์€ ์ž๋™ํ™” ๋„๊ตฌ๊ฐ€ ๋Œ์•„๊ฐ€๋ฉด ๊ฐ€์žฅ ํŽธํ•˜์ง€๋งŒ, ์ด๋ฒˆ์ฒ˜๋Ÿผ ๋„๊ตฌ๊ฐ€ ๋ง์ฝ์ด์–ด๋„ ์‹œ๊ทธ๋‹ˆ์ฒ˜ ๋ช‡ ๊ฐœ๋งŒ ์†์œผ๋กœ ์ฐพ์œผ๋ฉด ๋˜‘๊ฐ™์€ ๊ฒฐ๋ก ์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ๋‹ค.

์••์ถ• ๋ฐฉ์‹๋„ ์ •๋ณด๋ฅผ ํ˜๋ฆฐ๋‹ค. ZIP ์•ˆ์— ๋„ฃ์„ ๋•Œ ์••์ถ•(Deflate) ๋Œ€์‹  ๋ฌด์••์ถ•(Stored)์„ ์“ฐ๋ฉด ํŽธ์ง‘๊ธฐ๋‚˜ ํ—ฅ์Šค๋ทฐ์–ด๋กœ ์—ด์—ˆ์„ ๋•Œ ๋‚ด์šฉ์ด ๊ทธ๋Œ€๋กœ ๋…ธ์ถœ๋œ๋‹ค. ์ง„์งœ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆจ๊ธฐ๊ณ  ์‹ถ๋‹ค๋ฉด ์••์ถ•์€ ๋ฌผ๋ก ์ด๊ณ  ์ตœ์†Œํ•œ์˜ ์•”ํ˜ธํ™”๋ผ๋„ ๊ณ๋“ค์—ฌ์•ผ ํ•œ๋‹ค๋Š” ๋ฐ˜๋ฉด๊ต์‚ฌ์ด๊ธฐ๋„ ํ•˜๋‹ค.

์ด ๊ธ€์ด ๋„์›€์ด ๋๋‚˜์š”?

Comments

๋Œ“๊ธ€

0๊ฐœ

๋Œ“๊ธ€์„ ๋‚จ๊ธฐ๋ ค๋ฉด ๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•ด์š”. (๋„ค์ด๋ฒ„ ยท ๊ตฌ๊ธ€ ๊ณ„์ •)

๋Œ“๊ธ€ ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ค‘โ€ฆ

Related

๊ด€๋ จ ๊ธ€

3๊ฐœ
[๐Ÿฅ‰ Bronze 1] LSB์—” ์—†๋‹ค, ์ฃผํŒŒ์ˆ˜์— ์žˆ๋‹ค โ€” DreamHack Audio Steganography ํ’€์ด
blog

[๐Ÿฅ‰ Bronze 1] LSB์—” ์—†๋‹ค, ์ฃผํŒŒ์ˆ˜์— ์žˆ๋‹ค โ€” DreamHack Audio Steganography ํ’€์ด

6์ดˆ์งœ๋ฆฌ WAV ํŒŒ์ผ ํ•˜๋‚˜๊ฐ€ ์ „๋ถ€์ธ ํฌ๋ Œ์‹ ๋ฌธ์ œ. ์˜ค๋””์˜ค ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ๋ผ๊ณ  ํ•˜๋ฉด ๋ฐ˜์‚ฌ์ ์œผ๋กœ LSB(์ตœํ•˜์œ„ ๋น„ํŠธ)๋ถ€ํ„ฐ ๋ฝ‘์•„๋ณด๊ฒŒ ๋˜๋Š”๋ฐ, ๊ทธ๋ ‡๊ฒŒ ๋‚˜์˜จ ๊ฒฐ๊ณผ๋Š” ๊ทธ๋ƒฅ ์žก์Œ์ด๋‹ค. "์ด์ƒํ•œ ์†Œ๋ฆฌ๊ฐ€ ๋‚˜์š”"๋ผ๋Š” ๋ฌธ์ œ ์„ค๋ช…์„ ๋‹ค์‹œ ์ฝ๊ณ  ์ŠคํŽ™ํŠธ๋กœ๊ทธ๋žจ์„ ์ฐ์–ด๋ณด๋ฉด, ์ฃผํŒŒ์ˆ˜ ์˜์—ญ์— flag ๋ฌธ์ž์—ด์ด ๊ธ€์ž ๋ชจ์–‘ ๊ทธ๋Œ€๋กœ ๊ทธ๋ ค์ ธ ์žˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ๋น„ํŠธ์— ์ˆจ๊ธด ๊ฒŒ ์•„๋‹ˆ๋ผ ์ง„ํญ์„ ๋ถ“ ์‚ผ์•„ ๊ทธ๋ฆผ์„ ๊ทธ๋ฆฐ, Aphex Twin๋ฅ˜ ์ŠคํŽ™ํŠธ๋กœ๊ทธ๋žจ ์•„ํŠธ๋‹ค.
#dreamhack#ctf#forensics+4
2026-07-20#dreamhack +4
[๐Ÿฅˆ Silver 4] ์ค„ ๋ ๊ณต๋ฐฑ์— ์ˆจ์€ ํ”Œ๋ž˜๊ทธ โ€” SNOW ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ (DreamHack Snowing! ํ’€์ด)
blog

[๐Ÿฅˆ Silver 4] ์ค„ ๋ ๊ณต๋ฐฑ์— ์ˆจ์€ ํ”Œ๋ž˜๊ทธ โ€” SNOW ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ (DreamHack Snowing! ํ’€์ด)

flag.txt ์—๋Š” ๋ฏธ๋ผ DH{fake_snow} ๋’ค๋กœ ๋ˆˆ์— ์•ˆ ๋ณด์ด๋Š” ๊ณต๋ฐฑ๊ณผ ํƒญ์ด ์ž”๋œฉ ๋ถ™์–ด ์žˆ๋‹ค. ๋ฌธ์ œ๋ช… "Snowing!" ์ด ๊ฐ€๋ฆฌํ‚ค๋Š” SNOW ํ™”์ดํŠธ์ŠคํŽ˜์ด์Šค ์Šคํ…Œ๊ฐ€๋…ธ๊ทธ๋ž˜ํ”ผ๋‹ค. ๋ฐ”์ดํŠธ/ํŒจํ„ด์„ ์‹œ๊ฐํ™”ํ•ด ์ •์ฒด๋ฅผ ํ™•์ธํ•˜๊ณ , ๊ณ๋“ค์—ฌ์ง„ Snow.jpeg ๊ฐ€ ํ•จ์ •์ž„์„ ํฌ๋ Œ์‹์œผ๋กœ ๋ฐฐ์ œํ•œ ๋’ค, stegsnow -C ๋กœ ๋ณตํ˜ธํ•ด Snow ๋ฐ˜๋ณต ์‚ฌ์ด์˜ ์ง„์งœ ํ”Œ๋ž˜๊ทธ๋ฅผ ๊บผ๋‚ธ๋‹ค.
#dreamhack#ctf#forensics+5
2026-07-08#dreamhack +4
[๐Ÿฅ‰ Bronze 3] IEND ๋’ค์— ์ˆจ๊ธด ์•”ํ˜ธ๋ฌธ, ๊ทธ๋ฆฌ๊ณ  ํ‚ค๋ฅผ ์—ญ์‚ฐํ•œ Vigenรจre โ€” DreamHack hidden_vigenere ํ’€์ด
blog

[๐Ÿฅ‰ Bronze 3] IEND ๋’ค์— ์ˆจ๊ธด ์•”ํ˜ธ๋ฌธ, ๊ทธ๋ฆฌ๊ณ  ํ‚ค๋ฅผ ์—ญ์‚ฐํ•œ Vigenรจre โ€” DreamHack hidden_vigenere ํ’€์ด

๋ฒ”์ฃ„ ์กฐ์ง์—๊ฒŒ์„œ ์••์ˆ˜ํ•œ PNG๋Š” ๊ฒ‰๋ณด๊ธฐ์—” ํ‰๋ฒ”ํ•œ ๊ทธ๋ฆผ์ด๋‹ค. ํ•˜์ง€๋งŒ IEND ์ฒญํฌ ๋’ค์— 29๋ฐ”์ดํŠธ์งœ๋ฆฌ ์•”ํ˜ธ๋ฌธ์ด ๊ผฌ๋ฆฌ์ฒ˜๋Ÿผ ๋ถ™์–ด ์žˆ๋‹ค. ํ”Œ๋ž˜๊ทธ ํ˜•์‹์ด bisc2024๋กœ ์‹œ์ž‘ํ•œ๋‹ค๋Š” ๊ฑธ ์•Œ๋ฉด, ์•”ํ˜ธ๋ฌธ ์•ž๋จธ๋ฆฌ๋กœ Vigenรจre ํ‚ค๋ฅผ ์—ญ์‚ฐํ•  ์ˆ˜ ์žˆ๊ณ , ๊ทธ ํ‚ค๋กœ ์ „์ฒด๋ฅผ ๋ณตํ˜ธํ•˜๋ฉด ํ”Œ๋ž˜๊ทธ๊ฐ€ ๋‚˜์˜จ๋‹ค.
#dreamhack#ctf#misc+3
2026-07-15#dreamhack +3