Рэліз Chrome 104

Кампанія Google прадставіла рэліз web-браўзэра Chrome 104. Адначасова даступны стабільны выпуск вольнага праекта Chromium, які выступае асновай Chrome. Браўзэр Chrome адрозніваецца ад Chromium выкарыстаннем лагатыпаў Google, наяўнасцю сістэмы адпраўкі апавяшчэнняў у выпадку краху, модулямі для прайгравання абароненага ад капіявання відэакантэнту (DRM), сістэмай аўтаматычнай усталёўкі абнаўленняў, сталым уключэннем Sandbox-ізаляцыі, пастаўкай ключоў да Google API і перадачай пры пошуку RL параметраў. Для тых, каму неабходна больш часу на абнаўленне, асобна падтрымліваецца галінка Extended Stable, якая суправаджаецца 8 тыдняў. Наступны выпуск Chrome 105 запланаваны на 30 жніўня.

Асноўныя змены ў Chrome 104:

  • Уведзены лімітавы час існавання Cookie - усё новыя ці абноўленыя Cookie будуць аўтаматычна выдаляцца пасля 400 дзён існавання, нават калі выстаўлены праз атрыбуты Expires і Max-Age час састарэння перавышае 400 дзён (для такіх Cookie час жыцця будзе зрэзана да 400 дзён). Створаныя да ўвядзення абмежаванні Cookie захаваюць свой час жыцця, нават калі яно перавышае 400 дзён, але будуць абмежаваны ў выпадку абнаўлення. Змена адлюстроўвае новыя патрабаванні, адзначаныя ў чарнавіку новай спецыфікацыі.
  • Уключана блакіроўка зваротаў з iframe да URL, якія спасылаюцца на лакальную файлавую сістэму («filesystem://»).
  • Для паскарэння загрузкі старонкі дададзена новая аптымізацыя, якая забяспечвае ўстаноўку злучэння да мэтавага хаста ў момант націску на спасылку, не чакаючы адпускання кнопкі або прыбірання пальца з сэнсарнага экрана.
  • Дададзеныя налады для кіравання API "Topics & Interest Group", які прасоўваецца ў рамках ініцыятывы Privacy Sandbox і дазваляе вызначаць катэгорыі інтарэсаў карыстальніка і выкарыстоўваць іх замест адсочваюць Cookie для вылучэння груп карыстальнікаў з падобнымі інтарэсамі без ідэнтыфікацыі асобных карыстальнікаў. Акрамя таго, дададзены паказаныя адзін раз інфармацыйныя дыялогі, якія тлумачаць карыстачу сутнасць тэхналогіі і прапануюць актываваць яе падтрымку ў настойках.
  • Павялічаны парогавыя значэнні для абмежавання ўкладзеных выклікаў таймераў setTimeout і setInterval, запушчаных з указаннем інтэрвалу менш за 4 мс («setTimeout(…, <4ms)»). Сумарны ліміт на падобныя выклікі павялічаны з 5 да 100, што дазваляе агрэсіўна не зрэзаць адзінкавыя выклікі, але пры гэтым не дапушчаць злоўжыванняў, здольных паўплываць на прадукцыйнасць браўзэра.
  • Уключана адпраўка на сервер асноўнага сайта запыту пацверджання паўнамоцтваў CORS (Cross-Origin Resource Sharing) з загалоўкам "Access-Control-Request-Private-Network: true", у выпадку звароту са старонкі да субрэсурсу ва ўнутранай сетцы (192.168.xx, 10). xxx, 172.16-31.xx) або да localhost (127.xxx). Пры пацверджанні аперацыі ў адказ на дадзены запыт сервер павінен вярнуць загаловак "Access-Control-Allow-Private-Network: true". У версіі Chrome 104 вынік пацверджання пакуль не ўплывае на апрацоўку запыту - у выпадку адсутнасці пацверджання ў web-кансолі адлюстроўваецца папярэджанне, але сам запыт субрэсурсу не блакуецца. Уключэнне блакавання пры адсутнасці пацверджання ад сервера чакаецца не раней, чым у выпуску Chrome 107. Для ўключэння блакавання ў больш ранніх выпусках можна актываваць наладу "chrome://flags/#private-network-access-respect-preflight-results".

    Пацвярджэнне паўнамоцтваў серверам уведзена для ўзмацнення абароны ад нападаў, злучаных са зваротам да рэсурсаў у лакальнай сетцы або на кампутары карыстача (localhost) з скрыптоў, загружаных пры адкрыцці сайта. Падобныя запыты выкарыстоўваюцца зламыснікамі для ажыццяўлення CSRF-нападаў на маршрутызатары, кропкі доступу, друкаркі, карпаратыўныя web-інтэрфейсы і іншыя прылады і сэрвісы, якія прымаюць запыты толькі з лакальнай сеткі. Для абароны ад падобных нападаў у выпадку звароту да любых субрэсурсаў ва ўнутранай сетцы, браўзэр будзе адпраўляць відавочны запыт паўнамоцтвы загрузкі гэтых субрэсурсаў.

  • Дададзены механізм Region Capture, які дазваляе абрэзаць лішнія змесціва з відэа, які фармуецца на аснове захопу экрана. Напрыклад, пры дапамозе API getDisplayMedia web-дадатак можа арганізаваць перадачу відэа са змесцівам укладкі, а Region Capture дазваляе выразаць частку змесціва, які ўключае элементы кіравання відэаканферэнцыяй.
  • Дададзена падтрымка вызначанага ў спецыфікацыі Media Queries Level 4 новага сінтаксісу медыязапытаў, якія вызначаюць мінімальны і максімальны памер бачнай вобласці (viewport). Новы сінтаксіс дазваляе выкарыстоўваць звычайныя матэматычныя аператары параўнання і лагічныя аператары, такія як "not", "or" і "and". Напрыклад, замест "@media (min-width: 400px) { … }" зараз можна ўказваць "@media (width >= 400px) { … }".
  • У рэжыме Origin Trials (эксперыментальныя магчымасці, якія патрабуюць асобнай актывацыі) дададзена некалькі новых API. Origin Trial мае на ўвазе магчымасць працы з паказаным API з прыкладанняў, загружаных з localhost або 127.0.0.1, або пасля праходжання рэгістрацыі і атрымання спецыяльнага токена, які дзейнічае абмежаваны час для канкрэтнага сайта.
    • Дададзена CSS-уласцівасць «focusgroup» для паляпшэння навігацыі па элементах пры дапамозе стрэлак кіравання курсорам на клавіятуры.
    • У API Secure Payment Confirmation прадстаўлена магчымасць адключэння карыстачом сховішчы параметраў крэдытных карт. Для вываду дыялогу, які дазваляе адмовіцца ад захавання параметраў крэдытных карт, у канструктару PaymentRequest() прадугледжаны сцяг showOptOut: true.
    • Дададзены API Shared Element Transitions, які дазваляе арганізаваць плыўны пераход паміж рознымі ўяўленнямі змесціва ў аднастаронкавых web-прыкладаннях.
  • Стабілізаваная падтрымка спекулятыўных правіл (Speculation rules), якія дазваляюць аўтарам сайтаў перадаць браўзэру звесткі аб найболей верагодных старонках, на якія карыстач можа перайсці. Браўзэр выкарыстоўвае гэтую інфармацыю для папераджальнай загрузкі і адмалёўкі змесціва старонак.
  • Стабілізаваны механізм пакавання субрэсурсаў у пакеты ў фармаце Web Bundle, які дазваляе павялічыць эфектыўнасць загрузкі вялікай колькасці спадарожных файлаў (CSS-стылі, JavaScript, малюнкі, iframe). У адрозненне ад пакетаў у фармаце Webpack, фармат Web Bundle валодае наступнымі добрымі якасцямі: у HTTP-кэшы асядае не сам пакет, а яго складовыя часткі; кампіляцыя і выкананне JavaScript пачынаецца не чакаючы поўнай загрузкі пакета; дапускаецца ўключэнне дадатковых рэсурсаў, такіх як CSS і выявы, якія ў webpack павінны былі кадзіравацца ў форме JavaScript-радкоў.
  • Дададзена CSS-уласцівасць object-view-box, якое дазваляе вызначыць частку малюнка, якая будзе выведзена ў вобласці замест зададзенага элемента, што можна выкарыстоўваць, напрыклад, для дадання апраўлення ці цені.
  • Дададзены API Fullscreen Capability Delegation, які дазваляе аднаму аб'екту Window перадаць іншаму аб'екту Window права выкліку requestFullscreen().
  • Дададзены API Fullscreen Companion Window, які дазваляе размясціць поўнаэкраннае змесціва і ўсплывальныя вокны на іншым экране пасля атрымання пацверджання ад карыстача.
  • У CSS-уласцівасць overflow-clip-margin дададзены атрыбут visual-box, які вызначае з якога месца варта пачынаць абразанне кантэнту, які выйшаў за мяжу вобласці (можа прымаць значэнні content-box, padding-box і border-box).
  • У API Async Clipboard дададзена магчымасць вызначэння спецыялізаваных фарматаў для перадаюцца праз буфер абмену дадзеных, выдатных ад тэксту, малюнкаў і тэксту з разметкай.
  • У WebGL прадстаўлена падтрымка ўказання каляровай прасторы для буфера адмалёўкі і пераўтварэнні пры імпарце з тэкстуры.
  • Спынена падтрымка платформаў OS X 10.11/10.12 і macOS XNUMX/XNUMX.
  • Спынена падтрымка API U2F (Cryptotoken), які раней абвешчаны састарэлым і адключаны па змаўчанні. На змену API U2F прыйшоў API Web Authentication.
  • Унесены паляпшэнні ў інструменты для web-распрацоўшчыкаў. У адладчыку дададзена магчымасць перазапуску кода з пачатку функцыі, пасля спрацоўвання кропкі супыну дзесьці ў целе функцыі. Дададзена падтрымка распрацоўкі дадаткаў для панэлі Recorder. У панэль для аналізу прадукцыйнасці дададзеная падтрымка візуалізацыі пазнак, выстаўленых у web-прыкладанні праз выклік метаду performance.measure(). Палепшаны рэкамендацыі пры аўтадапаўненні ўласцівасцяў аб'ектаў JavaScript. Пры аўтадапаўненні CSS-зменных забяспечаны прадпрагляд значэнняў, не злучаных з кветкамі.
    Рэліз Chrome 104

Акрамя новаўвядзенняў і выпраўленні памылак у новай версіі ўхілена 27 уразлівасцяў. Многія з уразлівасцяў выяўлены ў выніку аўтаматызаванага тэсціравання інструментамі AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer і AFL. Крытычных праблем, якія дазваляюць абыйсці ўсе ўзроўні абароны браўзэра і выканаць код у сістэме за межамі sandbox-акружэнні, не выяўлена. У рамках праграмы па выплаце грашовага ўзнагароджання за выяўленне ўразлівасцяў для бягучага рэлізу кампанія Google выплаціла 22 прэміі на суму 84 тысячы даляраў ЗША (адна прэмія $15000, адна прэмія $10000, адна прэмія $8000, адна прэмія $7000, чатыры прэміі $5000, адна прэмія $4000 прэміі $3000, чатыры прэміі $2000 і тры прэміі $1000). Памер адной узнагароды пакуль не вызначаны.

Крыніца: opennet.ru

Дадаць каментар