UEFI ๋ณด์ ๋ถํ ๋ฉ์ปค๋์ฆ์ ์ฐํํ๊ณ ํ์ธ๋์ง ์์ ์ฝ๋๋ฅผ ์คํํ ์ ์๋ GRUB2 ๋ถํธ๋ก๋์ 7๊ฐ์ง ์ทจ์ฝ์ ์ด ์์ ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ถํธ๋ก๋ ๋๋ ์ปค๋ ์์ค์์ ์คํ๋๋ ๋งฌ์จ์ด๋ฅผ ๋์ ํฉ๋๋ค. ๋ํ shim ๊ณ์ธต์๋ UEFI ๋ณด์ ๋ถํ ์ ์ฐํํ ์ ์๋ ์ทจ์ฝ์ ์ด ํ๋ ์์ต๋๋ค. ์ทจ์ฝ์ ๊ทธ๋ฃน์ ์ด์ ์ ๋ถํธ๋ก๋์์ ์๋ณ๋ ์ ์ฌํ ๋ฌธ์ ์ ์ ์ฌํ ์ฝ๋๋ช Boothole 3์ผ๋ก ์ง์ ๋์์ต๋๋ค.
GRUB2 ๋ฐ shim์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฐฐํฌํ์ GRUB2, shim ๋ฐ fwupd์์ ์ง์๋๋ SBAT(UEFI Secure Boot Advanced Targeting) ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. SBAT๋ Microsoft์ ๊ณต๋์ผ๋ก ๊ฐ๋ฐ๋์์ผ๋ฉฐ ์ ์กฐ์ ์ฒด, ์ ํ, ๊ตฌ์ฑ ์์ ๋ฐ ๋ฒ์ ์ ๋ํ ์ ๋ณด๋ฅผ ํฌํจํ๋ UEFI ๊ตฌ์ฑ ์์์ ์คํ ํ์ผ์ ์ถ๊ฐ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ๋ ์์ ์ด ํฌํจ๋ฉ๋๋ค. ์ง์ ๋ ๋ฉํ๋ฐ์ดํฐ๋ ๋์งํธ ์๋ช ์ผ๋ก ์ธ์ฆ๋๋ฉฐ UEFI ๋ณด์ ๋ถํ ์ ํ์ฉ๋๊ฑฐ๋ ๊ธ์ง๋๋ ๊ตฌ์ฑ ์์ ๋ชฉ๋ก์ ๋ณ๋๋ก ํฌํจ๋ ์ ์์ต๋๋ค.
๋๋ถ๋ถ์ Linux ๋ฐฐํฌํ์ UEFI ๋ณด์ ๋ถํ ๋ชจ๋์์ ์์ฒด ๊ฒ์ฌ ๋ถํ ์ ์ํด Microsoft์์ ๋์งํธ ์๋ช ํ ์์ ์ฌ ๋ ์ด์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด ๊ณ์ธต์ ์์ฒด ์ธ์ฆ์๋ก GRUB2๋ฅผ ํ์ธํ๋ฏ๋ก ๋ฐฐํฌ ๊ฐ๋ฐ์๊ฐ Microsoft์์ ์ธ์ฆํ ๋ชจ๋ ์ปค๋ ๋ฐ GRUB ์ ๋ฐ์ดํธ๋ฅผ ๊ฐ์ง ์๋๋ก ํ ์ ์์ต๋๋ค. GRUB2์ ์ทจ์ฝ์ ์ ์ฌ์ฉํ๋ฉด ์ฌ ๊ฒ์ฆ์ ์ฑ๊ณตํ ํ ๋จ๊ณ์์ ์ฝ๋๋ฅผ ์คํํ ์ ์์ง๋ง ์ด์ ์ฒด์ ๋ฅผ ๋ก๋ํ๊ธฐ ์ ์ ๋ณด์ ๋ถํ ๋ชจ๋๊ฐ ํ์ฑํ๋๋ฉด ์ ๋ขฐ ์ฒด์ธ์ ๊ณ ์ ๋์ด ๋ค์์ ํฌํจํ ์ถ๊ฐ ๋ถํ ํ๋ก์ธ์ค์ ๋ํ ์์ ํ ์ ์ด๊ถ์ ์ป์ ์ ์์ต๋๋ค. ๋ค๋ฅธ OS๋ฅผ ๋ก๋ํ๊ณ , ์ด์ ์ฒด์ ๊ตฌ์ฑ ์์๋ฅผ ์์ ํ๊ณ , ์ ๊ธ ๋ณดํธ๋ฅผ ์ฐํํฉ๋๋ค.
๋ถํธ๋ก๋์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ๋ฐฐํฌํ์์ ์๋ก์ด ๋ด๋ถ ๋์งํธ ์๋ช ์ ์์ฑํ๊ณ ์ค์น ํ๋ก๊ทธ๋จ, ๋ถํธ๋ก๋, ์ปค๋ ํจํค์ง, fwupd ํ์จ์ด ๋ฐ shim ๋ ์ด์ด๋ฅผ ์ ๋ฐ์ดํธํด์ผ ํฉ๋๋ค. SBAT๊ฐ ๋์ ๋๊ธฐ ์ ์๋ ๊ณต๊ฒฉ์๊ฐ ์ฌ์ฉํ๋ ์ด์ ์ฒด์ ์ ๊ด๊ณ์์ด ์ด์ ์ทจ์ฝํ GRUB2 ๋ฒ์ ์ด ํฌํจ๋ ๋ถํ ๊ฐ๋ฅํ ๋ฏธ๋์ด๋ฅผ ์ฌ์ฉํ ์ ์์๊ธฐ ๋๋ฌธ์ ์ธ์ฆ์ ํด์ง ๋ชฉ๋ก(dbx, UEFI Revocation List)์ ์ ๋ฐ์ดํธํ๋ ๊ฒ์ด ์ทจ์ฝ์ ์ ์์ ํ ์ฐจ๋จํ๊ธฐ ์ํ ์ ์ ์กฐ๊ฑด์ด์์ต๋๋ค. UEFI ๋ณด์ ๋ถํ ์ ์์์ํค๊ธฐ ์ํด ๋์งํธ ์๋ช ์ผ๋ก ์ธ์ฆ๋์์ต๋๋ค.
์๋ช ์ ์ทจ์ํ๋ ๋์ SBAT๋ฅผ ์ฌ์ฉํ๋ฉด ๋ณด์ ๋ถํ ์ ์ํ ํค๋ฅผ ์ทจ์ํ์ง ์๊ณ ๋ ๊ฐ๋ณ ๊ตฌ์ฑ ์์ ๋ฒ์ ๋ฒํธ์ ๋ํ ์ฌ์ฉ์ ์ฐจ๋จํ ์ ์์ต๋๋ค. SBAT๋ฅผ ํตํ ์ทจ์ฝ์ ์ฐจ๋จ์๋ UEFI ์ธ์ฆ์ ํด์ง ๋ชฉ๋ก(dbx)์ ์ฌ์ฉํ ํ์๊ฐ ์์ง๋ง ๋ด๋ถ ํค๋ฅผ ๊ต์ฒดํ์ฌ ์๋ช ์ ์์ฑํ๊ณ ๋ฐฐํฌํ์์ ์ ๊ณต๋๋ GRUB2, shim ๋ฐ ๊ธฐํ ๋ถํ ์ํฐํฉํธ๋ฅผ ์ ๋ฐ์ดํธํ๋ ์์ค์์ ์ํ๋ฉ๋๋ค. ํ์ฌ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ Linux ๋ฐฐํฌํ์๋ SBAT ์ง์์ด ์ด๋ฏธ ์ถ๊ฐ๋์์ต๋๋ค.
ํ์ธ๋ ์ทจ์ฝ์ :
- CVE-2021-3696, CVE-2021-3695๋ ํน๋ณํ ์ค๊ณ๋ PNG ์ด๋ฏธ์ง๋ฅผ ์ฒ๋ฆฌํ ๋ ๋ฐ์ํ๋ ํ ๊ธฐ๋ฐ ๋ฒํผ ์ค๋ฒํ๋ก๋ก, ์ด๋ก ์ ์ผ๋ก ๊ณต๊ฒฉ์ ์ฝ๋๋ฅผ ์คํํ๊ณ UEFI ๋ณด์ ๋ถํ ์ ์ฐํํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์ต๋๋ค. ์ ๋๋ก ์๋ํ๋ ์ต์คํ๋ก์์ ์์ฑํ๋ ค๋ฉด ๋ง์ ์์์ ๋ฉ๋ชจ๋ฆฌ ๋ ์ด์์์ ๋ํ ์ ๋ณด์ ๊ฐ์ฉ์ฑ์ ๊ณ ๋ คํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๋ฅผ ์ต์คํ๋ก์ํ๊ธฐ๊ฐ ์ด๋ ต์ต๋๋ค.
- CVE-2021-3697 - JPEG ์ด๋ฏธ์ง ์ฒ๋ฆฌ ์ฝ๋์ ๋ฒํผ ์ธ๋ํ๋ก์ฐ์ ๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ์ ์ฉํ๋ ค๋ฉด ๋ฉ๋ชจ๋ฆฌ ๋ ์ด์์์ ๋ํ ์ง์์ด ํ์ํ๋ฉฐ PNG ๋ฌธ์ (CVSS 7.5)์ ๊ฑฐ์ ๋์ผํ ์์ค์ ๋ณต์ก์ฑ์ ๊ฐ์ต๋๋ค.
- CVE-2022-28733 - grub_net_recv_ip4_packets() ํจ์์ ์ ์ ์ค๋ฒํ๋ก๋ก ์ธํด ํน๋ณํ ์ ์๋ IP ํจํท์ ์ ์กํ์ฌ rsm->total_len ๋งค๊ฐ๋ณ์๊ฐ ์ํฅ์ ๋ฐ์ ์ ์์ต๋๋ค. ์ด ๋ฌธ์ ๋ ์ ์๋ ์ทจ์ฝ์ ์ค ๊ฐ์ฅ ์ํํ ๊ฒ์ผ๋ก ํ์๋ฉ๋๋ค(CVSS 8.1). ์ ์ฉ์ ์ฑ๊ณตํ๋ฉด ์ทจ์ฝ์ ์ ํตํด ์๋์ ์ผ๋ก ๋ ์์ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ๋ฅผ ํ ๋นํ์ฌ ๋ฒํผ ๊ฒฝ๊ณ๋ฅผ ๋์ด ๋ฐ์ดํฐ๋ฅผ ์ธ ์ ์์ต๋๋ค.
- CVE-2022-28734 - ์ ๊ฑฐ๋ HTTP ํค๋๋ฅผ ์ฒ๋ฆฌํ ๋ ๋จ์ผ ๋ฐ์ดํธ ๋ฒํผ ์ค๋ฒํ๋ก๊ฐ ๋ฐ์ํฉ๋๋ค. ํน์ํ๊ฒ ์กฐ์๋ HTTP ์์ฒญ์ ๊ตฌ๋ฌธ ๋ถ์ํ ๋ ๋ฌธ์ ๋ก ์ธํด GRUB2 ๋ฉํ๋ฐ์ดํฐ ์์(๋ฒํผ ๋ ๋ฐ๋ก ๋ค์ ๋ ๋ฐ์ดํธ ์ฐ๊ธฐ)์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
- CVE-2022-28735 shim_lock ๊ฒ์ฆ ํ๋ก๊ทธ๋จ์ ๋ฌธ์ ๋ก ์ธํด ์ปค๋์ด ์๋ ํ์ผ ๋ก๋๊ฐ ํ์ฉ๋ฉ๋๋ค. ์ด ์ทจ์ฝ์ ์ UEFI ๋ณด์ ๋ถํ ๋ชจ๋์์ ์๋ช ๋์ง ์์ ์ปค๋ ๋ชจ๋์ด๋ ํ์ธ๋์ง ์์ ์ฝ๋๋ฅผ ๋ก๋ํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
- CVE-2022-28736 GRUB2์์ ์ง์ํ์ง ์๋ ์ด์ ์ฒด์ ๋ฅผ ๋ถํ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ chainloader ๋ช ๋ น์ ์ฌ์คํ์ ํตํด grub_cmd_chainloader() ํจ์์์ ์ด๋ฏธ ํด์ ๋ ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค์ ๋๋ค. ๊ณต๊ฒฉ์๊ฐ GRUB2์์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ ๊ฒฐ์ ํ ์ ์๋ ๊ฒฝ์ฐ ์ ์ฉ์ผ๋ก ์ธํด ๊ณต๊ฒฉ์ ์ฝ๋๊ฐ ์คํ๋ ์ ์์ต๋๋ค.
- CVE-2022-28737 - ์ ์๋ EFI ์ด๋ฏธ์ง๋ฅผ ๋ก๋ํ๊ณ ์คํํ ๋ handler_image() ํจ์์์ shim ๋ ์ด์ด์ ๋ฒํผ ์ค๋ฒํ๋ก๊ฐ ๋ฐ์ํฉ๋๋ค.
์ถ์ฒ : opennet.ru