ํŒŒ์ด์–ดํญ์Šค 72 ๋ฆด๋ฆฌ์Šค

์›น ๋ธŒ๋ผ์šฐ์ € ์ถœ์‹œ ํŒŒ์ด์–ด ํญ์Šค 72๊ณผ ๋ชจ๋ฐ”์ผ ๋ฒ„์ „ Android ํ”Œ๋žซํผ์šฉ Firefox 68.4. ๋˜ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋ญ‡ ๊ฐ€์ง€ ์žฅ๊ธฐ ์ง€์› 68.4.0. ๊ณง ๋ฌด๋Œ€์— ์˜ค๋ฅธ๋‹ค ๋ฒ ํƒ€ ํ…Œ์ŠคํŠธ Firefox 73 ๋ธŒ๋žœ์น˜๊ฐ€ ์ด์ „๋  ์˜ˆ์ •์ด๋ฉฐ, ์ถœ์‹œ๋Š” 11์›” XNUMX์ผ๋กœ ์˜ˆ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค(ํ”„๋กœ์ ํŠธ ์›€์ง์ด๋Š” 4์ฃผ ๋™์•ˆ ๊ฐœ๋ฐœ์ฃผ๊ธฐ).

์ฃผ์š” ํ˜์‹ :

  • ๋ถ€์ ์ ˆํ•œ ์ฝ˜ํ…์ธ ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ํ‘œ์ค€ ์ฐจ๋‹จ ๋ชจ๋“œ ํฌํ•จ ๋œ ์ˆจ๊ฒจ์ง„ ์‹๋ณ„ ๋ฐฉ๋ฒ•(โ€œ๋ธŒ๋ผ์šฐ์ € ํ•‘๊ฑฐํ”„๋ฆฐํŒ…โ€)์„ ์‚ฌ์šฉํ•œ ์‚ฌ์šฉ์ž ์ถ”์ ์œผ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์นดํ…Œ๊ณ ๋ฆฌ Disconnect.me ๋ชฉ๋ก์—๋Š” ์ˆจ๊ฒจ์ง„ ์‹๋ณ„์„ ์œ„ํ•ด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ฐํ˜€์ง„ ํ˜ธ์ŠคํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆจ๊ฒจ์ง„ ์‹๋ณ„์€ ์ •๋ณด์˜ ์˜๊ตฌ ์ €์žฅ์„ ๋ชฉ์ ์œผ๋กœ ํ•˜์ง€ ์•Š๋Š” ์˜์—ญ(โ€œ์Šˆํผ์ฟ ํ‚คโ€)์— ์‹๋ณ„์ž๋ฅผ ์ €์žฅํ•˜๋Š” ๊ฒƒ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฐ„์ ‘์ ์ธ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์‹๋ณ„์ž๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ํ™”๋ฉด ํ•ด์ƒ๋„, ์ง€์›๋˜๋Š” MIME ์œ ํ˜• ๋ชฉ๋ก, ํ—ค๋”๋ณ„ ์˜ต์…˜(HTTP / 2 ะธ HTTPS), ํ™•๋ฆฝ๋œ ๋ถ„์„ ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ๊ธ€๊ผด, ๋น„๋””์˜ค ์นด๋“œ์™€ ๊ด€๋ จ๋œ ํŠน์ • ์›น API์˜ ๊ฐ€์šฉ์„ฑ ํŠน์ง• WebGL ๋ฐ Canvas๋กœ ๋ Œ๋”๋ง, ์‹œ์žฅ ์กฐ์ž‘ CSS๋กœ ์ž‘์—… ๊ธฐ๋Šฅ ๋ถ„์„ ์ฅ ะธ ๊ฑด๋ฐ˜.
    ํŒŒ์ด์–ดํญ์Šค 72 ๋ฆด๋ฆฌ์Šค

  • ํ™œ์„ฑํ™”๋จ ๋ฐฉ๋ฒ•๋“ค ํˆฌ์Ÿํ•˜๋‹ค ์‚ฌ์ดํŠธ์— ์ถ”๊ฐ€ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋ผ๋Š” ์„ฑ๊ฐ€์‹  ์š”์ฒญ(Notification.requestPermission(), PushManager.subscribe() ๋ฐ MediaDevices.getDisplayMedia())์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ธ์ฆ ํ™•์ธ ์š”์ฒญ์œผ๋กœ ์ธํ•ด ๋” ์ด์ƒ ๋ธŒ๋ผ์šฐ์ € ์ž‘์—…์ด ์ค‘๋‹จ๋˜์ง€ ์•Š์ง€๋งŒ ํŽ˜์ด์ง€์™€์˜ ์‚ฌ์šฉ์ž ์ƒํ˜ธ ์ž‘์šฉ(๋งˆ์šฐ์Šค ํด๋ฆญ ๋˜๋Š” ํ‚ค ๋ˆ„๋ฅด๊ธฐ)์ด ๊ธฐ๋ก๋œ ํ›„์—๋งŒ ์ฃผ์†Œ ํ‘œ์‹œ์ค„์— ํ‘œ์‹œ๊ธฐ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ์‚ฌ์ดํŠธ์—์„œ๋Š” ์ฃผ๋กœ ์ฃผ๊ธฐ์ ์œผ๋กœ ํ‘ธ์‹œ ์•Œ๋ฆผ์„ ์š”์ฒญํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ถŒํ•œ ์š”์ฒญ ๊ธฐ๋Šฅ์„ ๋‚จ์šฉํ•ฉ๋‹ˆ๋‹ค. ์›๊ฒฉ ์ธก์ • ๋ถ„์„์— ๋”ฐ๋ฅด๋ฉด ์ด๋Ÿฌํ•œ ์š”์ฒญ์˜ 97%๊ฐ€ ๊ฑฐ๋ถ€๋˜์—ˆ์œผ๋ฉฐ, 19%์˜ ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์˜ ๋˜๋Š” ๊ฑฐ๋ถ€ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์ง€ ์•Š๊ณ  ์ฆ‰์‹œ ํŽ˜์ด์ง€๋ฅผ ๋‹ซ์•˜์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€๋จ ์‹คํ—˜์  ์ง€์› HTTP/3 ํ”„๋กœํ† ์ฝœ(about:config์—์„œ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด "network.http.http3.enabled" ์˜ต์…˜์„ ์„ค์ •ํ•ด์•ผ ํ•จ) Firefox์˜ HTTP/3 ์ง€์›์€ ๋‹ค์Œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ๋„ค์ฝ”, Rust ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ QUIC ํ”„๋กœํ† ์ฝœ(HTTP/3)์˜ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ํ‘œ์ค€ํ™”ํ•˜๋‹ค QUIC ํ”„๋กœํ† ์ฝœ์„ HTTP/2์˜ ์ „์†ก์œผ๋กœ ์‚ฌ์šฉ).
  • ๋ฐœํšจ๋œ ๋ฒ•๋ฅ ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ CCPA (์บ˜๋ฆฌํฌ๋‹ˆ์•„ ์†Œ๋น„์ž ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ๋ฒ•) ์ถ”๊ฐ€ Mozilla ์„œ๋ฒ„์—์„œ ์›๊ฒฉ ์ธก์ • ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ธฐ๋Šฅ. "about:preferences#privacy"("Firefox ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋ฐ ์‚ฌ์šฉ" ์„น์…˜)์—์„œ ์›๊ฒฉ ์ธก์ • ์ˆ˜์ง‘์„ ๊ฑฐ๋ถ€ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ์›๊ฒฉ ์ธก์ • ์ „์†ก์„ ์ œ์–ดํ•˜๋Š” โ€‹โ€‹"Firefox๊ฐ€ ๊ธฐ์ˆ  ๋ฐ ์ƒํ˜ธ ์ž‘์šฉ ๋ฐ์ดํ„ฐ๋ฅผ Mozilla๋กœ ๋ณด๋‚ด๋„๋ก ํ—ˆ์šฉ" ํ™•์ธ๋ž€์„ ์„ ํƒ ์ทจ์†Œํ•˜๋ฉด Mozilla ์ฐฉ์ˆ˜ 30 ์ผ ๋™์•ˆ ์ œ๊ฑฐํ•˜๋‹ค ์›๊ฒฉ ์ธก์ • ์ „์†ก ์‹คํŒจ๋กœ ์ด์–ด์ง€๋Š” ์‹œ๊ฐ„ ๋™์•ˆ ์ˆ˜์ง‘๋œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค. ์›๊ฒฉ ์ธก์ • ์ˆ˜์ง‘ ํ”„๋กœ์„ธ์Šค ์ค‘์— Mozilla ์„œ๋ฒ„์— ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ์—๋Š” Firefox ์„ฑ๋Šฅ, ๋ณด์•ˆ ๋ฐ ์—ด๋ฆฐ ํƒญ ์ˆ˜ ๋ฐ ์„ธ์…˜ ๊ธฐ๊ฐ„๊ณผ ๊ฐ™์€ ์ผ๋ฐ˜ ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค(์—ด๋ฆฐ ์‚ฌ์ดํŠธ ๋ฐ ๊ฒ€์ƒ‰ ์ฟผ๋ฆฌ์— ๋Œ€ํ•œ ์ •๋ณด๋Š” ์ „์†ก๋˜์ง€ ์•Š์Œ). ์ˆ˜์ง‘๋œ ๋ฐ์ดํ„ฐ์˜ ์ „์ฒด ์„ธ๋ถ€์ •๋ณด๋Š” "about:telemetry" ํŽ˜์ด์ง€์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ํŒŒ์ด์–ดํญ์Šค 72 ๋ฆด๋ฆฌ์Šค

  • Linux ๋ฐ macOS์˜ ๊ฒฝ์šฐ Picture-in-Picture ๋ชจ๋“œ์—์„œ ๋น„๋””์˜ค๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์–ด ๋ธŒ๋ผ์šฐ์ €์—์„œ ํƒ์ƒ‰ํ•˜๋Š” ๋™์•ˆ ๊ณ„์† ํ‘œ์‹œ๋˜๋Š” ํ”Œ๋กœํŒ… ์ฐฝ ํ˜•ํƒœ๋กœ ๋น„๋””์˜ค๋ฅผ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ์—์„œ ๋ณด๋ ค๋ฉด ํˆดํŒ์„ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ ๋น„๋””์˜ค๋ฅผ ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์œผ๋กœ ํด๋ฆญํ•  ๋•Œ ํ‘œ์‹œ๋˜๋Š” ์ปจํ…์ŠคํŠธ ๋ฉ”๋‰ด์—์„œ "Picture in Picture"๋ฅผ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์ž์ฒด ์ปจํ…์ŠคํŠธ ๋ฉ”๋‰ด ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๋Œ€์ฒดํ•˜๋Š” YouTube์—์„œ๋Š” ์˜ค๋ฅธ์ชฝ- ๋‘ ๋ฒˆ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ Shift ํ‚ค๋ฅผ ๋ˆ„๋ฅธ ์ฑ„ ํด๋ฆญ).

    ํŒŒ์ด์–ดํญ์Šค 72 ๋ฆด๋ฆฌ์Šค

  • ์Šคํฌ๋กค๋ฐ”๊ฐ€ ํ‘œ์‹œ๋˜๋Š” ๊ฒฝ์šฐ ๋’ค์–ฝํžŒ ํ˜„์žฌ ํŽ˜์ด์ง€์˜ ๋ฐฐ๊ฒฝ์ƒ‰์ž…๋‹ˆ๋‹ค.
  • ์‚ญ์ œ๋จ ๊ธฐํšŒ ๊ณต๊ฐœ ํ‚ค ํ•€ HTTP ํ—ค๋”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ์‚ฌ์ดํŠธ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ธ์ฆ ๊ธฐ๊ด€์˜ ์ธ์ฆ์„œ๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐœ ํ‚ค ๋ฐ”์ธ๋”ฉ(PKP, ๊ณต๊ฐœ ํ‚ค ๊ณ ์ •). ์–ธ๊ธ‰๋œ ์ด์œ ๋Š” ์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ˆ˜์š”๊ฐ€ ๋‚ฎ๊ณ  ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ์˜ ์œ„ํ—˜์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค(PKP ์ง€์› ๋‹จ์ข… Chrome์˜ ๊ฒฝ์šฐ) ์ž˜๋ชป๋œ ํ‚ค ๋ฐ”์ธ๋”ฉ ๋˜๋Š” ํ‚ค ๋ถ„์‹ค(์˜ˆ: ์‹ค์ˆ˜๋กœ ์‚ญ์ œํ•˜๊ฑฐ๋‚˜ ํ•ดํ‚น์œผ๋กœ ์ธํ•œ ์†์ƒ)๋กœ ์ธํ•ด ์ž์‹ ์˜ ์‚ฌ์ดํŠธ๋ฅผ ์ฐจ๋‹จํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ตฌ์กฐ ํ—ˆ์šฉ ํŒจ์น˜OpenBSD์—์„œ ํ—ˆ์šฉ ๊ด€๊ณ„๋ฅผ ๋งบ๋‹ค ์‹œ์Šคํ…œ ํ˜ธ์ถœ ๋ฐํžˆ๋‹ค() ะธ ์•ฝ์†() ์ถ”๊ฐ€ ํŒŒ์ผ ์‹œ์Šคํ…œ ๋ฐ ํ”„๋กœ์„ธ์Šค ๊ฒฉ๋ฆฌ๋ฅผ ์œ„ํ•ด.
  • ๊ฐœ๋ณ„ ๋„๋ฉ”์ธ์˜ ์ด๋ฏธ์ง€ ์ฐจ๋‹จ์— ๋Œ€ํ•œ ์ง€์›์ด ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ œ๊ฑฐ ์ด์œ ๋Š” ์‚ฌ์šฉ์ž๋“ค ์‚ฌ์ด์—์„œ ํ•ด๋‹น ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ˆ˜์š”๊ฐ€ ๋ถ€์กฑํ•˜๊ณ  ์ฐจ๋‹จ์„ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋ถˆํŽธํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • Windows์šฉ ๋นŒ๋“œ์—์„œ๋Š” ์ผ๋ฐ˜ ์šด์˜ ์ฒด์ œ ์ธ์ฆ์„œ ์ €์žฅ์†Œ์˜ ํด๋ผ์ด์–ธํŠธ ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‹คํ—˜์  ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค(about:config์—์„œ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด security.osclientcerts.autoload ์˜ต์…˜์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•จ).
  • CSS Shadow Parts์— ๋Œ€ํ•œ ์ง€์›์€ ๊ธฐ๋ณธ์ ์œผ๋กœ "๋ฅผ ํฌํ•จํ•˜์—ฌ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.๋ถ€ํ’ˆ" ๋ฐ ์˜์‚ฌ ์š”์†Œ "::๋ถ€๋ถ„", ๋‹ค์Œ์—์„œ ์ง€์ •๋œ ์š”์†Œ๋ฅผ ์„ ํƒ์ ์œผ๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„€๋„์šฐ DOM.


    ๋ฌธ๋‹จ

    ...CSS์—์„œ ๋ถ€ํ’ˆ ์†์„ฑ์— ๋ฐ”์ธ๋”ฉ๋œ ์š”์†Œ๋ฅผ ์„ ํƒํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์„ธ์š”.

    ๋งž์ถค ์š”์†Œ::๋ถ€๋ถ„(์˜ˆ) {
    ํ…Œ๋‘๋ฆฌ: ๋‹จ์ƒ‰ 1px ๊ฒ€์ •์ƒ‰;
    ๊ตญ๊ฒฝ ๋ฐ˜๊ฒฝ : 5px;
    ํŒจ๋”ฉ : 5px;
    }

  • ์‚ฌ์–‘ ์ง€์› ์ถ”๊ฐ€ CSS ๋ชจ์…˜ ๊ฒฝ๋กœ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด JavaScript ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ค‘์— ๋ Œ๋”๋ง ๋ฐ ์ž…๋ ฅ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ฐจ๋‹จํ•˜์ง€ ์•Š๊ณ  CSS๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ฐœ์ฒด์˜ ๊ฒฝ๋กœ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด CSS ์†์„ฑ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
    ์˜คํ”„์…‹,
    ์˜คํ”„์…‹ ๊ฒฝ๋กœ,
    ์˜คํ”„์…‹ ์•ต์ปค,
    ์˜คํ”„์…‹ ๊ฑฐ๋ฆฌ ะธ
    ์˜คํ”„์…‹ ํšŒ์ „.

  • ์„ ํƒํ•œ CSS ๋ณ€ํ™˜ ์†์„ฑ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค. ๊ทœ๋ชจ, ํšŒ์ „ ะธ ๋ฒˆ์—ญ, ์†์„ฑ์— ๋ฐ”์ธ๋”ฉ๋˜์ง€ ์•Š์Œ ๋ณ€ํ™˜ (์ฆ‰, CSS์—์„œ๋Š” ์ด์ œ "transform: scale(2);" ๋Œ€์‹  "scale: 2;"๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).
  • JavaScript๋Š” ๋…ผ๋ฆฌ์  ์—ฐ๊ฒฐ ์—ฐ์‚ฐ์ž "๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.??", ์™ผ์ชฝ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ NULL์ด๊ฑฐ๋‚˜ ์ •์˜๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ์˜ค๋ฅธ์ชฝ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ  ๊ทธ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, "const foo = bar ?? bar๊ฐ€ null์ธ ๊ฒฝ์šฐ '๊ธฐ๋ณธ ๋ฌธ์ž์—ด'"์€ "||" ์—ฐ์‚ฐ์ž์™€ ๋ฐ˜๋Œ€๋กœ bar๊ฐ€ 0์ด๊ณ  ''์ธ ๊ฒฝ์šฐ๋ฅผ ํฌํ•จํ•˜์—ฌ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ bar์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
  • API ์ถ”๊ฐ€ FormData์ด๋ฒคํŠธ ๊ทธ๋ฆฌ๊ณ  ์ด๋ฒคํŠธ ์–‘์‹ ๋ฐ์ดํ„ฐ, ์ˆจ๊ฒจ์ง„ ์ž…๋ ฅ ์š”์†Œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ํ•„์š” ์—†์ด ์ œ์ถœ ์‹œ JavaScript ์ฒ˜๋ฆฌ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์–‘์‹์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • API ์œ„์น˜ ์ •๋ณด ์ƒˆ ์‚ฌ์–‘๊ณผ ์ผ์น˜ํ•˜๋„๋ก ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Coordinates๋ฅผ GeolocationCoordinates๋กœ, Position์„ GeolocationPosition์œผ๋กœ ์ด๋ฆ„์„ ๋ฐ”๊พธ์—ˆ์Šต๋‹ˆ๋‹ค.
    GeolocationPositionError์˜ ์œ„์น˜ ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค.

  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋””๋ฒ„๊ฑฐ์—์„œ ์ถ”๊ฐ€ ์กฐ๊ฑด๋ถ€ ์ค‘๋‹จ์  ์ง€์›(๊ฐ์‹œ ์ ), ๊ฐ์ฒด์˜ ํŠน์ • ์†์„ฑ์ด ๋ณ€๊ฒฝ๋˜๊ฑฐ๋‚˜ ์ฝํž ๋•Œ ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

    ํŒŒ์ด์–ดํญ์Šค 72 ๋ฆด๋ฆฌ์Šค

  • ๋งค์šฐ ๋งŽ์€ ์ˆ˜์˜ ํƒญ์ด ์—ด๋ ค ์žˆ์„ ๋•Œ JavaScript ๋””๋ฒ„๊ฑฐ์˜ ์‹œ์ž‘์ด ๊ฐ€์†ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์šฐ์„ , ์ด์ œ ๋ณด์ด๋Š” ํƒญ์— ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค).
  • ๋ฐ˜์‘ํ˜• ๋””์ž์ธ ๋ชจ๋“œ๋Š” ๋‹ค์–‘ํ•œ ๋ฉ”ํƒ€ ๋ทฐํฌํŠธ ๊ฐ’์˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๊ฒ€์‚ฌ ๋ชจ๋“œ์— "prefers-color-scheme" ๊ฐ’ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ะ’ ์›น ์ฝ˜์†” ์—ฌ๋Ÿฌ ์ค„ JavaScript ํ•ด์„ ๋ชจ๋“œ์—์„œ Ctrl + O ๋ฐ Ctrl + S ์กฐํ•ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  ์—ด ์ˆ˜ ์žˆ๋Š” ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€๋จ ์›น ์ฝ˜์†”์—์„œ ๋น„๋™๊ธฐ ๋ฉ”์‹œ์ง€๋ฅผ ์‹œ๊ฐ์ ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด javascript.options.asyncstack์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. console.trace() ๋ฐ console.error()์— ๋Œ€ํ•œ ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋น„๋™๊ธฐ ์ž‘์—…์˜ ์ „์ฒด ํ˜ธ์ถœ ์Šคํƒ์ด ํ‘œ์‹œ๋˜๋ฏ€๋กœ ํƒ€์ด๋จธ, ์ด๋ฒคํŠธ, ์•ฝ์†, ์ƒ์„ฑ๊ธฐ ๋“ฑ์˜ ์‹œ์ž‘์„ ์˜ˆ์•ฝํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํŒŒ์ด์–ดํญ์Šค 72 ๋ฆด๋ฆฌ์Šค

  • WebSocket ๊ฒ€์‚ฌ ๋ชจ๋“œ์—์„œ๋Š” ASP.NET Core ๋ฉ”์‹œ์ง€์— ์‚ฌ์šฉ๋˜๋Š” SignalR ํ˜•์‹์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ตฌ๋ฌธ ๋ถ„์„ ๋ฐ ์‹œ๊ฐ์  ํ‘œ์‹œ๊ฐ€ ๊ตฌํ˜„๋˜์—ˆ์œผ๋ฉฐ ์ „์†ก ๋ฐ ๋‹ค์šด๋กœ๋“œ๋œ ๋ฐ์ดํ„ฐ์˜ ์ „์ฒด ํฌ๊ธฐ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ์นด์šดํ„ฐ๋„ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ํƒ€์ด๋ฐ ํƒญ์˜ ๋„คํŠธ์›Œํฌ ํ™œ๋™์„ ๋ณ„๋„๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋„๊ตฌ ํ‘œ์‹œ๋จ ๊ฐ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์œ„ํ•ด ๋Œ€๊ธฐํ•œ ์‹œ๊ฐ„, ๋‹ค์šด๋กœ๋“œ๊ฐ€ ์‹œ์ž‘๋œ ์‹œ๊ฐ„, ๋‹ค์šด๋กœ๋“œ๊ฐ€ ์™„๋ฃŒ๋œ ์‹œ๊ฐ„์— ๋Œ€ํ•œ ์ •๋ณด์ž…๋‹ˆ๋‹ค.
  • ์›น ๊ฐœ๋ฐœ์ž์šฉ ๋„๊ตฌ์—์„œ ์ œ์™ธ๋œ ํ™˜๊ฒฝ ์Šคํฌ๋ž˜์น˜ ํŒจ๋“œ, JavaScript ์ฝ”๋“œ ์‹คํ—˜์„ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค(Scratchpad๋Š” ๋งˆ์ง€๋ง‰ ๋ฆด๋ฆฌ์Šค์—์„œ ์—ฌ๋Ÿฌ ์ค„ ์›น ์ฝ˜์†” ๋ชจ๋“œ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค).

ํ˜์‹ ๊ณผ ๋ฒ„๊ทธ ์ˆ˜์ • ์™ธ์—๋„ Firefox 72์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 20๊ฐœ์˜ ์ทจ์•ฝ์ , ๊ทธ ์ค‘ 11๊ฐœ(์•„๋ž˜์— ์ˆ˜์ง‘๋จ) CVE-2019-17025 ะธ CVE-2019-17024)์€ ํŠน๋ณ„ํžˆ ์„ค๊ณ„๋œ ํŽ˜์ด์ง€๋ฅผ ์—ด ๋•Œ ์ž ์žฌ์ ์œผ๋กœ ๊ณต๊ฒฉ์ž ์ฝ”๋“œ ์‹คํ–‰์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋ฒ„ํผ ์˜ค๋ฒ„ํ”Œ๋กœ ๋ฐ ์ด๋ฏธ ํ•ด์ œ๋œ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค์™€ ๊ฐ™์€ ๋ฉ”๋ชจ๋ฆฌ ๋ฌธ์ œ๋Š” ์ตœ๊ทผ ์œ„ํ—˜ํ•˜์ง€๋งŒ ์น˜๋ช…์ ์ด์ง€๋Š” ์•Š์€ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํŠนํžˆ ์ฃผ๋ชฉํ•  ์ ์€ XPCVariant.cpp ์ฝ”๋“œ์˜ ๋ฌธ์ œ CVE-2019-17017์ด๋ฉฐ, ์ด๋กœ ์ธํ•ด ์ž ์žฌ์ ์œผ๋กœ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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