LUKS2 ํŒŒํ‹ฐ์…˜์—์„œ ์•”ํ˜ธํ™”๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ๋Š” cryptsetup์˜ ์ทจ์•ฝ์ 

Linux์—์„œ ๋””์Šคํฌ ํŒŒํ‹ฐ์…˜์„ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” Cryptsetup ํŒจํ‚ค์ง€์—์„œ ์ทจ์•ฝ์ (CVE-2021-4122)์ด ํ™•์ธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ LUKS2(Linux ํ†ตํ•ฉ ํ‚ค ์„ค์ •) ํ˜•์‹์˜ ํŒŒํ‹ฐ์…˜์—์„œ ์•”ํ˜ธํ™”๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์„ ์•…์šฉํ•˜๋ ค๋ฉด ๊ณต๊ฒฉ์ž๊ฐ€ ์•”ํ˜ธํ™”๋œ ๋ฏธ๋””์–ด์— ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ ๊ณต๊ฒฉ์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๋ฐ์ดํ„ฐ๋ฅผ ํ•ด๋…ํ•˜๊ธฐ ์œ„ํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ชจ๋ฅด๋Š” ํ”Œ๋ž˜์‹œ ๋“œ๋ผ์ด๋ธŒ์™€ ๊ฐ™์€ ์•”ํ˜ธํ™”๋œ ์™ธ๋ถ€ ์ €์žฅ ์žฅ์น˜๋ฅผ ๊ณต๊ฒฉํ•˜๋Š” ๋ฐ ์ฃผ๋กœ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ณต๊ฒฉ์€ LUKS2 ํ˜•์‹์—๋งŒ ์ ์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ "์˜จ๋ผ์ธ ์žฌ์•”ํ˜ธํ™”" ํ™•์žฅ ํ™œ์„ฑํ™”๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์กฐ์ž‘๊ณผ ๊ด€๋ จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์•ก์„ธ์Šค ํ‚ค๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์ฆ‰์‹œ ๋ฐ์ดํ„ฐ ์žฌ์•”ํ˜ธํ™” ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒŒํ‹ฐ์…˜ ์ž‘์—…์„ ์ค‘๋‹จํ•˜์ง€ ์•Š๊ณ . ์ƒˆ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณตํ˜ธํ™”ํ•˜๊ณ  ์•”ํ˜ธํ™”ํ•˜๋Š” ๊ณผ์ •์—๋Š” ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— "์˜จ๋ผ์ธ ์žฌ์•”ํ˜ธํ™”"๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํŒŒํ‹ฐ์…˜ ์ž‘์—…์„ ์ค‘๋‹จํ•˜์ง€ ์•Š๊ณ  ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์žฌ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ ์ ์ฐจ์ ์œผ๋กœ ํ•œ ํ‚ค์—์„œ ๋‹ค๋ฅธ ํ‚ค๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์žฌ์•”ํ˜ธํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. . ์„น์…˜์„ ํ•ด๋…๋œ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋นˆ ๋Œ€์ƒ ํ‚ค๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๊ณต๊ฒฉ์ž๋Š” ์˜ค๋ฅ˜๋กœ ์ธํ•ด ์•”ํ˜ธ ํ•ด๋… ์ž‘์—… ์ค‘๋‹จ์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜๋Š” LUKS2 ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์†Œ์œ ์ž๊ฐ€ ์ˆ˜์ •๋œ ๋“œ๋ผ์ด๋ธŒ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๊ณ  ์‚ฌ์šฉํ•œ ํ›„ ํŒŒํ‹ฐ์…˜ ์ผ๋ถ€์˜ ์•”ํ˜ธ๋ฅผ ํ•ด๋…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์ˆ˜์ •๋œ ๋“œ๋ผ์ด๋ธŒ๋ฅผ ์—ฐ๊ฒฐํ•˜๊ณ  ์˜ฌ๋ฐ”๋ฅธ ๋น„๋ฐ€๋ฒˆํ˜ธ๋กœ ์ž ๊ธˆ์„ ํ•ด์ œํ•œ ์‚ฌ์šฉ์ž๋Š” ์ค‘๋‹จ๋œ ์žฌ์•”ํ˜ธํ™” ์ž‘์—…์„ ๋ณต์›ํ•˜๋Š” ๊ณผ์ •์— ๋Œ€ํ•œ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›์ง€ ๋ชปํ•˜๋ฉฐ "luks Dump"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ž‘์—…์˜ ์ง„ํ–‰ ์ƒํ™ฉ๋งŒ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ช…๋ น. ๊ณต๊ฒฉ์ž๊ฐ€ ๋ณตํ˜ธํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ์–‘์€ LUKS2 ํ—ค๋”์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋‹ค๋ฅด์ง€๋งŒ ๊ธฐ๋ณธ ํฌ๊ธฐ(16MiB)์—์„œ๋Š” 3GB๋ฅผ ์ดˆ๊ณผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” ์žฌ์•”ํ˜ธํ™”๋ฅผ ์œ„ํ•ด์„œ๋Š” ์ƒˆ ํ‚ค์™€ ์ด์ „ ํ‚ค์˜ ํ•ด์‹œ๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ํ™•์ธํ•ด์•ผ ํ•˜์ง€๋งŒ ์ƒˆ ์ƒํƒœ์—์„œ ์•”ํ˜ธํ™”๋ฅผ ์œ„ํ•œ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ํ‚ค๊ฐ€ ์—†์Œ์„ ์•”์‹œํ•˜๋Š” ๊ฒฝ์šฐ ์•”ํ˜ธ ํ•ด๋…์„ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ํ•ด์‹œ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค๋Š” ์‚ฌ์‹ค๋กœ ์ธํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ง€์ •ํ•˜๋Š” LUKS2 ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” ๊ณต๊ฒฉ์ž์˜ ์†์— ๋“ค์–ด๊ฐˆ ๊ฒฝ์šฐ ์ˆ˜์ •์œผ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ทจ์•ฝ์ ์„ ์ฐจ๋‹จํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ์ž๋Š” LUKS2์— ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์ถ”๊ฐ€ ํ•ด์‹œ๊ฐ€ ํ™•์ธ๋˜๊ณ  ์•Œ๋ ค์ง„ ํ‚ค์™€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ฝ˜ํ…์ธ ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž๋Š” ์•”ํ˜ธ ํ•ด๋… ์•”ํ˜ธ๋ฅผ ๋ชจ๋ฅด๋ฉด ๋” ์ด์ƒ ์€๋ฐ€ํ•˜๊ฒŒ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์ธ ๊ณต๊ฒฉ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ๋Š” ๊ณต๊ฒฉ์ž๊ฐ€ ๋“œ๋ผ์ด๋ธŒ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ์†์— ๋„ฃ์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ €, ์ ‘๊ทผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ชจ๋ฅด๋Š” ๊ณต๊ฒฉ์ž๊ฐ€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์˜์—ญ์„ ๋ณ€๊ฒฝํ•˜์—ฌ ๋‹ค์Œ์— ๋“œ๋ผ์ด๋ธŒ๊ฐ€ ํ™œ์„ฑํ™”๋  ๋•Œ ๋ฐ์ดํ„ฐ ์ผ๋ถ€์˜ ์•”ํ˜ธ๊ฐ€ ํ•ด๋…๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋“œ๋ผ์ด๋ธŒ๋Š” ์›๋ž˜ ์œ„์น˜๋กœ ๋Œ์•„๊ฐ€๊ณ  ๊ณต๊ฒฉ์ž๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์—ฐ๊ฒฐํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์žฅ์น˜๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์žฌ์•”ํ˜ธํ™” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹œ์ž‘๋˜๋ฉฐ, ์ด ๊ณผ์ •์—์„œ ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ์˜ ์ผ๋ถ€๊ฐ€ ํ•ด๋…๋œ ๋ฐ์ดํ„ฐ๋กœ ๋Œ€์ฒด๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๊ณต๊ฒฉ์ž๊ฐ€ ์žฅ์น˜์— ๋‹ค์‹œ ์†์„ ๋Œ€๋ฉด ๋“œ๋ผ์ด๋ธŒ์— ์žˆ๋Š” ์ผ๋ถ€ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•ด๋…๋œ ํ˜•์‹์ด ๋ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋Š” cryptsetup ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ์ž์— ์˜ํ•ด ์‹๋ณ„๋˜์—ˆ์œผ๋ฉฐ cryptsetup 2.4.3 ๋ฐ 2.3.7 ์—…๋ฐ์ดํŠธ์—์„œ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ƒ์„ฑ๋˜๋Š” ์—…๋ฐ์ดํŠธ ์ƒํƒœ๋Š” Debian, RHEL, SUSE, Fedora, Ubuntu, Arch ํŽ˜์ด์ง€์—์„œ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ทจ์•ฝ์ ์€ "์˜จ๋ผ์ธ ์žฌ์•”ํ˜ธํ™”" ์ž‘์—…์— ๋Œ€ํ•œ ์ง€์›์„ ๋„์ž…ํ•œ cryptsetup 2.2.0 ๋ฆด๋ฆฌ์Šค๋ถ€ํ„ฐ๋งŒ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๋ณดํ˜ธ๋ฅผ ์œ„ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ "--disable-luks2-reencryption" ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€