A Google bemutatta a Chrome 102 webböngésző kiadását. Egyidejűleg elérhető a Chromium szabad projekt stabil kiadása, amely a Chrome alapját képezi. A Chrome böngésző a Google logóinak használatában, az összeomlás esetén történő értesítések küldésének rendszerében, a másolásvédett videóanyagok (DRM) lejátszására szolgáló modulokban, az automatikus frissítések telepítésének rendszerében, az állandó Sandbox-izolációban, a Google API-hoz való kulcsok biztosításában és a keresés során a RLZ-paraméterek átadásában különbözik a Chromiumtól. Azok számára, akiknek több időre van szükségük a frissítéshez, külön támogatott az Extended Stable ágba, amely 8 hétig áll rendelkezésre. A következő Chrome 103 kiadás június 21-re van tervezve.
A Chrome 102 főbb változásai:
- A már felszabadított memóriablokkokhoz való hozzáférésből eredő sebezhetőségek kihasználásának blokkolása érdekében a megszokott mutatók helyett MiraclePtr (raw_ptr) típus használatát kezdték meg. A MiraclePtr egy ellenőrzéseket végző mutatókat körülvevő rendszer, amely a felszabadított memória területekhez történő hozzáféréseket ellenőrzi, és hiba esetén leállítja a működést. Az új védelmi módszer hatása a teljesítményre és a memóriafogyasztásra nem jelentős. A MiraclePtr mechanizmus nem minden folyamatban alkalmazható, különösen a renderelő folyamatokban nem, de jelentősen növelheti a biztonságot. Például a jelenlegi kiadásban 32 javított sebezhetőségből 12 a use-after-free típusú problémákból fakadt.
- Megváltozott a letöltésekkel kapcsolatos információs felület dizájnja. A letöltés előrehaladását jelző alsó sáv helyett az URL-sorral rendelkező panelen egy új jelző került elhelyezésre, amelyre kattintva megjelenik a fájlok letöltési előrehaladása és a már letöltött fájlok listájának története. Az alsó panelhez képest a gomb folyamatosan látható a panelemen, és lehetővé teszi a letöltési történet gyors elérését. Az új felület jelenleg csak egyes felhasználók számára érhető el alapértelmezettként, és szélesebb körben elterjed, amennyiben nincsenek problémák. A régi felület visszaállítására vagy az új engedélyezésére a „chrome://flags#download-bubble” beállítás áll rendelkezésre.

- Képkereséskor a helyi menüből („Kép keresése a Google Lens-szel” vagy „Keresés a Google Lencsével”) az eredmények most már nem külön oldalon jelennek meg, hanem a fő oldal mellett, egy oldalsávban, ahol egyszerre látható a weboldal tartalma és a keresőmotor eredményei.

- A beállítások között a „Adatvédelem és biztonság” szekcióban egy új „Adatvédelmi útmutató” („Privacy Guide”) részleg került hozzáadásra, ahol általános áttekintést találunk a legfontosabb adatvédelmi beállításokról, részletes magyarázattal arról, hogy az egyes beállítások milyen hatással vannak. Például itt meghatározhatja a Google-nek küldendő adatok politikáját, kezelheti a szinkronizálást, a sütik kezelését és a böngészési előzmények megőrzését. Ez a funkció egyes felhasználók számára elérhető, aktiválásához a „chrome://flags#privacy-guide” beállítást kell használni.

- Megvalósították a keresési előzmények és az előzőleg megtekintett oldalak struktúráját. Amikor újra keres a címsorban, megjelenik a „Folytassa a keresést a történetben” („Resume your journey”) javaslat, amely lehetővé teszi, hogy onnan folytassa a keresést, ahol legutóbb abbahagyta.

- A Chrome Web Store katalógusában megjelenik az „Extensions Starter Kit” oldal, amely ajánlott kiegészítők kezdő válogatását tartalmazza.
- A kísérleti üzemmódban engedélyezett a CORS (Cross-Origin Resource Sharing) jogosultságellenőrzésének megerősítése a fő webhely szerverére a „Access-Control-Request-Private-Network: true” fejléc küldésével, ha az oldal egy belső hálózatra (192.168.x.x, 10.x.x.x, 172.16.x.x) vagy a localhost-ra (128.x.x.x) hivatkozik. A kérés megerősítése esetén a szervernek vissza kell adnia a „Access-Control-Allow-Private-Network: true” fejlécet. A Chrome 102-es verziójában a megerősítés nem befolyásolja a kérés feldolgozását – ha nincs megerősítés, a webkonzolon figyelmeztetés jelenik meg, de a kérés nem kerül blokkolásra. A blokkolás engedélyezése a szerver megerősítése nélkül legkorábban a Chrome 105-ös verzióban várható. Korábbi verziókban a blokkolás aktiválásához a „chrome://flags/#private-network-access-respect-preflight-results” beállítást kell használni.
A jogosultsági ellenőrzés szerverrel bevezetésre került, hogy fokozza a védelmet a helyi hálózaton vagy a felhasználó gépén (localhost) található erőforrásokhoz történő hozzáférésből eredő támadások ellen, amelyek a weboldal megnyitásakor betöltött szkriptek által generáltak. Az ilyen jellegű kéréseket a támadók használják a CSRF-támadások végrehajtására routerek, hozzáférési pontok, nyomtatók, vállalati webes felületek és más olyan eszközök és szolgáltatások ellen, amelyek csak a helyi hálózatról fogadnak el kéréseket. Az ilyen támadásokkal szembeni védelem érdekében, ha bármilyen belső hálózatra irányuló alforráshoz fordul a böngésző, egy nyilvános jogosultsági kérést küld az alforrások betöltéséhez.
- Privát módú böngészés során a linkek megnyitásakor automatikusan eltávolításra kerülnek a URL-ből bizonyos, a magánéletre hatással lévő paraméterek.
- Megváltozott a Windows és Android frissítések kézbesítési stratégiája. A régi és az új kiadás viselkedésének összehasonlításához mostantól több új verzió épül fel az letöltéshez.
- Stabilizálták a hálózat szegmentálási technológiáját, hogy védjen a felhasználói mozgáskövetési módszerektől, amelyek az azonosítók nem tartós tárolásához kapcsolódnak ("Supercookies"). Mivel a gyorsítótárazott erőforrások közös névtérben tárolódnak, függetlenül az eredeti doméntől, egy webhely meg tudja határozni, hogy egy másik webhely erőforrásait töltötte-e be a gyorsítótárban való ellenőrzéssel. A védelem a hálózati szegmentálás alkalmazásán alapul, amelynek lényege, hogy a közösen használt gyorsítótárakhoz további kötődéseket adnak hozzá a domain, ahonnan a főoldal megnyílt, ami korlátozza a gyorsítótár terjedelmét a mozgáskövető szkriptek számára csupán a jelenlegi webhelyen (a beágyazott iframe-ból származó szkript nem tudja ellenőrizni, hogy egy erőforrást betöltöttek-e egy másik webhelyről). Az állapot szegmentálása magában foglalja a hálózati kapcsolatokat (HTTP/1, HTTP/2, HTTP/3, websocket), DNS gyorsítótár, ALPN/HTTP2 adatokat, TLS/HTTP3, konfigurációkat, betöltéseket és az Expect-CT fejlécben található információkat.
- A telepített önálló webalkalmazásokhoz (PWA, Progressive Web App) lehetőség van az ablak fejlécének megjelenésének megváltoztatására a Window Controls Overlay komponensek segítségével, amelyek a webalkalmazás képernyőfelületét az egész ablakra kiterjesztik. A webalkalmazás képes irányítani az ablak teljes területén a renderelést és a bemenetek kezelését, kivéve a beépített ablakvezérlő gombok (bezárás, minimalizálás, maximalizálás) által fedett blokkot, hogy a webalkalmazás normál asztali alkalmazás formáját ölthesse.

- Az űrlapok automatikus kitöltési rendszerébe támogatást adtak virtuális hitelkártyaszámok generálására a vásárlási adatokkal rendelkező mezőkben online boltokban. A virtuális kártya használata, amelynek száma minden egyes tranzakcióhoz generálódik, lehetővé teszi a valódi hitelkártya adatainak megosztásának elkerülését, de megköveteli a szükséges szolgáltatás nyújtását a bank által. Jelenleg ez a funkció csak néhány amerikai bank ügyfelei számára érhető el. A funkció bekapcsolásának kezelésére a "chrome://flags/#autofill-enable-virtual-card" beállítást javasolják.
- Alapértelmezett módon aktiválva van a „Capture Handle” mechanizmus, amely lehetővé teszi az alkalmazások számára az információk továbbítását a videofogó alkalmazásokhoz. Az API lehetőséget biztosít arra, hogy azokat az alkalmazásokat összekapcsolják, amelyeknek a tartalmát rögzítik, és azokat, amelyek ténylegesen rögzítenek. Például egy videokonferenciát lebonyolító alkalmazás, amely videofogást végez a prezentáció átadásához, információkat kaphat a prezentáció vezérlőelemeiről, és megjelenítheti azokat a videó ablakában.
- Alapértelmezett módon be van kapcsolva a spekulatív szabályok támogatása (Speculation rules), amely rugalmas szintaxist kínál a linkelt adatok előzetes betöltésének lehetőségeinek meghatározásához, amely a felhasználó hivatkozására tett lépés előtt történik.
- Stabilizálva lett a webes csomagokban történő erőforrások összepakolásának mechanizmusa, amely növeli a nagyszámú kapcsolódó fájl (CSS stílusok, JavaScript, képek, iframe) betöltésének hatékonyságát. A Web Bundle formátumú csomagok, a Webpack formátumú csomagokkal ellentétben, a következő előnyökkel rendelkeznek: nem magát a csomagot, hanem annak összetevőit tárolja a HTTP cache; a JavaScript összefoglalása és végrehajtása nem várja meg a csomag teljes betöltését; további erőforrások, például CSS és képek, is belefoglalhatók, amelyeket a webpacknek JavaScript karakterláncok formájában kellett volna kódolnia.
- Lehetőség nyílt a PWA alkalmazás meghatározására, mint bizonyos MIME típusok és fájlkiterjesztések kezelője. A file_handlers mezőn keresztüli kötés meghatározása után az alkalmazás külön eseményt kap, amikor a felhasználó megpróbál egy fájlt megnyitni, amely összefonódik az alkalmazással.
- Új inert attribútum került hozzáadásra, amely lehetővé teszi a DOM fára egy részének „inaktívként” való megjelölését. Az ilyen állapotú DOM csomópontok esetében a szövegkiemelési és mutatóvezérlők kezelése letiltásra kerül, azaz a CSS properties a pointer-events és user-select mindig „none” értékre van állítva. Ha a csomópont szerkeszthető volt, az inert módban szerkeszthetetlenné válik.
- Új Navigation API került hozzáadásra, amely lehetővé teszi a webalkalmazások számára a navigációs műveletek megszakítását az ablakban, a átállások kezdeményezését és az alkalmazás műveleti előzményeinek elemzését. Az API alternatívát kínál a window.history és window.location tulajdonságokhoz képest, amely optimalizálva van egyoldalas webalkalmazásokhoz.
- Az «hidden» attribútumhoz egy új «until-found» jelzőt javasoltak, amely lehetővé teszi az elem keresésre való elérhetőségét és a szövegmaszk görgetését. Például elrejthetünk egy rejtett szöveget, melynek tartalma helyi kereséskor előkerül.
- A WebHID API, which is designed for low-level access to HID devices (Human Interface Devices, such as keyboards, mice, gamepads, and touchpads), allows functionality without specific drivers present in the system. In the requestDevice() object, the exclusionFilters property has been added to enable the exclusion of certain devices when the browser displays the list of available devices. For instance, device identifiers that have known issues can be excluded.
- The display of the payment form via the PaymentRequest.show() call is prohibited without explicit user action, such as clicking on an element associated with the handler.
- Support for an alternative implementation of the SDP (Session Description Protocol), used for establishing sessions in WebRTC, has been discontinued. Chrome offered two variations of SDP — one unified with other browsers and one specific to Chrome. Only the portable version remains now.
- Improvements have been made to the tools for web developers. The Styles panel has added buttons to simulate dark and light theme applications. The security of the Preview tab in the network inspection mode has been strengthened (the application of Content Security Policy is now enabled). The debugger has implemented the ability to terminate script execution for reloading breakpoints. A preliminary implementation of a new panel called 'Performance Insights' has been proposed, allowing for the analysis of performance during specific operations on the page.

In addition to new features and bug fixes, the latest version addresses 32 vulnerabilities. Many of these vulnerabilities were identified through automated testing tools like AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer, and AFL. One of the issues (CVE-2022-1853) has been assigned a critical hazard level, which implies the possibility of bypassing all browser security layers and executing code in the system outside the sandbox environment. Details regarding this vulnerability have not yet been disclosed; it is known only that it was caused by accessing a freed memory block (use-after-free) in the implementation of the Indexed DB API.
A Google a jelenlegi kiadáshoz kapcsolódó sebezhetőségek felfedezéséért 24 jutalmat összesen 65 600 USD értékben fizetett ki (egy jutalom 10 000 USD, egy 7 500 USD, két 7 000 USD, három 5 000 USD, négy 3 000 USD, két 2 000 USD, két 1 000 USD és két 500 USD). A 7 jutalom összegét még nem határozták meg.
Forrás: opennet.ru






