์ˆจ๊ฒจ์ง„ ์•”ํ˜ธํ™”๋œ ๋””์Šคํฌ ํŒŒํ‹ฐ์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ํˆดํ‚ท์ธ Shufflecake ๊ฒŒ์‹œ

๋ณด์•ˆ ๊ฐ์‚ฌ ํšŒ์‚ฌ์ธ Kudelski Security๋Š” ๊ธฐ์กด ํŒŒํ‹ฐ์…˜์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์—ฌ์œ  ๊ณต๊ฐ„์— ํฉ์–ด์ ธ ์žˆ๊ณ  ์ž„์˜์˜ ์ž”์—ฌ ๋ฐ์ดํ„ฐ์™€ ๊ตฌ๋ณ„ํ•  ์ˆ˜ ์—†๋Š” ์ˆจ๊ฒจ์ง„ ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” Shufflecake๋ผ๋Š” ๋„๊ตฌ๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. ํŒŒํ‹ฐ์…˜์€ ์ ‘๊ทผํ‚ค๋ฅผ ๋ชจ๋ฅด๋ฉด ํฌ๋ Œ์‹ ๋ถ„์„์„ ํ•˜์—ฌ๋„ ๊ทธ ์กด์žฌ๋ฅผ ์ฆ๋ช…ํ•˜๊ธฐ ์–ด๋ ค์šด ๋ฐฉ์‹์œผ๋กœ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์œ ํ‹ธ๋ฆฌํ‹ฐ ์ฝ”๋“œ(shufflecake-userland)์™€ Linux ์ปค๋„ ๋ชจ๋“ˆ(dm-sflc)์€ C๋กœ ์ž‘์„ฑ๋˜์–ด GPLv3 ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ์ปค๋„์ด ์ œ๊ณต๋˜๋Š” GPLv2 ๋ผ์ด์„ผ์Šค.

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

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

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

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

๊ธฐ๋ณธ์ ์œผ๋กœ ๋ชจ๋“  Shufflecake ํ•˜์œ„ ์„น์…˜์€ ์ตœ์ƒ์œ„ ์„น์…˜๊ณผ ๋™์ผํ•œ ํ‘œ์‹œ ํฌ๊ธฐ๋ฅผ ๊ฐ–์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 1GB ์žฅ์น˜์— 1๊ฐœ์˜ ํŒŒํ‹ฐ์…˜์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๊ฐ ํŒŒํ‹ฐ์…˜์€ ์‹œ์Šคํ…œ์— XNUMXGB ํŒŒํ‹ฐ์…˜์œผ๋กœ ํ‘œ์‹œ๋˜๋ฉฐ, ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์˜ ์ด ํฌ๊ธฐ๊ฐ€ ๋‹ค์Œ์„ ์ดˆ๊ณผํ•˜๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ด ๋””์Šคํฌ ๊ณต๊ฐ„์ด ๋ชจ๋“  ํŒŒํ‹ฐ์…˜์—์„œ ๊ณต์œ ๋ฉ๋‹ˆ๋‹ค. ์žฅ์น˜์˜ ์‹ค์ œ ํฌ๊ธฐ์— ๋”ฐ๋ผ I/O ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

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

์‹ค์ œ๋กœ 15๊ฐœ์˜ Shufflecake ํŒŒํ‹ฐ์…˜์ด ํ•ญ์ƒ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋œ ํŒŒํ‹ฐ์…˜์—๋Š” ์‚ฌ์šฉ์ž ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์ฒจ๋ถ€๋˜๊ณ , ์‚ฌ์šฉ๋˜์ง€ ์•Š์€ ํŒŒํ‹ฐ์…˜์—๋Š” ๋ฌด์ž‘์œ„๋กœ ์ƒ์„ฑ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค(์‹ค์ œ๋กœ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ํŒŒํ‹ฐ์…˜์ด ์‚ฌ์šฉ๋˜๋Š”์ง€ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค). Shufflecake ํŒŒํ‹ฐ์…˜์ด ์ดˆ๊ธฐํ™”๋˜๋ฉด ๋ฐฐ์น˜๋ฅผ ์œ„ํ•ด ํ• ๋‹น๋œ ๋””์Šคํฌ, ํŒŒํ‹ฐ์…˜ ๋˜๋Š” ๊ฐ€์ƒ ๋ธ”๋ก ์žฅ์น˜๊ฐ€ ๋ฌด์ž‘์œ„ ๋ฐ์ดํ„ฐ๋กœ ์ฑ„์›Œ์ง€๋ฏ€๋กœ ์ผ๋ฐ˜์ ์ธ ๋ฐฐ๊ฒฝ์—์„œ Shufflecake ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๋ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

Shufflecake ๊ตฌํ˜„์€ ์„ฑ๋Šฅ์ด ์ƒ๋‹นํžˆ ๋†’์ง€๋งŒ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— LUKS ํ•˜์œ„ ์‹œ์Šคํ…œ ๊ธฐ๋ฐ˜ ๋””์Šคํฌ ์•”ํ˜ธํ™”์— ๋น„ํ•ด ์ฒ˜๋ฆฌ๋Ÿ‰์ด ์•ฝ 60๋ฐฐ ์ •๋„ ๋Š๋ฆฝ๋‹ˆ๋‹ค. Shufflecake๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์„œ๋น„์Šค ๋ฐ์ดํ„ฐ ์ €์žฅ์„ ์œ„ํ•œ RAM ๋ฐ ๋””์Šคํฌ ๊ณต๊ฐ„์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๋น„์šฉ๋„ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋น„๋Š” ํŒŒํ‹ฐ์…˜๋‹น 1MB๋กœ ์ถ”์ •๋˜๋ฉฐ ๋””์Šคํฌ ๊ณต๊ฐ„์€ ์ „์ฒด ํฌ๊ธฐ์˜ 5%์ž…๋‹ˆ๋‹ค. ์ด์— ๋น„ํ•ด ๋ชฉ์ ์ด ์œ ์‚ฌํ•œ WORAM ๊ธฐ์ˆ ์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋””์Šคํฌ ๊ณต๊ฐ„์ด 200% ์†์‹ค๋˜๋ฉด์„œ ์†๋„๊ฐ€ 75~XNUMX๋ฐฐ ๋Š๋ ค์ง‘๋‹ˆ๋‹ค.

ํˆดํ‚ท๊ณผ ์ปค๋„ ๋ชจ๋“ˆ์€ Debian ๋ฐ Ubuntu ์ปค๋„ 5.13 ๋ฐ 5.15(Ubuntu 22.04์—์„œ ์ง€์›๋จ)์—์„œ๋งŒ ํ…Œ์ŠคํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ๋Š” ์—ฌ์ „ํžˆ ์ž‘๋™ ์ค‘์ธ ํ”„๋กœํ† ํƒ€์ž…์œผ๋กœ ๊ฐ„์ฃผ๋˜์–ด์•ผ ํ•˜๋ฉฐ ์ค‘์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜์–ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ์•ž์œผ๋กœ๋Š” ์„ฑ๋Šฅ, ์•ˆ์ •์„ฑ, ๋ณด์•ˆ์„ ์ถ”๊ฐ€๋กœ ์ตœ์ ํ™”ํ•˜๊ณ  Shufflecake ํŒŒํ‹ฐ์…˜์—์„œ ๋ถ€ํŒ…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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