谷歌發布了 Chrome 147 網路瀏覽器。同時,作為 Chrome 基礎的免費 Chromium 專案也發布了穩定版本。 Chrome 瀏覽器與 Chromium 的不同之處在於,它使用 Google 徽標,具有在崩潰時發送通知的系統,具有播放受版權保護的視訊內容(DRM)的模組,具有自動更新安裝系統,始終啟用沙盒隔離,向 Google API 提供密鑰,並在搜尋時傳輸 RLZ 參數。對於那些需要更多時間更新的用戶,有一個單獨的擴展穩定分支,支援 8 週。下一個版本 Chrome 148 計劃於 5 月 XNUMX 日發布。
Chrome 147 版本的主要變更(1、2、3、4):
- 新增了垂直標籤顯示模式,將頂部水平標籤欄替換為帶有垂直標籤的側邊欄。垂直標籤可以展開(圖示+部分描述)或折疊(僅圖示)顯示。將滑鼠懸停在側邊標籤上即可顯示其內容縮圖。標籤組的管理也簡化了。右鍵單擊標籤行時,上下文選單中新增了“垂直顯示標籤”選項。如果預設未顯示此選項,可以透過「chrome://flags/#vertical-tabs」設定啟用它。
- 閱讀模式經過重新設計,僅顯示頁面上的相關文本,隱藏所有相關控制項、橫幅、選單、導覽列以及其他與內容無關的頁面元素。在新版本中,與 Firefox 類似,相關內容會顯示在整個可見區域,而不是像以前那樣顯示在頁面旁邊的狹窄側邊欄中。如果新模式預設未啟用,可以透過「chrome://flags/#read-anything-immersive-reading-mode」設定啟用。
- 「幫助」選單中新增了一個按鈕,用於提交投訴以封鎖用於詐欺或網路釣魚目的的網頁。啟用「安全瀏覽」模式後,此按鈕將顯示。
- 增強了與公共網站互動時對本地系統存取的保護。網站對本地系統的訪問 IP位址 本機網路(內部網路或內部位址)或環回介面 (127.0.0.0/8) 將需要使用者確認。防護範圍現在不僅涵蓋透過 HTTP/HTTPS、fetch() 請求和 iframe 插入載入資源的嘗試,還包括透過 WebSocket 和 WebTransport 建立的連接,以及透過 WindowClient.navigate() 方法發起的 fetch 請求。攻擊者利用對內部資源的存取進行間接身分識別,並對路由器、存取點、印表機、企業 Web 介面以及其他僅接受來自本機網路請求的裝置和服務發動 CSRF 攻擊。
- XML解析功能已從libxml2遷移到一個用Rust編寫的新函式庫,該函式庫在安全性方面進行了最佳化。此更改僅適用於XML;正如先前宣布的那樣,XSLT支援即將棄用。
- 現在不僅可以對整個頁面使用 startViewTransition() 方法,還可以對單一 HTML 元素使用該方法。
- 新增了 CSS 函數 contrast-color()。它會傳回指定顏色的反色(例如,白色返回黑色,黑色返回白色)。此函數可用於將特定文字顏色與背景顏色相匹配,反之亦然。
- 新增了 CSS 屬性“border-shape”,可讓您為元素建立非矩形邊框,例如圓形或多邊形邊框。 「border-shape」屬性接受與「clip-path」屬性相同的形狀類型,但與後者不同的是,它會偵測輪廓,解碼輪廓,並裁剪超出輪廓的任何內容。
- 添加了 CSSPseudoElement 接口,允許從 JavaScript 中使用 CSS 偽元素。
- link 元素現在支援使用「rel=modulepreload」屬性來預先載入腳本以及帶有 CSS 樣式的模組( )和 JSON 資料( )。
- CSS 屬性 `border-width`、`outline-width` 和 `column-rule-width` 中邊框和輪廓寬度的計算方式已更改,使其與 Firefox 和基於 WebKit 核心的瀏覽器保持一致。先前,如果 `border-style`、`outline-style` 或 `column-rule-style` 屬性設為 `none` 或 `hidden`,則無論這些屬性的值如何,其寬度都會被重設為零。現在,無論 `*-style` 屬性的內容如何,`border-width`、`outline-width` 和 `column-rule-width` 的值始終與開發者定義的值相對應。
- 新增了 Math.sumPrecise() 方法,用於計算數組元素與其他可枚舉物件的總和,其精度高於循環中正常求和的精度(消除了在其間儲存結果時的精度損失)。
- 新增了 Request.isReloadNavigation 屬性,用於偵測頁面何時重新加載,例如,在點擊「刷新」按鈕或呼叫 location.reload() 和 history.go(0) 方法之後。
- 為了降低間接識別的準確性,我們更改了透過裝置記憶體 API 傳回的記憶體大小(提供有關 RAM 大小的資訊)的捨入邏輯。此資訊可用於建立可在 RAM 有限的裝置上載入的輕量級 Web 應用程序,或在可用記憶體充足時啟動進階功能。在平台建置版本中 Android 記憶體大小現在四捨五入為 1、2、4 和 8,其他平台則四捨五入為 2、4、8、16 和 32。
- 對於獨立 Web 應用程式 (IWA),我們實作了 Web 列印 API,它提供了用於確定印表機可用性、傳送文件進行列印以及管理列印佇列的方法。 API 中使用的屬性名稱和語意與網際網路列印協定 (IPP) 相對應。
- 「Origin trials」模式實作了WebNN API,允許使用作業系統提供的機器學習服務和相關硬體功能。
- Web 開發工具已改進。內建的 AI 助理現在可以自動選擇上下文。 「裝置模式」面板(用於測試網站在不同行動裝置上的效能)已更新。 「網路」面板現在可以自動解碼帶有 Content-Encoding: gzip 或 deflate 標頭的請求中的壓縮內容。現在可以使用正規表示式來過濾 CSS 樣式。
除了新增功能和修復漏洞外,新版本還修復了 60 個漏洞。許多漏洞是透過使用 AddressSanitizer、MemorySanitizer、Control Flow Integrity、LibFuzzer 和 AFL 等工具進行自動化測試發現的。其中兩個問題(WebML 中的緩衝區溢位和整數溢位)被評為嚴重級別,這意味著它們可以繞過所有瀏覽器保護層,並在沙箱環境之外執行程式碼。作為此版本漏洞賞金計畫的一部分,Google設立了 60 個獎勵,並已發放總額為 118 美元的獎金(兩個 43000 美元的獎勵、兩個 11000 美元的獎勵,以及分別一個 4000 美元、一個 3000 美元、一個 2000 美元和一個獎勵一個 1000 美元的獎勵一個)。其餘 52 個獎勵的金額尚未確定。
來源: opennet.ru
