Greasemonkey: GM 4.0์€ GitHub์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(CSP/์ƒŒ๋“œ๋ฐ•์Šค ๋ฌธ์ œ)

์— ๋งŒ๋“  2017๋…„ 10์›” 25์ผ  ยท  24์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: greasemonkey/greasemonkey

GM์€ ์–ด๋–ค ์ด์œ ๋กœ raw.github.com์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค

https://github.com/reek/anti-adblock-killer#anti -adblock-killer--reek
์—ฌ๊ธฐ "3๋‹จ๊ณ„: UserScript"์—์„œ ํ•˜๋‚˜์˜ ์Šคํฌ๋ฆฝํŠธ์— ๋Œ€ํ•ด 4๊ฐœ์˜ ๋ฏธ๋Ÿฌ๋ฅผ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. github ๋ฏธ๋Ÿฌ๋งŒ ์„ค์น˜ ๋Œ€ํ™” ์ƒ์ž๋ฅผ ์—ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

GM 4.2 ๋ฐ FF 58.0.2 ์‚ฌ์šฉ

์ตœ์‹  GM 4.3 ๋ฒ„์ „(ํ˜„์žฌ GM 4.3beta4)์„ ์‚ฌ์šฉํ•˜์„ธ์š”.
๋ฒ ํƒ€ ๋ฒ„์ „ ์• ๋“œ์˜จ ์œผ๋กœ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  24 ๋Œ“๊ธ€

์ด ๊ฒฝ์šฐ ํ˜ธ์ŠคํŠธ ๊ถŒํ•œ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ˜ํ…์ธ  ์Šคํฌ๋ฆฝํŠธ๋Š” moz ๋ฌธ์„œ์— ๋”ฐ๋ผ " about:blank "์ธ ์ƒ๋‹จ ํ”„๋ ˆ์ž„์— ์ฃผ์ž…๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Firefox CSP ๋ฌธ์ œ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋ถ„๋ช…ํžˆ CSP ์ƒŒ๋“œ๋ฐ•์Šค ์ง€์‹œ๋ฌธ์ด ์žˆ๋Š” ํŽ˜์ด์ง€์— ์ฝ˜ํ…์ธ  ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฝ์ž…ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. CSP๋ฅผ ๋„๊ณ ("security.csp.enable"์„ false๋กœ ์„ค์ •) ์„ค์น˜๋ฅผ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ ํ›„ CSP๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

csp

ํ , ํ˜„์žฌ ์ง์žฅ์— ์žˆ์œผ๋ฉฐ Firefox 52 ESR์—๋งŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AMO์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค๋œ ์•ŒํŒŒ 4.0์„ ์‚ฌ์šฉํ•˜์—ฌ security.csp.enable ๊ฐ€ true๋กœ ์„ค์ •๋˜์–ด ์žฌํ˜„ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์–ด๋–ค ๋ฒ„์ „์˜ Firefox์—์„œ ์‹คํŒจํ•ฉ๋‹ˆ๊นŒ? Mozilla ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ œ๊ธฐ๋˜์–ด์•ผ ํ•˜๋Š” ํšŒ๊ท€์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CSP๋Š” ์ฝ˜ํ…์ธ  ์Šคํฌ๋ฆฝํŠธ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

56(์•ˆ์ •) ๋ฐ 57(์•ผ๊ฐ„)์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ์žฌ์ƒ์‚ฐ: https://gist.github.com/arantius/f6fd80b1efad368a45ca35567bc31b18 ("์›์‹œ" ํด๋ฆญ)

54 ์ž‘ํ’ˆ

55๋„ ์ž‘๋™ํ•˜๊ณ  56+๋Š” ๊ณ ์žฅ๋‚ฌ์Šต๋‹ˆ๋‹ค.

https://bugzilla.mozilla.org/show_bug.cgi?id=1411641

GitHub์˜์—์„œ ์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ์„ค์น˜๋Š” ๋‹ค๋ฅด๊ฒŒ ๋ญ ํŒŒ์ด์–ด ํญ์Šค 57 ๋…„ (2.8.18) ViolentMonkey์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ?

ํŽธ์ง‘: ๋ถ„๋ช…ํžˆ ๊ทธ๋“ค์€ ์ด์™€ ๋™์ผํ•œ Firefox ๋ฒ„๊ทธ ์ค‘ ์ผ๋ถ€๋ฅผ ์ฐธ์กฐํ•˜๋Š” ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ ์„ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. GreaseMonkey์—์„œ ํ•ด๋‹น Blob URL ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•„๋‹ˆ์š”. Violentmonkey๋Š” <script> ๊ฐœ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ง์ ‘ ์ฃผ์ž…ํ•ฉ๋‹ˆ๋‹ค. Greasemonkey๋Š” tabs.executeScript() ํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๋ฐฉ๋ฒ• ๋ชจ๋‘ ๊ณ ์œ ํ•œ ๋‰˜์•™์Šค์™€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.


๋ณ„ ๊ด€๋ จ์ด ์—†์ง€๋งŒ ๊ถ๊ธˆํ•œ ์ ์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. Violentmonkey๋Š” ์‚ฌ์ดํŠธ ๊ฐ„ XHR๊ณผ ๊ฐ™์€ ์ƒ์Šน๋œ API ํ˜ธ์ถœ์„ ์–ด๋–ป๊ฒŒ ์ œ๊ณตํ•ฉ๋‹ˆ๊นŒ? ๋‚ด๊ฐ€ ์•„๋Š” ํ•œ <script> ์š”์†Œ๋Š” ์ฝ˜ํ…์ธ  ์Šคํฌ๋ฆฝํŠธ ์ปจํ…์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ํŽ˜์ด์ง€ ์ปจํ…์ŠคํŠธ์—์„œ ์‹คํ–‰๋˜๋ฏ€๋กœ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ๊ณผ ์ง์ ‘ ํ†ต์‹ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๊นŒ?

GitHub์˜ ์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ์„ค์น˜๋Š” Firefox 57์˜ ViolentMonkey(2.8.18)์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€์š”?

Tampermonkey์™€ Violentmonkey๋Š” webRequest ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ์„ค์น˜๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๋ฐ˜๋ฉด Greasemonkey๋Š” content script ํ•ฉ๋‹ˆ๋‹ค.

Tampermonkey์™€ Violentmonkey๋Š” webRequest๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ์„ค์น˜๋ฅผ ๊ฐ์ง€ํ•˜๋Š” ๋ฐ˜๋ฉด Greasemonkey๋Š” ์ฝ˜ํ…์ธ  ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํ . ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ํ•˜๋Š” ์ง€์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. filterResponseData ์‚ฌ์šฉ์œผ๋กœ ์ธํ•ด 52 ESR์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์ง€๋งŒ. ๋”ฐ๋ผ์„œ ํ˜„์žฌ๋กœ์„œ๋Š” ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
https://github.com/sxderp/greasemonkey/tree/use-window-to-install-from-cache

์–ด๋–ป๊ฒŒ ๋“  ์ด๊ฒƒ์€ ์ง€๋‚œ ๋ฉฐ์น  ๋™์•ˆ ์•ผ๊ฐ„์— Firefox์—์„œ ์ž‘๋™ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. Firefox๊ฐ€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋Š”์ง€ ๋˜๋Š” Greasemonkey๋กœ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ ๋ชจ๋“  ๊ฒƒ์ด ์˜ˆ์ƒ๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. github์—์„œ ์›์‹œ ๋ฒ„์ „์˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ฐฉ๋ฌธํ•˜๋ฉด ๊ทธ๋ฆฌ์Šค๋ชฝํ‚ค ์„ค์น˜ ์ฐฝ์ด ์ฆ‰์‹œ ์—ด๋ฆฝ๋‹ˆ๋‹ค.

์–ด๋–ป๊ฒŒ ๋“  ์ด๊ฒƒ์€ ์ง€๋‚œ ๋ฉฐ์น  ๋™์•ˆ ์•ผ๊ฐ„์— Firefox์—์„œ ์ž‘๋™ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

Greasemonkey๋Š” ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ๊ฐ์ง€๋˜๋Š” ๋ฐฉ์‹์„ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. #2719
์ง€๊ธˆ ๋‹ซ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋ฅผ ์œ„ํ•ด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค! ์ถ•ํ•˜ํ•ฉ๋‹ˆ๋‹ค...

๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://raw.githubusercontent.com/devunt/make-gis-great-again/master/gis-vib.user.js ๋กœ ์ด๋™ํ–ˆ๋Š”๋ฐ ์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์„ค์น˜ํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. GM 4.2 ๋ฐ FF 58.0.2 ์‚ฌ์šฉ

GM 4.2 ๋ฐ FF 58.0.2 ์‚ฌ์šฉ

์ตœ์‹  GM 4.3 ๋ฒ„์ „(ํ˜„์žฌ GM 4.3beta4)์„ ์‚ฌ์šฉํ•˜์„ธ์š”.
๋ฒ ํƒ€ ๋ฒ„์ „ ์• ๋“œ์˜จ ์œผ๋กœ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@Eselce ๊ณ„์† ์‡ผ User script download failed

@bluelovers ํ , ๊ทธ ๋งํฌ๋Š” ์ €์—๊ฒŒ ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค(GM 4.3beta7, FF 59.0b13).

์›๋ณธ ๋ณด๊ณ ์„œ ๋งํฌ๋ฅผ ์—ด๋ฉด "github.com์—์„œ ์„ค์น˜" ๋งํฌ๊ฐ€ ์ตœ์‹ (4.3) ๋ฒ ํƒ€์—์„œ ์˜ˆ์ƒ๋Œ€๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

GM 4.3beta7/FF 58.0.2 Mac์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์›๋ž˜ ํ…Œ์ŠคํŠธ์™€ ๋‚ด ์š”์  ์ค‘ ํ•˜๋‚˜์˜ ๊ฒฝ์šฐ ์„ค์น˜ ํŒ์—…์ด ๋‚˜ํƒ€๋‚˜์ง€๋งŒ ์„ค์น˜๋ฅผ ํด๋ฆญํ•˜๋ฉด "์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ๋‹ค์šด๋กœ๋“œ ์‹คํŒจ"๋ผ๊ณ  ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ ์šฐ๋ฆฌ ์กฐ์ง์˜ GitHub Enterprise ์ธ์Šคํ„ด์Šค์—์„œ๋Š” ์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ์›์‹œ ๋ณด๊ธฐ๋ฅผ ์ฐพ์•„๋ด๋„ ์„ค์น˜ ํŒ์—…์ด ๋‚˜ํƒ€๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ๋‚ด ์ธ์ฆ๋œ ์„ธ์…˜์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€ ์•Š์Šต๋‹ˆ๊นŒ? (์šฐ๋ฆฌ GH ์ธ์Šคํ„ด์Šค์—์„œ๋Š” ์ต๋ช… ์•ก์„ธ์Šค๊ฐ€ ๋น„ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.)

์›๋ž˜ ํ…Œ์ŠคํŠธ์™€ ๋‚ด ์š”์  ์ค‘ ํ•˜๋‚˜์— ๋Œ€ํ•ด ... "์‚ฌ์šฉ์ž ์Šคํฌ๋ฆฝํŠธ ๋‹ค์šด๋กœ๋“œ ์‹คํŒจ".

๋งํฌ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

๋˜ํ•œ ์šฐ๋ฆฌ ์กฐ์ง์˜ GitHub Enterprise ์ธ์Šคํ„ด์Šค์—์„œ ... ์•„๋งˆ๋„ ๋‚ด ์ธ์ฆ ์„ธ์…˜์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๊นŒ?

์ด๊ฒƒ์„ ์ถ”์ ํ•˜๋Š” ๋ฐ ์ด๋ฏธ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•˜์ง€๋งŒ ํŽธ๋ฆฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

"์›๋ž˜ ํ…Œ์ŠคํŠธ"๋ž€ OP, https://github.com/reek/anti-adblock-killer/blob/master/anti-adblock-killer.user.js์˜ ํ…Œ์ŠคํŠธ๋ฅผ ์˜๋ฏธํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

heh3

(๋ฌผ๋ก  readme.md์—์„œ "Install from github.com" ๋งํฌ๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๊ฒฐ๊ณผ๋Š” ๋˜‘๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฐ™์€ ๋งํฌ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.)
ํ•˜์ง€๋งŒ 59.0b14(64๋น„ํŠธ)๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์น˜๋ฅผ ์œ„ํ•ด ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—…์„ Tampermonkey์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋Š” ํŒŒ์ด์–ดํญ์Šค ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค ๋‚ซ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ด๋ฏธ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์œ„์˜ ์‚ฌ์šฉ์ž๋Š” ํ˜ผ๋ž€์Šค๋Ÿฌ์›Œํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜ ์ฐฝ์ด ์—ด๋ฆฌ๋ฉด ์ด ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ ์ด๋Š” ๋ณ„๋„์˜ ๋ฌธ์ œ์ด๋ฏ€๋กœ ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

(์œ„์— ๋ณด๊ณ ๋œ ํŠน์ • ์‚ฌํ•ญ๋„ ์ด๋ฏธ ์ˆ˜์ •๋˜์—ˆ์ง€๋งŒ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๋Š” ์ƒˆ๋กœ์šด ์‰ฌ์šด ๋นŒ๋“œ๋Š” ์—†๋‹ค๊ณ  _์ƒ๊ฐ_ํ•ฉ๋‹ˆ๋‹ค.)

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰