Bluetooth LE๋ฅผ ํ†ตํ•ด ์•…์šฉ ๊ฐ€๋Šฅํ•œ Android 14์˜ ์ทจ์•ฝ์ 

AOSP(Android ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ) ์ฝ”๋“œ๋ฒ ์ด์Šค์˜ ๋ณด์•ˆ ํฌํฌ๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” GrapheneOS ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ๋ฐœ์ž๋Š” ์ž ์žฌ์ ์œผ๋กœ ์›๊ฒฉ ์ฝ”๋“œ ์‹คํ–‰์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ๋Š” Android 14 ํ”Œ๋žซํผ์˜ Bluetooth ์Šคํƒ์—์„œ ์ทจ์•ฝ์ ์„ ์‹๋ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค. Bluetooth LE๋ฅผ ํ†ตํ•ด ์ „์†ก๋˜๋Š” ์˜ค๋””์˜ค ์ฒ˜๋ฆฌ ์ฝ”๋“œ์—์„œ ์ด๋ฏธ ํ•ด์ œ๋œ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ(use-after-free)์— ์ ‘๊ทผํ•˜์—ฌ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

ARMv8.5 MTE ํ™•์žฅ(MemTag, Memory Tagged Extension)์„ ์‚ฌ์šฉํ•˜์—ฌ hardened_malloc ํ˜ธ์ถœ์— ์ถ”๊ฐ€ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์ด ํ†ตํ•ฉ๋˜์–ด ์ทจ์•ฝ์ ์ด ์‹๋ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ์ž‘์—…์— ํƒœ๊ทธ๋ฅผ ๋ฐ”์ธ๋”ฉํ•˜๊ณ  ํฌ์ธํ„ฐ์˜ ์˜ฌ๋ฐ”๋ฅธ ์‚ฌ์šฉ์„ ํ™•์ธํ•˜๋„๋ก ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ ํ•ด์ œ๋œ ๋ฉ”๋ชจ๋ฆฌ ๋ธ”๋ก์— ๋Œ€ํ•œ ์ ‘๊ทผ, ๋ฒ„ํผ ์˜ค๋ฒ„ํ”Œ๋กœ, ์ดˆ๊ธฐํ™” ์ „ ํ˜ธ์ถœ, ํ˜„์žฌ ์ปจํ…์ŠคํŠธ ์™ธ๋ถ€ ์‚ฌ์šฉ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ์ทจ์•ฝ์  ์•…์šฉ์„ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค.

ํ•ด๋‹น ์˜ค๋ฅ˜๋Š” ์ง€๋‚œ 14์›” ์ดˆ ๊ณต๊ฐœ๋œ ์•ˆ๋“œ๋กœ์ด๋“œ 2 QPR14(๋ถ„๊ธฐ๋ณ„ ํ”Œ๋žซํผ ์ถœ์‹œ) ์—…๋ฐ์ดํŠธ ์ดํ›„๋ถ€ํ„ฐ ๋‚˜ํƒ€๋‚˜๊ณ  ์žˆ๋‹ค. Android 14 ํ”Œ๋žซํผ์˜ ๊ธฐ๋ณธ ์ฝ”๋“œ ๋ฒ ์ด์Šค์—์„œ๋Š” MTE ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์˜ต์…˜์œผ๋กœ ์ œ๊ณต๋˜์–ด ์•„์ง ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜์ง€ ์•Š์ง€๋งŒ GrapheneOS์—์„œ๋Š” ์ถ”๊ฐ€ ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด ์ด๋ฏธ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์–ด ์—…๋ฐ์ดํŠธ ํ›„ ์˜ค๋ฅ˜ ์ง„๋‹จ์ด ๊ฐ€๋Šฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์•ˆ๋“œ๋กœ์ด๋“œ 2 QPR2. ์ด ๋ฒ„๊ทธ๋กœ ์ธํ•ด MTE ๊ธฐ๋ฐ˜ ๋ณดํ˜ธ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ํŽŒ์›จ์–ด๊ฐ€ ํฌํ•จ๋œ Samsung Galaxy BudsXNUMX Pro Bluetooth ํ—ค๋“œํฐ์„ ์‚ฌ์šฉํ•  ๋•Œ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๊ฑด ๋ถ„์„์— ๋”ฐ๋ฅด๋ฉด ๋ฌธ์ œ๋Š” Bluetooth LE ํ•ธ๋“ค๋Ÿฌ์—์„œ ์ด๋ฏธ ํ•ด์ œ๋œ ๋ฉ”๋ชจ๋ฆฌ์— ์•ก์„ธ์Šคํ•˜๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ์ด ์žˆ๋Š” ๊ฒƒ์ด์ง€ MTE ํ†ตํ•ฉ์œผ๋กœ ์ธํ•œ ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹Œ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

์ด ์ทจ์•ฝ์ ์€ GrapheneOS ๋ฆด๋ฆฌ์Šค 2024030900์—์„œ ์ˆ˜์ •๋˜์—ˆ์œผ๋ฉฐ MTE ํ™•์žฅ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์ถ”๊ฐ€ ํ•˜๋“œ์›จ์–ด ๋ณดํ˜ธ ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์ง€ ์•Š์€ ์Šค๋งˆํŠธํฐ ๋นŒ๋“œ์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค(MTE๋Š” ํ˜„์žฌ Pixel 8 ๋ฐ Pixel 8 Pro ์žฅ์น˜์—์„œ๋งŒ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค). ์ด ์ทจ์•ฝ์ ์€ Android 8 QPR14๋ฅผ ์‹คํ–‰ํ•˜๋Š” Google Pixel 2 ์Šค๋งˆํŠธํฐ์—์„œ ์žฌํ˜„๋ฉ๋‹ˆ๋‹ค. Pixel 8 ์‹œ๋ฆฌ์ฆˆ ์Šค๋งˆํŠธํฐ์šฉ Android์—์„œ๋Š” ๊ฐœ๋ฐœ์ž ์„ค์ •(โ€œ์„ค์ • / ์‹œ์Šคํ…œ / ๊ฐœ๋ฐœ์ž ์˜ต์…˜ / ๋ฉ”๋ชจ๋ฆฌ ํƒœ๊น… ํ™•์žฅโ€)์—์„œ MTE ๋ชจ๋“œ๋ฅผ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. MTE๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋น„๊ฐ€ ์•ฝ 3% ์ฆ๊ฐ€ํ•˜์ง€๋งŒ ์„ฑ๋Šฅ์€ ์ €ํ•˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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