Chrome 94์ ๊ธฐ๋ณธ์ ์ผ๋ก ํฌํจ๋ ์ ํด ๊ฐ์ง API๋ Firefox ๋ฐ WebKit/Safari ๊ฐ๋ฐ์์ ๋ฐ๋๋ฅผ ์ธ์ฉํ๋ฉด์ ๋ง์ ๋นํ์ ๋ถ๋ฌ์ผ์ผ์ผฐ์ต๋๋ค.
์ ํด ๊ฐ์ง API๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ์ดํธ์์ ์ฌ์ฉ์๊ฐ ํ๋ํ์ง ์๋ ์๊ฐ์ ๊ฐ์งํ ์ ์์ต๋๋ค. ํค๋ณด๋/๋ง์ฐ์ค์ ์ํธ ์์ฉํ๊ฑฐ๋ ๋ค๋ฅธ ๋ชจ๋ํฐ์์ ์์ ์ ์ํํ์ง ์์ต๋๋ค. ๋ํ API๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋ฉด ๋ณดํธ๊ธฐ๊ฐ ์์คํ ์์ ์คํ๋๊ณ ์๋์ง ์ฌ๋ถ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. ๋นํ์ฑ์ ๋ํ ์ ๋ณด๋ ์ง์ ๋ ๋นํ์ฑ ์๊ณ๊ฐ์ ๋๋ฌํ ํ ์๋ฆผ์ ์ ์กํ์ฌ ์ํ๋๋ฉฐ ์ต์๊ฐ์ 1๋ถ์ผ๋ก ์ค์ ๋ฉ๋๋ค.
์ ํด ๊ฐ์ง API๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ๋ช ์์ ์ธ ์ฌ์ฉ์ ๊ถํ ๋ถ์ฌ๊ฐ ํ์ํ๋ค๋ ์ ์ ์ ์ํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฒ์์ผ๋ก ๋นํ์ฑ์ ๊ฐ์งํ๋ ค๊ณ ์๋ํ๋ฉด ์ฌ์ฉ์์๊ฒ ๊ถํ์ ๋ถ์ฌํ ์ง ์๋๋ฉด ์์ ์ ์ฐจ๋จํ ์ง ๋ฌป๋ ์ฐฝ์ด ํ์๋ฉ๋๋ค. ์ ํด ๊ฐ์ง API๋ฅผ ์์ ํ ๋นํ์ฑํํ๋ ค๋ฉด '๊ฐ์ธ ์ ๋ณด ๋ณดํธ ๋ฐ ๋ณด์' ์ค์ ์น์ ์ ํน์ ์ต์ ('chrome://settings/content/idleDetection')์ด ์ ๊ณต๋ฉ๋๋ค.
์์ฉ ๋ถ์ผ์๋ ์ฌ์ฉ์์ ์ปดํจํฐ ์ฌ์ฉ ์ํ์ ๋ฐ๋ผ ์ฌ์ฉ์์ ์ํ๋ฅผ ๋ณ๊ฒฝํ๊ฑฐ๋ ์ฌ์ฉ์๊ฐ ๋์ฐฉํ ๋๊น์ง ์ ๋ฉ์์ง ์๋ฆผ์ ์ง์ฐ์ํฌ ์ ์๋ ์ฑํ , ์์ ๋คํธ์ํน ๋ฐ ํต์ ์์ฉ ํ๋ก๊ทธ๋จ์ด ํฌํจ๋ฉ๋๋ค. ๋ํ API๋ ํค์ค์คํฌ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉํ์ฌ ์ผ์ ๊ธฐ๊ฐ ๋์ ํ๋์ด ์์ผ๋ฉด ์๋ ํ๋ฉด์ผ๋ก ๋์๊ฐ๊ฑฐ๋ ์ฌ์ฉ์๊ฐ ์ปดํจํฐ์ ์์ ๋ ๋ณต์กํ ๋ค์ ๊ทธ๋ฆฌ๊ธฐ, ์ง์์ ์ผ๋ก ์ฐจํธ ์ ๋ฐ์ดํธ์ ๊ฐ์ ๋ฆฌ์์ค ์ง์ฝ์ ์ธ ๋ํํ ์์ ์ ๋นํ์ฑํํ ์ ์์ต๋๋ค.
์ ํด ๊ฐ์ง API ํ์ฑํ์ ๋ฐ๋ํ๋ ์ฌ๋๋ค์ ์ ์ฅ์ ์ฌ์ฉ์๊ฐ ์ปดํจํฐ์ ์๋์ง ์ฌ๋ถ์ ๋ํ ์ ๋ณด๋ ๊ธฐ๋ฐ๋ก ๊ฐ์ฃผ๋ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ ์ฉํ ์ ํ๋ฆฌ์ผ์ด์ ์ธ์๋ ์ด API๋ ์ฌ์ฉ์๊ฐ ์๋ฆฌ๋ฅผ ๋น์ด ๋์ ์ทจ์ฝ์ ์ ์ ์ฉํ๊ฑฐ๋ ์ฑ๊ตด๊ณผ ๊ฐ์ ๋์ ๋๋ ์ ์์ ํ๋์ ์จ๊ธฐ๋ ๋ฑ ๋์ ๋ชฉ์ ์ผ๋ก๋ ์ฌ์ฉ๋ ์ ์์ต๋๋ค. ํด๋น API๋ฅผ ์ด์ฉํ๋ฉด ์ฌ์ฉ์ ํ๋ ํจํด์ด๋ ์ผ์ ์ ๋ฌด ๋ฆฌ๋ฌ์ ๋ํ ์ ๋ณด๋ ์์งํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ์ฌ์ฉ์๊ฐ ์ธ์ ์ ์ฌ์ ๋จน์ผ๋ฌ ๊ฐ๊ฑฐ๋ ์ง์ฅ์ ๋ ๋๋์ง๋ฅผ ์ ์ ์์ต๋๋ค. ์น์ธ ์ฆ๋ช ์ ๋ํ ํ์ ์์ฒญ์ ๋งฅ๋ฝ์์ Google์ ์ด๋ฌํ ์ฐ๋ ค๋ฅผ ์ค์ํ์ง ์์ ๊ฒ์ผ๋ก ์ธ์ํฉ๋๋ค.
๋ํ ๋ฉ๋ชจ๋ฆฌ์ ์์ ํ ์๋์ ๋ณด์ฅํ๊ธฐ ์ํ ์๋ก์ด ๊ธฐ์ ํ๋ณด์ ๋ํ Chrome ๊ฐ๋ฐ์์ ๋ฉ๋ชจ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. Google์ ๋ฐ๋ฅด๋ฉด Chrome์ ๋ณด์ ๋ฌธ์ ์ค 70%๋ ๋ฒํผ์ ๊ด๋ จ๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํด์ ํ ํ ๋ฒํผ๋ฅผ ์ฌ์ฉํ๋ ๋ฑ(use-after-free) ๋ฉ๋ชจ๋ฆฌ ์ค๋ฅ๋ก ์ธํด ๋ฐ์ํฉ๋๋ค. ์ด๋ฌํ ์ค๋ฅ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์ธ ๊ฐ์ง ์ฃผ์ ์ ๋ต์ ์ปดํ์ผ ๋จ๊ณ์์ ๊ฒ์ฌ ๊ฐํ, ๋ฐํ์ ์ ์ค๋ฅ ์ฐจ๋จ, ๋ฉ๋ชจ๋ฆฌ ์์ ์ธ์ด ์ฌ์ฉ์ ๋๋ค.
Chromium ์ฝ๋๋ฒ ์ด์ค์ Rust ์ธ์ด๋ก ๊ตฌ์ฑ ์์๋ฅผ ๊ฐ๋ฐํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ ์คํ์ด ์์๋ ๊ฒ์ผ๋ก ์๋ ค์ก์ต๋๋ค. Rust ์ฝ๋๋ ์์ง ์ฌ์ฉ์์๊ฒ ์ ๊ณต๋๋ ๋น๋์ ํฌํจ๋์ด ์์ง ์์ผ๋ฉฐ ์ฃผ๋ก Rust์์ ๋ธ๋ผ์ฐ์ ์ ๊ฐ๋ณ ๋ถ๋ถ์ ๊ฐ๋ฐํ ์ ์๋ ๊ฐ๋ฅ์ฑ๊ณผ C++๋ก ์์ฑ๋ ๋ค๋ฅธ ๋ถ๋ถ๊ณผ์ ํตํฉ์ ํ ์คํธํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ๋์์ C++ ์ฝ๋์ ๊ฒฝ์ฐ ์ด๋ฏธ ํด์ ๋ ๋ฉ๋ชจ๋ฆฌ ๋ธ๋ก์ ์ก์ธ์คํ์ฌ ๋ฐ์ํ๋ ์ทจ์ฝ์ ์ ์ ์ฉํ ๊ฐ๋ฅ์ฑ์ ์ฐจ๋จํ๊ธฐ ์ํด ์์ ํฌ์ธํฐ ๋์ MiraclePtr ์ ํ์ ์ฌ์ฉํ๋ ํ๋ก์ ํธ๊ฐ ๊ณ์ ๊ฐ๋ฐ๋๊ณ ์์ผ๋ฉฐ ์ปดํ์ผ ๋จ๊ณ์์ ์ค๋ฅ๋ฅผ ๊ฐ์งํ๋ ์๋ก์ด ๋ฐฉ๋ฒ๋ ์ ์๋ฉ๋๋ค.
๋ํ Google์ ๋ธ๋ผ์ฐ์ ๊ฐ ๋ ์๋ฆฌ๊ฐ ์๋ ์ธ ์๋ฆฌ๋ก ๊ตฌ์ฑ๋ ๋ฒ์ ์ ๋๋ฌํ ํ ์ฌ์ดํธ๊ฐ ์ค๋จ๋ ์ ์๋์ง ํ
์คํธํ๊ธฐ ์ํ ์คํ์ ์์ํ๊ณ ์์ต๋๋ค. ํนํ, Chrome 96์ ํ
์คํธ ๋ฆด๋ฆฌ์ค์์๋ User-Agent ํค๋ ๋ฒ์ 100(Chrome/100)์ ์ง์ ํ๋ฉด "chrome://flags#force-major-version-to-100.0.4650.4" ์ค์ ์ด ๋ํ๋ฉ๋๋ค. ํ์๋๊ธฐ ์์ํฉ๋๋ค. XNUMX์์๋ Firefox์์๋ ์ ์ฌํ ์คํ์ด ์ํ๋์์ผ๋ฉฐ, ์ผ๋ถ ์ฌ์ดํธ์์ ์ธ ์๋ฆฌ ๋ฒ์ ์ ์ฒ๋ฆฌํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค.
์ถ์ฒ : opennet.ru