Π Π΅Π»ΠΈΠ· Firefox 92

Бостоялся Ρ€Π΅Π»ΠΈΠ· web-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Firefox 92. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, сформировано ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π²Π΅Ρ‚ΠΎΠΊ с Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ сроком ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ — 78.14.0 ΠΈ 91.1.0. На ΡΡ‚Π°Π΄ΠΈΡŽ Π±Π΅Ρ‚Π°-тСстирования ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π° Π²Π΅Ρ‚ΠΊΠ° Firefox 93, Ρ€Π΅Π»ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°ΠΌΠ΅Ρ‡Π΅Π½ Π½Π° 5 октября.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π°:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ автоматичСского проброса Π½Π° HTTPS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ запись «HTTPS» Π² DNS Π² качСствС Π°Π½Π°Π»ΠΎΠ³Π° HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Alt-Svc (HTTP Alternate Services, RFC-7838), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт сСрвСру ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ способ обращСния ΠΊ сайту. ΠŸΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ DNS-запросов, ΠΏΠΎΠΌΠΈΠΌΠΎ записСй «A» ΠΈ «AAAA» для опрСдСлСния IP-адрСсов, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ DNS-запись «HTTPS», Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ установки соСдинСния.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ воспроизвСдСния Π²ΠΈΠ΄Π΅ΠΎ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ (Full RGB).
  • WebRender ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½ для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Linux, Windows, macOS ΠΈ Android, Π±Π΅Π· ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Π’ выпускС Firefox 93 Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΠΏΡ†ΠΈΠΉ для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ WebRender (gfx.webrender.force-legacy-layers ΠΈ MOZ_WEBRENDER=0) ΠΈ Π΄Π°Π½Π½Ρ‹ΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ станСт ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. WebRender написан Π½Π° языкС Rust ΠΈ позволяСт Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ сущСствСнного увСличСния скорости отрисовки ΠΈ сниТСния Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° CPU Π·Π° счёт выноса Π½Π° сторону GPU ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ отрисовки содСрТимого страницы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· выполняСмыС Π² GPU ΡˆΠ΅ΠΉΠ΄Π΅Ρ€Ρ‹. Для систСм со старыми Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Π°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹ΠΌΠΈ графичСскими Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ Π² WebRender Π±ΡƒΠ΄Π΅Ρ‚ использован Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ растСризации (gfx.webrender.software=true).
  • ΠŸΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ страниц с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… Π² сСртификатах.
    Π Π΅Π»ΠΈΠ· Firefox 92
  • Π’ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π½Π°Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, связанныС с рСструктуризациСй управлСния ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ JavaScript, позволившиС ΠΏΠΎΠ΄Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ памяти.
  • РСшСна ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° со сниТСниСм ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ…, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ процСссС, Ρ‡Ρ‚ΠΎ ΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠ° с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠΌ-ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ (alert()).
  • Π’ сборках для macOS: Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ с Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹ΠΌΠΈ профилями ICC v4, Π² мСню File Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΡƒΠ½ΠΊΡ‚ для Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ macOS Share, ΠΊ ΠΎΠ±Ρ‰Π΅ΠΌΡƒ ΡΡ‚ΠΈΠ»ΡŽ Firefox ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ с Π·Π°ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ.
  • Π’ CSS-свойство «break-inside», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Ρ‹Π²ΠΎΠ² ΠΏΡ€ΠΈ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²Ρ‹Π²ΠΎΠ΄Π΅, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² «avoid-page» ΠΈ «avoid-column» для Π·Π°ΠΏΡ€Π΅Ρ‚Π° Ρ€Π°Π·Ρ€Ρ‹Π²ΠΎΠ² страниц ΠΈ столбцов Π² основном Π±Π»ΠΎΠΊΠ΅.
  • Π’ CSS-свойствС font-size-adjust Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ синтаксис с двумя ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «font-size-adjust: ex-height 0.5»).
  • Π’ CSS-ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ @font-face Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ size-adjust, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π³Π»ΠΈΡ„Π° для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ начСртания ΡˆΡ€ΠΈΡ„Ρ‚Π°, Π½Π΅ измСняя Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ CSS-свойства font-size (ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠΏΠΎΠ΄ символ остаётся Ρ‚ΠΎΠΉ ΠΆΠ΅, Π½ΠΎ мСняСтся Ρ€Π°Π·ΠΌΠ΅Ρ€ Π³Π»ΠΈΡ„Π° Π² этой области).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° CSS-свойства accent-color, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ†Π²Π΅Ρ‚ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π²Ρ‹Π±ΠΎΡ€Π° элСмСнта (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ checkbox).
  • Π’ CSS-свойство font-family Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° system-ui, ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π³Π»ΠΈΡ„Ρ‹ ΠΈΠ· ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ систСмного ΡˆΡ€ΠΈΡ„Ρ‚Π°.
  • Π’ JavaScript Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ свойство Object.hasOwn, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ собой ΡƒΠΏΡ€ΠΎΡ‰Ρ‘Π½Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Object.prototype.hasOwnProperty, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π² Ρ„ΠΎΡ€ΠΌΠ΅ статичСского ΠΌΠ΅Ρ‚ΠΎΠ΄Π°. Object.hasOwn({ prop: 42 }, ‘prop’) // → true
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ «Feature-Policy: speaker-selection», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ прСдоставлСниСм Π² WebRTC доступа ΠΊ устройствам Π²Ρ‹Π²ΠΎΠ΄Π° Π·Π²ΡƒΠΊΠ°, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠΈ ΠΈ Π½Π°ΡƒΡˆΠ½ΠΈΠΊΠΈ.
  • Для собствСнных HTML-элСмСнтов (custom element) Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ свойство disabledFeatures.
  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ отслСТивания выдСлСния тСкста Π² областях <input> ΠΈ <textarea> Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ событий selectionchange Π² HTMLInputElement ΠΈ HTMLTextAreaElement.

ΠšΡ€ΠΎΠΌΠ΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π² ΠΈ исправлСния ошибок Π² Firefox 92 устранСно 8 уязвимостСй, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 6 ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ ΠΊΠ°ΠΊ опасныС. 5 уязвимостСй (собраны ΠΏΠΎΠ΄ CVE-2021-38494 ΠΈ CVE-2021-38493) Π²Ρ‹Π·Π²Π°Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ пСрСполнСния Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ ΡƒΠΆΠ΅ освобоТдённым областям памяти. ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ способны привСсти ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΊΠΎΠ΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹Ρ… страниц. Π•Ρ‰Ρ‘ ΠΎΠ΄Π½Π° опасная ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ CVE-2021-29993 позволяСт Π² вСрсии для Android ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнты интСрфСйса Ρ‡Π΅Ρ€Π΅Π· манипуляции с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ «intent://».

Π’ Π±Π΅Ρ‚Π°-выпускС Firefox 93 отмСчаСтся Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ AVIF (AV1 Image Format), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ задСйствованы Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈΠΊΠ°Π΄Ρ€ΠΎΠ²ΠΎΠ³ΠΎ сТатия ΠΈΠ· Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° кодирования Π²ΠΈΠ΄Π΅ΠΎ AV1.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru