Издание на Firefox 148 с настройки за деактивиране на AI

Излезе уеб браузърът Firefox 148, а предишните версии с дългосрочна поддръжка — 140.8.0 и 115.33.0 (последната в серията 115.x) получиха обновления. В следващите часове версията Firefox 149 ще премине на етап бета тестване, като пускането ѝ е насрочено за 24 март.

Основни нововъведения в Firefox 148 (1, 2, 3):

  • В настройките е добавена обещаната секция „AI Controls“ за управление на използването на AI. Потребителят може да изключи всички функции на AI наведнъж или selectively да активира само необходимата функционалност. За селективно изключване са на разположение възможности, свързани с AI, като превод на друг език, разпознаване на текст на изображения и в сканирани PDF документи, препоръки и етикети при групиране на табове, генериране на обобщено съдържание на страницата при предварителен преглед на линкове и интерфейс за взаимодействие с чатботове. Всяка от функциите може да бъде включена, деактивирана или блокирана. При блокиране локално инсталираните AI модели се премахват, а елементите на интерфейса се скриват.
    Издание на Firefox 148 с настройки за деактивиране на AI
  • В настройките е добавена отделна опция за включване на неочаквано отдалечено прилагане на корекции и промени между версиите. По-рано тази възможност бе свързана с включването на телеметрия и участие в тестването на експериментални функции (Privacy & Security > Firfox Data collection > Install and run studies), но от Firefox 148 насам може да бъде активирана независимо от тях.
    Издание на Firefox 148 с настройки за деактивиране на AI
  • Фоновите изображения, избрани за страницата, показвана при отваряне на нова таб, сега се прилагат както за новите табове по подразбиране, така и за новите табове на контейнерите.
  • За потребителите на Windows 10 и 11 е добавена функцията Firefox Backup, която позволява създаване на резервни копия на данни, съхранявани от браузъра, като отметки, настройки и пароли. В резервната копия не се включват данни, избрани от потребителя за изчистване при затваряне на браузъра. Създадената резервна копия може да се използва за възстановяване на състоянието след преинсталация на операционната система или на друг компютър.
  • Осигурена е web-совместимост на началния документ «about:blank», който сега се формира синхронно, а при започване на навигацията на страницата не се заменя асинхронно с втори празен документ, генериран от парсера (заради подобна подмяна възникваше състояние на надпревара, понякога водещо до загуба на промени, записани чрез JavaScript веднага след извикването на window.open()).
  • В механизма Service worker е добавена поддръжка на API WebGPU, което позволява изпълнението на операции WebGPU във фонов режим, например в разширения или при извършване на общи работи за различни табове на един и същ сайт.
  • В JavaScript са добавени методите Iterator.zip() и Iterator.zipKeyed() за обединяване на няколко масива. Методите позволяват на база на няколко итератора да се формирува нов итератор, всеки елемент от който представлява масив или обект с валутите на итераторите на същата позиция. const str1 = «abc»; const str2 = «1234»; const it = Iterator.zip([Iterator.from(str1), Iterator.from(str2)]); for (const [char1, char2] of it) { console.log(`${char1} — ${char2}`); } // Извежда: // a — 1 // b — 2 // c — 3 const table = { name: [«Caroline», «Danielle», «Evelyn»], age: [30, 25, 35], city: [«Ню Йорк», «Лондон», «Хонг Конг»], }; for (const { name, age, city } of Iterator.zipKeyed(table)) { console.log(`${name}, aged ${age}, lives in ${city}.`); } // Извежда: // Caroline, aged 30, lives in New York. // Danielle, aged 25, lives in London. // Evelyn, aged 35, lives in Hong Kong.
  • Реализиран е API Trusted Types, развиван за защита от манипулации с DOM, водещи до междусайтово скриптиране (DOM XSS). Например, неправилната обработка на получените от потребителя данни в блоковете eval() или вставките «.innerHTML» може да доведе до изпълнение на JavaScript код в контекста на определена страница. Trusted Types изисква използването на специални обекти TrustedHTML вместо чисти стойности в опасни извиквания, като element.innerHTML, document.write() и setTimeout(). От своя страна, обектите TrustedHTML се създават от разработчика с функции, проверяващи и чистещи данните.
  • Добавен е API Sanitizer, който предоставя методи за манипулация на HTML и изрязване на HTML елементи от съдържанието, влияещи на визуализацията и изпълнението. За безопасно вмъкване на HTML съдържание е предложен методът element.setHTML(), подобен на element.innerHTML, но защитен от междусайтово скриптиране (XSS). За безопасно разбиране на HTML е реализиран методът document.parseHTML(). API-то може да бъде полезно за почистване на входящи данни и изрязване на HTML тагове, които могат да се използват за извършване на XSS атаки. const unsanitizedString = «abc def»; const sanitizer1 = new Sanitizer({ elements: [«div», «p», «button», «script»], }); const target = document.getElementById(«target»); target.setHTML(unsanitizedString, { sanitizer: sanitizer1 });
  • Добавена е поддръжка на свойството «location.ancestorOrigins», което съдържа списък с източниците (origin) на всички родителски елементи на документа, свързани с указан обект Location. На практика това свойство може да се използва, например, за определяне на зареждането на документа чрез iframe на друг сайт.
  • В API-то Navigation е добавен обектът NavigationPrecommitController с метода addHandler(), който позволява свързването на обработчик, сработващ при навигация на етапа „post-commit“, когато новият URL вече е показан в адресната лента.
  • Добавено е CSS свойството position-try-order, определящо приоритета на избора на резервни позиции, когато елемент с якорна позициониране не може да се помести на екрана. Свойството е част от набора CSS Anchor Positioning, позволяващи управление на визуализацията на елементи, свързани с местоположението на други елементи, без използване на JavaScript, например, за прикрепяне на елементи на изскачащи прозорци (popover), появяващи се аналогично на изскачащите подсказки.
  • В CSS е добавена функция shape(), позволяваща формирането на фигури с използване на CSS-свойствата clip-path и offset-path. Функцията shape() поддържа команди за формиране на фигури, еквивалентни на функцията path(), но позволява използването на стандартния синтаксис на CSS.
  • В версията на Firefox за Android е променен дизайнът на лентата с инструменти, подобрена е настройката на съдържанието на лентата с инструменти и е добавена опция за бързо копиране на видимия текст на връзката без отваряне на страницата.

В Firefox 148, помимо нововведений и исправления ошибок, устранено 60 уязвимостей (в 6 раз больше, чем в предыдущем выпуске). Из них 48 уязвимостей связаны с проблемами управления памятью, такими как переполнение буфера и обращение к уже освобожденным участкам памяти. Эти проблемы могут потенциально привести к выполнению кода злоумышленника при открытии специально подготовленных страниц. Пять уязвимостей позволяют обойти изоляцию sandbox из-за некорректной проверки границ и целочисленного переполнения в графическом компоненте.

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

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster