Chrome ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์„ ์ง€์›ํ•˜๋Š” uBlock Origin ๋ฐ AdGuard์˜ ์ค€๋น„๋œ ๋ณ€ํ˜•

์›์น˜ ์•Š๋Š” ์ฝ˜ํ…์ธ ์— ๋Œ€ํ•œ uBlock Origin ์ฐจ๋‹จ ์‹œ์Šคํ…œ์˜ ์ €์ž์ธ Raymond Hill์€ uBlock Origin ๋ณ€ํ˜•์„ declarativeNetRequest API๋กœ ๋ณ€ํ™˜ํ•œ ๊ตฌํ˜„๊ณผ ํ•จ๊ป˜ ์‹คํ—˜์ ์ธ ๋ธŒ๋ผ์šฐ์ € ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ธ uBO Minus๋ฅผ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด API์˜ ์‚ฌ์šฉ์€ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์— ๊ทœ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํฌ๋กฌ ๋งค๋‹ˆํŽ˜์ŠคํŠธ. ๊ธฐ์กด uBlock Origin๊ณผ ๋‹ฌ๋ฆฌ ์ƒˆ๋กœ์šด ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์€ ๋ธŒ๋ผ์šฐ์ €์— ๋‚ด์žฅ๋œ ์ฝ˜ํ…์ธ  ํ•„ํ„ฐ๋ง ์—”์ง„์˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉฐ ๋ชจ๋“  ์‚ฌ์ดํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๋กœ์ฑ„๊ณ  ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด ์„ค์น˜ ๊ถŒํ•œ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ๊ธฐ๋Šฅ์—๋Š” ์•„์ง ํŒ์—… ํŒจ๋„์ด๋‚˜ ์„ค์ • ํŽ˜์ด์ง€๊ฐ€ ์—†์œผ๋ฉฐ ๊ธฐ๋Šฅ์€ ๋„คํŠธ์›Œํฌ ์š”์ฒญ ์ฐจ๋‹จ์œผ๋กœ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ํ™•์žฅ๋œ ๊ถŒํ•œ ์—†์ด ์ž‘์—…ํ•˜๋ ค๋ฉด ํŽ˜์ด์ง€์˜ ์ฝ˜ํ…์ธ  ๊ต์ฒด๋ฅผ ์œ„ํ•œ ์ฝ”์Šค๋ฉ”ํ‹ฑ ํ•„ํ„ฐ("##"), ์‚ฌ์ดํŠธ์˜ ์Šคํฌ๋ฆฝํŠธ ๋Œ€์ฒด("##+js"), ์š”์ฒญ ๋ฆฌ๋””๋ ‰์…˜์„ ์œ„ํ•œ ํ•„ํ„ฐ("redirect=") ๋ฐ ํ—ค๋”์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ํ•„ํ„ฐ๋Š” ๋น„ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. CSP(์ฝ˜ํ…์ธ  ๋ณด์•ˆ ์ •์ฑ…) ๋ฐ ์š”์ฒญ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ œ๊ฑฐ์šฉ ํ•„ํ„ฐ("removeparam="). ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ๊ธฐ๋ณธ ํ•„ํ„ฐ ๋ชฉ๋ก์€ uBlock Origin์˜ ์„ค์ •๊ณผ ์™„์ „ํžˆ ์ผ์น˜ํ•˜๋ฉฐ ์•ฝ 22๊ฐœ์˜ ๊ทœ์น™์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ๋ฉฐ์น  ์ „ AdGuard ๊ด‘๊ณ  ์ฐจ๋‹จ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์˜ ์‹คํ—˜์  ๋ฒ„์ „์ธ AdGuardMV3๊ฐ€ ๋ฐœํ‘œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฒ„์ „์€ declarativeNetRequest API๋กœ๋„ ๋ฒˆ์—ญ๋˜์—ˆ์œผ๋ฉฐ Chrome ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „๋งŒ ์ง€์›ํ•˜๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ์ œ์•ˆ๋œ ํ”„๋กœํ† ํƒ€์ž…์€ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ•„์š”ํ•œ ๋ชจ๋“  ๊ด‘๊ณ  ์ฐจ๋‹จ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, ๊ณ ๊ธ‰ ์‚ฌ์šฉ์ž๊ฐ€ ๊ด€์‹ฌ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ ๋ฉด์—์„œ ์„ ์–ธ๋ฌธ XNUMXํŒ์˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ๋ณด๋‹ค ๋’ค๋–จ์–ด์ง‘๋‹ˆ๋‹ค.

์ƒˆ๋กœ์šด AdGuard๋Š” ๊ณ„์†ํ•ด์„œ ๋ฐฐ๋„ˆ, ์†Œ์…œ ๋„คํŠธ์›Œํฌ ์œ„์ ฏ ๋ฐ ์„ฑ๊ฐ€์‹  ์š”์†Œ๋ฅผ ์ˆจ๊ธฐ๊ณ  YouTube์™€ ๊ฐ™์€ ๋น„๋””์˜ค ํ”Œ๋žซํผ์—์„œ ๊ด‘๊ณ ๋ฅผ ์ฐจ๋‹จํ•˜๋ฉฐ ์›€์ง์ž„ ์ถ”์ ๊ณผ ๊ด€๋ จ๋œ ์š”์ฒญ์„ ์‚ฌ์ „์— ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค. ์ œํ•œ ์‚ฌํ•ญ์—๋Š” ์ฝ”์Šค๋ฉ”ํ‹ฑ ๊ทœ์น™ ์ ์šฉ ์‹œ 1.5~2์ดˆ ์ง€์—ฐ์œผ๋กœ ์ธํ•œ ๊ด‘๊ณ  ์‚ฝ์ž… ๊นœ๋ฐ•์ž„, ์ฟ ํ‚ค ํ•„ํ„ฐ๋ง๊ณผ ๊ด€๋ จ๋œ ์ผ๋ถ€ ๊ธฐ๋Šฅ ์†์‹ค, ์ •๊ทœ์‹ ์‚ฌ์šฉ ๋ฐ ์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜ ํ•„ํ„ฐ๋ง(์ƒˆ API๋Š” ๋‹จ์ˆœํ™”๋œ ์ •๊ทœ์‹ ์ œ๊ณต)์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. , ๊ฐœ๋ฐœ์ž ๋ชจ๋“œ์—์„œ๋งŒ ํ†ต๊ณ„ ๋ฐ ํ•„ํ„ฐ ์‘๋‹ต ๋กœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์„ ์–ธ๋ฌธ์˜ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์— ๋„์ž…๋œ ์ œํ•œ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ๊ทœ์น™ ์ˆ˜๊ฐ€ ์ค„์–ด๋“ค ๊ฐ€๋Šฅ์„ฑ๋„ ์–ธ๊ธ‰๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์— declarativeNetRequest๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํ•˜๋‚˜์˜ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ์„ค์น˜๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ ๋ชจ๋“  ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ผ๋ฐ˜์ ์ธ ์ œํ•œ(330๊ฐœ ๊ทœ์น™ ํ—ˆ์šฉ)์ด ์žˆ์œผ๋ฏ€๋กœ ์ •์  ๊ทœ์น™์—๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์ถ”๊ฐ€๋˜๋Š” ๊ฒฝ์šฐ์—๋Š” 30๋งŒ ๊ฐœ์˜ ๊ทœ์น™์ด๋ผ๋Š” ์ œํ•œ์ด ์ ์šฉ๋˜๋ฏ€๋กœ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์  ๊ทœ์น™์˜ ๊ฒฝ์šฐ ๊ทœ์น™ 5000๊ฐœ, ์ •๊ทœ ํ‘œํ˜„์‹์˜ ๊ฒฝ์šฐ ๊ทœ์น™ 1000๊ฐœ ์ œํ•œ์ด ๋„์ž…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

2023๋…„ XNUMX์›”๋ถ€ํ„ฐ Chrome ๋ธŒ๋ผ์šฐ์ €๋Š” ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ๋‘ ๋ฒˆ์งธ ๋ฒ„์ „ ์ง€์›์„ ์ค‘๋‹จํ•˜๊ณ  ๋ชจ๋“  ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์„ ํ•„์ˆ˜๋กœ ๋งŒ๋“ค ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์˜ ์„ ์–ธ๋ฌธ์ด ๋ถ€์ ์ ˆํ•œ ์ฝ˜ํ…์ธ ๋ฅผ ์ฐจ๋‹จํ•˜๊ณ  ๋ณด์•ˆ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋งŽ์€ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์ด ์ค‘๋‹จ๋˜์–ด ๋น„ํŒ์˜ ๋Œ€์ƒ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Chrome ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋Š” ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์— ์ œ๊ณต๋˜๋Š” ๊ธฐ๋Šฅ๊ณผ ๋ฆฌ์†Œ์Šค๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์€ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์˜ ๋ณด์•ˆ, ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ ๋ฐ ์„ฑ๋Šฅ์„ ๊ฐ•ํ™”ํ•˜๊ธฐ ์œ„ํ•œ ๊ณ„ํš์˜ ์ผํ™˜์œผ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์˜ ์ฃผ์š” ๋ชฉํ‘œ๋Š” ์•ˆ์ „ํ•˜๊ณ  ์„ฑ๋Šฅ์ด ๋›ฐ์–ด๋‚œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ๋” ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•˜๊ณ , ์•ˆ์ „ํ•˜์ง€ ์•Š๊ณ  ๋Š๋ฆฐ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ƒ์„ฑํ•˜๊ธฐ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์˜ ์„ ์–ธ๋ฌธ์— ๋Œ€ํ•œ ๊ฐ€์žฅ ํฐ ๋ถˆ๋งŒ์€ webRequest API์˜ ์ฝ๊ธฐ ์ „์šฉ ๋ชจ๋“œ๋กœ์˜ ๋ณ€ํ™˜๊ณผ ๊ด€๋ จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ ์š”์ฒญ์— ๋Œ€ํ•œ ์ „์ฒด ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ๊ฐ–๊ณ  ์ฆ‰์‹œ ํŠธ๋ž˜ํ”ฝ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ž์ฒด ํ•ธ๋“ค๋Ÿฌ๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด API๋Š” uBlock Origin, AdGuard ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์—์„œ ์›์น˜ ์•Š๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ์ฐจ๋‹จํ•˜๊ณ  ๋ณด์•ˆ์„ ๋ณด์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. webRequest API ๋Œ€์‹  ๋งค๋‹ˆํŽ˜์ŠคํŠธ์˜ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์€ ์ฐจ๋‹จ ๊ทœ์น™์„ ๋…๋ฆฝ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋‚ด์žฅ ํ•„ํ„ฐ๋ง ์—”์ง„์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์ž์ฒด ํ•„ํ„ฐ๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‚ฌ์šฉ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์œผ๋ฉฐ ๊ธฐ๋Šฅ์ด ์ œํ•œ๋œ declarativeNetRequest API๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์กฐ๊ฑด์— ๋”ฐ๋ผ ์„œ๋กœ ๊ฒน์น˜๋Š” ๋ณต์žกํ•œ ๊ทœ์น™์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณง ์ถœ์‹œ๋  ์„ ์–ธ๋ฌธ์˜ ์„ธ ๋ฒˆ์งธ ๋ฒ„์ „์— ๋Œ€ํ•œ XNUMX๋…„ ๊ฐ„์˜ ๋…ผ์˜๋ฅผ ํ†ตํ•ด Google์€ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ๋งŽ์€ ํฌ๋ง ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜๊ณ  ๊ธฐ์กด ์ถ”๊ฐ€ ์‚ฌํ•ญ์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ์›๋ž˜ ์ œ๊ณต๋˜์—ˆ๋˜ declarativeNetRequest API๋ฅผ ํ™•์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Google์€ ์—ฌ๋Ÿฌ ์ •์  ๊ทœ์น™ ์„ธํŠธ ์‚ฌ์šฉ, ์ •๊ทœ์‹ ํ•„ํ„ฐ๋ง, HTTP ํ—ค๋” ์ˆ˜์ •, ๋™์ ์œผ๋กœ ๊ทœ์น™ ๋ณ€๊ฒฝ ๋ฐ ์ถ”๊ฐ€, ์ฟผ๋ฆฌ ๋งค๊ฐœ๋ณ€์ˆ˜ ์‚ญ์ œ ๋ฐ ๊ต์ฒด, ํƒญ ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง, ์„ธ์…˜๋ณ„ ๊ทœ์น™ ์„ธํŠธ ์ƒ์„ฑ์„ ์œ„ํ•œ declarativeNetRequest API์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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