出於安全方面的考量以及過去被惡意軟體濫用的情況,Google 表示 Chrome 瀏覽器近期將阻止網際網路網站和本地私人網路內的裝置/伺服器之間的查詢和互動。這一變化將透過實施新的 W3C 規範來實現,該規範被稱為私人網路訪問(PNA),將在今年上半年推出。
新的 PNA 規範在 Chrome 瀏覽器內增加了一個機制,透過該機制,網際網路網站可以在建立連線前向本地網路內的系統徵求許可。Google 表示:
Chrome 瀏覽器將在任何子資源的私人網路請求之前開始傳送 CORS 預檢請求,該請求要求目標伺服器給予明確許可。
這個預檢請求將攜帶一個新的頭,即 Access-Control-Request-Private-Network: true,而對它的響應必須攜帶一個相應的頭,即 Access-Control-Allow-Private-Network: true。
如果本地裝置,如伺服器或路由器未能響應,網際網路網站將被阻止連線。新的 PNA 規範是近年來將被新增到 Chrome 瀏覽器中的最重要的安全功能之一。自 2010 年代初以來,網路犯罪團伙已經意識到,他們可以利用瀏覽器作為“代理”,轉發連線到公司的內部網路。
例如,一個惡意網站可能包含試圖訪問192.168.0.1這樣一個IP地址的程式碼,這是大多數路由器管理面板的典型地址,只能從本地網路訪問。當用戶訪問這種惡意網站時,他們的瀏覽器可以在使用者不知情的情況下向他們的路由器發出自動請求,傳送惡意程式碼,繞過路由器的認證,修改路由器設定。
這種攻擊此前確實發生過。這種網際網路到本地網路的攻擊的變種也可以針對其他本地系統,如內部伺服器、域控制器、防火牆,甚至本地託管的應用程式(透過http://localhost 域或其他本地定義的域)。透過在Chrome瀏覽器內部引入PNA規範及其許可權協商系統,Google希望防止這種自動攻擊成為可能。
據Google稱,PNA 的一個版本已經與 2021 年 11 月釋出的 Chrome 96 一起上線,但全面支援將在今年分兩個階段推出,分別是 Chrome 98(3月初)和Chrome 101(5月底)的釋出,詳情如下。
在 Chrome 98 中。
● Chrome會在私有網路子資源請求之前傳送預檢請求。
● 預檢失敗只在DevTools中顯示警告,不影響私人網路請求。
● Chrome收集相容性資料,並向受影響最大的網站伸出援手。
● Google 預計這將與現有網站廣泛相容。
最早在Chrome 101 中全面部署
● 只有當相容性資料表明該變化足夠安全,並且我們在必要時直接進行了外聯時,這才會開始。
● Chrome瀏覽器強制要求預檢請求必須成功,否則會導致請求失敗。
● 廢棄試驗也同時開始,以允許受此階段影響的網站請求延長時間。該試驗將持續至少6個月。