Компания Google за усилването в Chrome режима , осигуряваща обработка на страници от различни сайтове в отделни изолирани процеси. Режимът на изолация на ниво сайтов позволява да се защитят потребителите от атаки, които могат да се извършват чрез използвани на сайта външни блокове, като iframe-вмъквания, или за блокиране на изтичане на данни чрез вграждане на легитимни блокове (например, с искания за банкови услуги, на които потребителят може да е автентифициран) на злонамерени сайтове.
При разделяне на обработчиците по привързаност към домейн, в всеки процес се намират данни само от един сайт, което затруднява извършването на атаки, насочени към межсайтово овладяване на данни. В настолните версии на Chrome обработчиците по привързаност към домейн, вместо на таба, са реализирани от . В такъв режим беше активиран и за платформата Android.
За намаляване на разходите режимът на изолация на сайтовете в Android се активира само ако на страницата е установен вход с парола. Chrome запомня факта на използване на паролата и включва защита за всички последващи обращения към сайта. Защитата също така се прилага незабавно за списъка с предварително определени сайтове, популярни сред потребителите на мобилни устройства. Изборният метод за активиране и добавените оптимизации позволиха да се запази покачването на потреблението на памет заради увеличаването на броя на работещите процеси в средния диапазон от 3-5%, вместо 10-13%, наблюдавани при активиране на изолацията за всички сайтове.
Новият режим на изолация е активиран за 99% от потребителите на Chrome 77 на Android устройства, снабдени с поне 2 ГБ RAM (за 1% от потребителите режимът остана деактивиран за мониторинг на производителността). Ръчно активиране или деактивиране на режима на изолация на сайтовете може да се извърши през настройката „chrome://flags/#enable-site-per-process“.
В десктопната версия на Chrome, по-горе описаният режим за изолация на сайтовете сега е усилен, за да противодейства на атаки, насочени към пълна компрометация на процеса с обработчика на съдържание. Подобреният режим на изолация ще защити данните на сайтовете от две допълнителни заплахи: изтичане на данни вследствие на атаки по странични канали, като Spectre, и изтичане след пълна компрометация на процеса-обработчик при успешна експлоатация на уязвимости, които дават контрол върху процеса, но не са достатъчни за заобикаляне на sandbox-изолацията. В Chrome за Android подобна защита ще бъде добавена по-късно.
Същността на метода е, че управляващият процес запомня към кой сайт работният процес има достъп и забранява достъпа до други сайтове, дори ако атакуващият получи контрол над процеса и опита да получи достъп до ресурсите на друг сайт. Ограниченията обхващат ресурси, свързани с удостоверяване (запазени пароли и cookies), данни, зареждани директно по мрежата (филтрират се и се свързват с текущия сайт HTML, XML, JSON, PDF и други типове файлове), данни в вътрешни хранилища (localStorage), разрешения (предоставени на сайта права за достъп до микрофона и т.н.) и съобщения, предавани чрез API postMessage и BroadcastChannel. Всички подобни ресурси се свързват с метка с изходния сайт и се проверяват от управляващия процес за възможност за прехвърляне по заявка от работния процес.
От свързаните с Chrome събития, може да се отбележи и потвържденията за включване в Chrome на поддръжка на функцията , която позволява генерирането на връзки към отделни думи или фрази, без явно посочване в документа на етикети чрез тага "a name" или свойството "id". Синтаксисът на подобни връзки се планира да бъде утвърден като уеб стандарт, който в момента е на етап . Маската за преход (по същество изпълняваща търсене с преместване) се отделя от обикновения якор по признака ":~:". Например, при отваряне на връзка "https://opennet.ru/51702/#:~:text=Chromе" страницата ще се премести на позицията с първото споменаване на думата "Chromе" и това слово ще бъде подчертана. Възможността е добавена в клона , но за включване изисква стартиране с флага "—enable-blink-features=TextFragmentIdentifiers".
Друго интересно предстоящо изменение в Chrome възможност за замразяване на неактивни табове, позволяваща автоматично освобождаване на паметта от табове, които са в фонов режим повече от 5 минути и не извършват значими действия. Решението за пригодността на даден таб за замразяване се взема на базата на хевристики. Промяната е добавена в Canary версията, върху която ще бъде изградена версия Chrome 79 и се включва чрез флага «chrome://flags/#proactive-tab-freeze».
Източник: opennet.ru
