๊ณต๊ฐ ์ฌ๊ฐํ ์ทจ์ฝ์ ์ธ๋ถ์ ๋ณด(CVE-2019-14378)๋ ๊ฒ์คํธ ์์คํ
์ ๊ฐ์ ๋คํธ์ํฌ ์ด๋ํฐ์ QEMU ์ธก ๋คํธ์ํฌ ๋ฐฑ์๋ ๊ฐ์ ํต์ ์ฑ๋์ ์ค์ ํ๊ธฐ ์ํด QEMU์์ ์ฌ์ฉ๋๋ ๊ธฐ๋ณธ SLIRP ํธ๋ค๋ฌ์ ์์ต๋๋ค. ์ด ๋ฌธ์ ๋ KVM ๊ธฐ๋ฐ ๊ฐ์ํ ์์คํ
์๋ ์ํฅ์ ๋ฏธ์นฉ๋๋ค( ์ฌ์ฉ์ ๋ชจ๋) ๋ฐ QEMU์ slirp ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํ๋ Virtualbox์ ์ฌ์ฉ์ ๊ณต๊ฐ ๋คํธ์ํน ์คํ์ ์ฌ์ฉํ๋ ์ ํ๋ฆฌ์ผ์ด์
libSLIRP (TCP/IP ์๋ฎฌ๋ ์ดํฐ).
์ด ์ทจ์ฝ์ ์ผ๋ก ์ธํด ์กฐ๊ฐํ๊ฐ ํ์ํ ๊ฒ์คํธ ์์คํ
์์ ํน๋ณํ ์ค๊ณ๋ ์ด๋ํ ๋คํธ์ํฌ ํจํท์ด ์ ์ก๋ ๋ QEMU ์ฒ๋ฆฌ๊ธฐ ํ๋ก์ธ์ค์ ๊ถํ์ผ๋ก ํธ์คํธ ์์คํ
์ธก์์ ์ฝ๋๊ฐ ์คํ๋ ์ ์์ต๋๋ค. ๋ค์ด์ค๋ ํจํท์ ์ฌ์กฐ๋ฆฝํ ๋ ํธ์ถ๋๋ ip_reass() ํจ์์ ์ค๋ฅ๋ก ์ธํด ์ฒซ ๋ฒ์งธ ์กฐ๊ฐ์ด ํ ๋น๋ ๋ฒํผ์ ๋ง์ง ์์ ์ ์์ผ๋ฉฐ ๊ทธ ๊ผฌ๋ฆฌ๋ ๋ฒํผ ์์ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๊ธฐ๋ก๋ฉ๋๋ค.
์ด๋ฏธ ํ
์คํธ์ฉ ์ฌ์ฉํ ์์๋ค. ASLR์ ์ฐํํ๊ณ ํ์ด๋จธ์ ์ํด ํธ์ถ๋๋ ํธ๋ค๋ฌ๋ก QEMUTimerList๋ฅผ ํฌํจํ์ฌ main_loop_tlg ๋ฐฐ์ด์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ฎ์ด์จ์ ์ฝ๋๋ฅผ ์คํํ๋ ์ต์คํ๋ก์์ ์์
ํ๋กํ ํ์
์
๋๋ค.
ํด๋น ์ทจ์ฝ์ ์ ์ด๋ฏธ ์์ ๋์์ต๋๋ค. ํ๋๋ผ ะธ ์์ธ/์คํ์์ธ, ๊ทธ๋ฌ๋ ์์ ๋์ง ์์ ์ํ๋ก ๋จ์ ์์ต๋๋ค. ๋ฐ๋น์, ์์น ๋ฆฌ๋
์ค ะธ FreeBSD์. ์ Ubuntu ะธ RHEL slirp๋ฅผ ์ฌ์ฉํ์ง ์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ๋ํ๋์ง ์์ต๋๋ค. ์ต์ ๋ฆด๋ฆฌ์ค์์๋ ์ทจ์ฝ์ ์ด ์์ ๋์ง ์์ ์ํ๋ก ๋จ์ ์์ต๋๋ค. libslirp 4.0 (์์ ์ฌํญ์ ํ์ฌ ๋ค์๊ณผ ๊ฐ์ด ์ ๊ณต๋ฉ๋๋ค. ๋ฐ์ ).
์ถ์ฒ : opennet.ru