์ด์ ์ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ์ ๊ฐ๋ฐํ ๊ฒ์ผ๋ก ์๋ ค์ง Graz University of Technology(์ค์คํธ๋ฆฌ์)์ ์ฐ๊ตฌ์ ๊ทธ๋ฃน
์ด๋ค ์บ์ ์ฑ๋์ ํน์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ ํฌํจ๋์ด ์๋์ง ์์ธกํ๋ ๋ฐ ์ฌ์ฉ๋๋ CPU์ ์ฒซ ๋ฒ์งธ ์์ค ๋ฐ์ดํฐ ์บ์(L1D)์์ ์ฑ๋ ์์ธก ๋ฉ์ปค๋์ฆ(๋ฐฉํฅ ์์ธก๊ธฐ)์ ๊ตฌํํ๋ ๊ณผ์ ์์ ๋ฌธ์ ๊ฐ ํ์ธ๋์์ต๋๋ค. AMD ํ๋ก์ธ์์ ์ฌ์ฉ๋๋ ์ต์ ํ๋ ฮผํ๊ทธ(ฮผTag) ํ์ธ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ฮผTag๋ ๊ฐ์ ์ฃผ์์ ํน์ ํด์ ํจ์๋ฅผ ์ ์ฉํ์ฌ ๊ณ์ฐ๋ฉ๋๋ค. ์๋ ์ค์ ์ฑ๋ ์์ธก ์์ง์ ฮผTag๋ฅผ ์ฌ์ฉํ์ฌ ํ ์ด๋ธ์์ ์บ์ ์ฑ๋์ ๊ฒฐ์ ํฉ๋๋ค. ๋ฐ๋ผ์ ฮผTag๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋ก์ธ์๊ฐ ๋ชจ๋ ์ต์ ์ ๊ฒ์ํ์ง ์๊ณ ํน์ ์ฑ๋์๋ง ์ก์ธ์คํ๋๋ก ์ ํํ ์ ์์ผ๋ฏ๋ก CPU ์๋์ง ์๋น๊ฐ ํฌ๊ฒ ์ค์ด๋ญ๋๋ค.
2011๋ ๋ถํฐ 2019๋ ๊น์ง ์ถ์๋ ๋ค์ํ ์ธ๋์ AMD ํ๋ก์ธ์์์ ์ฑ๋ ์์ธก ์์คํ ๊ตฌํ์ ๋ฆฌ๋ฒ์ค ์์ง๋์ด๋งํ๋ ๋์ ๋ ๊ฐ์ง ์๋ก์ด ๋ถ์ฑ๋ ๊ณต๊ฒฉ ๊ธฐ๋ฒ์ด ํ์ธ๋์์ต๋๋ค.
- Collide+Probe - ๊ณต๊ฒฉ์๊ฐ ๋์ผํ ๋ ผ๋ฆฌ CPU ์ฝ์ด์์ ์คํ๋๋ ํ๋ก์ธ์ค์ ๋ํ ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค๋ฅผ ์ถ์ ํ ์ ์์ต๋๋ค. ์ด ๋ฐฉ๋ฒ์ ํต์ฌ์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ ์ถ์ ํ๊ธฐ ์ํด ฮผTag๋ฅผ ๊ณ์ฐํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํด์ ํจ์์์ ์ถฉ๋์ ์ผ์ผํค๋ ๊ฐ์ ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. Intel ํ๋ก์ธ์์์ ์ฌ์ฉ๋๋ Flush+Reload ๋ฐ Prime+Probe ๊ณต๊ฒฉ๊ณผ ๋ฌ๋ฆฌ Collide+Probe๋ ๊ณต์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ ๋ฌผ๋ฆฌ์ ์ฃผ์์ ๋ํ ์ง์ ์์ด ์๋ํฉ๋๋ค.
- ๋ก๋+๋ค์ ๋ก๋ - ๋์ผํ ๋ฌผ๋ฆฌ์ CPU ์ฝ์ด์์ ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค ์ถ์ ์ ๋งค์ฐ ์ ํํ๊ฒ ํ์ธํ ์ ์์ต๋๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ ์ ์ด L1D ์บ์์ ํ ๋ฒ๋ง ํฌํจ๋ ์ ์๋ค๋ ์ฌ์ค์ ๊ธฐ์ดํฉ๋๋ค. ์ ๊ฒ๋ค. ๋ค๋ฅธ ๊ฐ์ ์ฃผ์์์ ๋์ผํ ๋ฉ๋ชจ๋ฆฌ ์ ์ ์ก์ธ์คํ๋ฉด ํด๋น ์ ์ด L1D ์บ์์์ ์ ๊ฑฐ๋์ด ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค๋ฅผ ์ถ์ ํ ์ ์์ต๋๋ค. ๊ณต๊ฒฉ์ ๊ณต์ ๋ฉ๋ชจ๋ฆฌ์ ์์กดํ์ง๋ง ์บ์ ๋ผ์ธ์ ํ๋ฌ์ํ์ง ์์ผ๋ฏ๋ก ๋ง์ง๋ง ์์ค ์บ์์์ ๋ฐ์ดํฐ๋ฅผ ํ๋ฌ์ํ์ง ์๋ ์คํ ์ค ๊ณต๊ฒฉ์ด ๊ฐ๋ฅํฉ๋๋ค.
์ฐ๊ตฌ์๋ค์ Collide+Probe ๋ฐ Load+Reload ๊ธฐ์ ์ ๊ธฐ๋ฐ์ผ๋ก ๋ช ๊ฐ์ง ๋ถ์ฑ๋ ๊ณต๊ฒฉ ์๋๋ฆฌ์ค๋ฅผ ์์ฐํ์ต๋๋ค.
- ๋ ํ๋ก์ธ์ค ๊ฐ์ ์จ๊ฒจ์ง ๊ฐ์ ํต์ ์ฑ๋์ ๊ตฌ์ฑํ์ฌ ์ด๋น ์ต๋ 588kB์ ์๋๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์๋ ๊ฐ๋ฅ์ฑ์ด ํ์๋ฉ๋๋ค.
- ฮผTag์ ์ถฉ๋์ ์ฌ์ฉํ๋ฉด ASLR(Address Space Layout Randomization)์ ๋ค์ํ ๋ณํ์ ๋ํ ์ํธ๋กํผ๋ฅผ ์ค์ด๊ณ ์์ ํ ์
๋ฐ์ดํธ๋ Linux ์์คํ
์ ์ปค๋์์ ASLR ๋ณดํธ๋ฅผ ์ฐํํ ์ ์์์ต๋๋ค. ์ฌ์ฉ์ ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ์๋๋ฐ์ค ํ๊ฒฝ์์ ์คํ๋๋ JavaScript ์ฝ๋ ๋ฐ ๋ค๋ฅธ ๊ฒ์คํธ ํ๊ฒฝ์์ ์คํ๋๋ ์ฝ๋๋ฅผ ์ฌ์ฉํ์ฌ ASLR ์ํธ๋กํผ๋ฅผ ์ค์ด๊ธฐ ์ํ ๊ณต๊ฒฉ์ ์ํํ ๊ฐ๋ฅ์ฑ์ด ํ์๋ฉ๋๋ค.
- Collide+Probe ๋ฐฉ์์ ๊ธฐ๋ฐ์ผ๋ก ์ทจ์ฝํ ๊ตฌํ์์ ์ํธํ ํค๋ฅผ ๋ณต๊ตฌํ๊ธฐ ์ํ ๊ณต๊ฒฉ์ด ๊ตฌํ๋์์ต๋๋ค.
T-ํ ์ด๋ธ ) AES ์ํธํ. - Spectre ๊ณต๊ฒฉ์ Collide+Probe ๋ฐฉ์์ ๋ฐ์ดํฐ ํ๋ ์ฑ๋๋ก ์ฌ์ฉํ์ฌ ๊ณต์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ปค๋์์ ๊ฐ์ธ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ ์ ์์์ต๋๋ค.
์ด ์ทจ์ฝ์ ์ ๋ง์ดํฌ๋ก์ํคํ
์ฒ ๊ธฐ๋ฐ AMD ํ๋ก์ธ์์์ ๋ฐ์ํฉ๋๋ค.
๋ถ๋์ , ํ์ผ๋๋ผ์ด๋ฒ, ์คํ๋กค๋ฌ, Zen(Ryzen, Epic), Zen+ ๋ฐ Zen2.
AMD๋ 23๋
2019์ XNUMX์ผ์ ์ด ๋ฌธ์ ์ ๋ํด ํต๋ณด ๋ฐ์์ง๋ง ํ์ฌ๊น์ง
์ถ์ฒ : opennet.ru