Chrome ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ๊ถŒํ•œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์™ธ๋ถ€ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ์ทจ์•ฝ์ 

๊ฒŒ์‹œ ๋จ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ํ™•์žฅ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜์ง€ ์•Š๊ณ (manifest.json์˜ unsafe-eval ๋ฐ unsafe-inline ์—†์ด) ๋ชจ๋“  Chrome ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ์™ธ๋ถ€ JavaScript ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ถŒํ•œ์€ unsafe-eval ์—†์ด ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ๋กœ์ปฌ ๋ฐฐํฌ์— ํฌํ•จ๋œ ์ฝ”๋“œ๋งŒ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•˜์ง€๋งŒ ์ œ์•ˆ๋œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด ์ œํ•œ์„ ์šฐํšŒํ•˜๊ณ  ์ถ”๊ฐ€ ์ปจํ…์ŠคํŠธ์—์„œ ์™ธ๋ถ€ ์‚ฌ์ดํŠธ์—์„œ ๋กœ๋“œ๋œ JavaScript๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—.

Google์€ ํ˜„์žฌ ๋‹ค์Œ ํ•ญ๋ชฉ์— ๋Œ€ํ•œ ๊ณต๊ฐœ ์•ก์„ธ์Šค๋ฅผ ํ์‡„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ ๋ณด๊ณ ์„œ, ํ•˜์ง€๋งŒ ์•„์นด์ด๋ธŒ์—๋Š” ๋ณด์กด๋œ ๋ฌธ์ œ๋ฅผ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์ƒ˜ํ”Œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค. ๋ฐฉ๋ฒ• ๋น„์Šทํ•œ CSP์˜ script-src 'self' ์ œํ•œ์„ ์šฐํšŒํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ, document.createElement('script')๋ฅผ ํ†ตํ•ด ์Šคํฌ๋ฆฝํŠธ ํƒœ๊ทธ๋ฅผ ๋Œ€์ฒดํ•˜๊ณ  ๊ฐ€์ ธ์˜ค๊ธฐ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ์™ธ๋ถ€ ์ฝ˜ํ…์ธ ๋ฅผ ํฌํ•จ์‹œํ‚ค๋Š” ๊ฒƒ์œผ๋กœ ์š”์•ฝ๋ฉ๋‹ˆ๋‹ค. ๊ทธ ํ›„ ์ฝ”๋“œ๋Š” ๋‹ค์Œ์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ์ž์ฒด์˜ ์ปจํ…์ŠคํŠธ.

์ถœ์ฒ˜ : opennet.ru

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