Chrome версия 105

Google представи версията на уеб браузъра Chrome 105. В същото време е налична стабилна версия на безплатния проект Chromium, който служи като основа на Chrome. Браузърът Chrome се различава от Chromium в използването на лога на Google, наличието на система за изпращане на известия в случай на срив, модули за възпроизвеждане на защитено от копиране видео съдържание (DRM), система за автоматично инсталиране на актуализации, постоянно активиране на изолацията на Sandbox , доставяйки ключове към API на Google и предавайки RLZ- при търсене параметри. За тези, които се нуждаят от повече време за актуализиране, отделно се поддържа клонът Extended Stable, последван от 8 седмици. Следващото издание на Chrome 106 е планирано за 27 септември.

Ключови промени в Chrome 105:

  • Поддръжката за специализирани уеб приложения Chrome Apps е преустановена, заменена от самостоятелни уеб приложения, базирани на технологията Progressive Web Apps (PWA) и стандартни уеб API. Първоначално Google обяви намерението си да се откаже от приложенията на Chrome още през 2016 г. и планира да спре да ги поддържа до 2018 г., но след това отложи този план. В Chrome 105, когато се опитате да инсталирате приложения на Chrome, ще получите предупреждение, че вече няма да се поддържат, но приложенията ще продължат да работят. В Chrome 109 възможността за стартиране на приложения на Chrome ще бъде деактивирана.
  • Осигурена допълнителна изолация за процеса на изобразяване, който отговаря за изобразяването. Този процес вече се извършва в допълнителен контейнер (контейнер за приложения), внедрен върху съществуващата система за изолиране на пясъчник. Ако се използва уязвимост в кода за изобразяване, добавените ограничения ще попречат на атакуващия да получи достъп до мрежата, като предотврати достъпа до системни повиквания, свързани с мрежовите възможности.
  • Внедрено собствено унифицирано хранилище на основни сертификати на сертифициращи органи (Chrome Root Store). Новото хранилище все още не е активирано по подразбиране и докато внедряването приключи, сертификатите ще продължат да се проверяват с помощта на хранилище, специфично за всяка операционна система. Решението, което се тества, напомня подхода на Mozilla, който поддържа отделно независимо хранилище на основни сертификати за Firefox, използвано като първа връзка за проверка на веригата за доверие на сертификата при отваряне на сайтове през HTTPS.
  • Започна подготовката за оттеглянето на Web SQL API, който е нестандартизиран, до голяма степен неизползван и изисква редизайн, за да отговаря на съвременните изисквания за сигурност. Chrome 105 предотвратява достъпа до Web SQL от код, зареден без използване на HTTPS, и също така добавя предупреждение за оттегляне към DevTools. Web SQL API е планирано да бъде премахнат през 2023 г. За разработчиците, които се нуждаят от такава функционалност, ще бъде подготвена замяна, базирана на WebAssembly.
  • Синхронизирането на Chrome вече не поддържа синхронизиране с Chrome 73 и по-стари версии.
  • За платформите macOS и Windows е активиран вграденият преглед на сертификати, който замества извикването на интерфейса, предоставен от операционната система. Преди това вграденият визуализатор се използваше само в компилации за Linux и ChromeOS.
  • Версията за Android добавя настройки за управление на API за теми и групи по интереси, популяризиран като част от инициативата Privacy Sandbox, която ви позволява да дефинирате категории потребителски интереси и да ги използвате вместо проследяване на бисквитки, за да идентифицирате групи от потребители с подобни интереси, без да идентифицирате отделните потребители. В последната версия подобни настройки бяха добавени към версии за Linux, ChromeOS, macOS и Windows.
  • Когато активирате подобрена защита на браузъра (Безопасно сърфиране > Подобрена защита), се събират телеметрични данни за инсталираните добавки, достъпа до API и връзките към външни сайтове. Тези данни се използват на сървърите на Google за откриване на злонамерена дейност и нарушаване на правилата от добавките на браузъра.
  • Отхвърлено и ще блокира използването на не-ASCII знаци в домейни, посочени в заглавката на бисквитката в Chrome 106 (за IDN домейни домейните трябва да са във формат punycode). Промяната ще приведе браузъра в съответствие с RFC 6265bis и поведението, внедрено във Firefox.
  • Предложен е API за персонализирани акценти, предназначен да променя произволно стила на избраните области от текста и ви позволява да не бъдете ограничени от фиксирания стил, предоставен от браузъра за маркираните области (::selection, ::inactive-selection) и подчертаването на синтактични грешки (::правописна-грешка, ::граматична- грешка). Първата версия на API предостави поддръжка за промяна на цветовете на текста и фона с помощта на псевдоелементите цвят и цвят на фона, но в бъдеще ще бъдат добавени други опции за стилизиране.

    Като пример за задачите, които могат да бъдат решени с помощта на новия API, се споменава добавянето към уеб рамки, които предоставят инструменти за редактиране на текст, собствени механизми за избор на текст, различно осветяване за едновременно съвместно редактиране от няколко потребители, търсене във виртуализирани документи и маркиране на грешки при проверка на правописа. Ако преди това създаването на нестандартно осветяване изискваше сложни манипулации с DOM дървото, Custom Highlight API предоставя готови операции за добавяне и премахване на осветяване, които не засягат структурата на DOM и прилагат стилове по отношение на обекти Range.

  • Добавена е заявка „@container“ към CSS, което позволява елементите да бъдат стилизирани въз основа на размера на родителския елемент. „@container“ е подобен на заявките „@media“, но се прилага не към размера на цялата видима област, а към размера на блока (контейнера), в който е поставен елементът, което ви позволява да зададете свой собствен логика за избор на стил за дъщерни елементи, независимо къде точно на страницата е поставен елементът.
    Chrome версия 105
  • Добавен CSS псевдоклас „:has()“ за проверка за наличието на дъщерен елемент в родителския елемент. Например "p:has(span)" обхваща елементите , вътре в който има елемент .
  • Добавен API за HTML Sanitizer, който ви позволява да изрязвате елементи от съдържанието, които влияят върху показването и изпълнението по време на извеждане чрез метода setHTML(). API може да бъде полезен за почистване на външни данни за премахване на HTML тагове, които могат да се използват за извършване на XSS атаки.
  • Възможно е да се използва API за потоци (ReadableStream) за изпращане на заявки за извличане, преди тялото на отговора да бъде заредено, т.е. можете да започнете да изпращате данни, без да чакате генерирането на страницата да завърши.
  • За инсталирани самостоятелни уеб приложения (PWA, Progressive Web App) е възможно да промените дизайна на областта на заглавието на прозореца с помощта на компонентите Window Controls Overlay, които разширяват областта на екрана на уеб приложението до целия прозорец и дават възможност на уеб приложението да изглежда като обикновено настолно приложение. Уеб приложение може да контролира изобразяването и обработката на входа в целия прозорец, с изключение на блока за наслагване със стандартни бутони за управление на прозореца (затваряне, минимизиране, максимизиране).
    Chrome версия 105
  • Възможността за достъп до Media Source Extensions от специализирани работници (в контекста на DedicatedWorker) е стабилизирана, което може да се използва например за подобряване на производителността на буферирано възпроизвеждане на мултимедийни данни чрез създаване на обект MediaSource в отделен работник и излъчване на резултатите от своята работа към HTMLMediaElement в основната нишка.
  • В Client Hints API, който се разработва, за да замени заглавката на User-Agent и ви позволява избирателно да предоставяте данни за конкретни параметри на браузъра и системата (версия, платформа и т.н.) само след заявка от сървъра, поддръжката за Sec Добавено е свойство -CH-Viewport-Heigh, което ви позволява да получите информация за височината на видимата област. Форматът на маркиране за задаване на параметри на Client Hints за външни ресурси в тага „meta“ е променен: Преди: стана:
  • Добавена е възможност за създаване на глобални манипулатори на събития onbeforeinput (document.documentElement.onbeforeinput), с които уеб приложенията могат да заменят поведението при редактиране на текст в блокове , и други елементи със зададен атрибут "contenteditable", преди браузърът да промени съдържанието на елемента и DOM дървото.
  • Възможностите на API за навигация са разширени, позволявайки на уеб приложенията да прихващат навигационни операции в прозорец, да инициират преход и да анализират историята на действията с приложението. Добавени са нови методи intercept() за прихващане на преход и scroll() за превъртане до дадена позиция.
  • Добавен е статичен метод Response.json(), който ви позволява да генерирате тяло на отговор въз основа на данни от типа JSON.
  • Направени са подобрения в инструментите за уеб разработчици. В програмата за отстраняване на грешки, когато се задейства точка на прекъсване, редактирането на най-горните функции в стека е разрешено, без да се прекъсва сесията за отстраняване на грешки. Панелът Recorder, който ви позволява да записвате, възпроизвеждате и анализирате действията на потребителя на страница, поддържа точки на прекъсване, възпроизвеждане стъпка по стъпка и записване на събития при преместване на мишката.

    LCP (Largest Contentful Paint) показатели са добавени към таблото за управление на производителността, за да се идентифицират закъснения при рендиране на големи (видими от потребителя) елементи във видимата област, като изображения, видеоклипове и блокови елементи. В панела "Елементи" горните слоеве, показани върху друго съдържание, са маркирани със специална икона. WebAssembly предоставя възможност за зареждане на данни за отстраняване на грешки във формат DWARF.

В допълнение към иновациите и корекциите на грешки, новата версия елиминира 24 уязвимости. Много от уязвимостите бяха идентифицирани в резултат на автоматизирано тестване с помощта на инструментите AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Не са идентифицирани критични проблеми, които биха позволили да се заобиколят всички нива на защита на браузъра и да се изпълни код на системата извън средата на пясъчника. Като част от програмата за изплащане на парични награди за откриване на уязвимости за текущата версия, Google изплати 21 награди на стойност $60500 10000 (една награда от $9000 7500, една награда от $7000 5000, една награда от $3000 2000, една награда от $1000 XNUMX, две награди от $XNUMX XNUMX, четири награди от $XNUMX XNUMX, две награди ).$XNUMX и един $XNUMX бонус). Размерът на седемте награди все още не е определен.

Източник: opennet.ru

Добавяне на нов коментар