通知

您現在可以透過 Play Console 帳戶中的「說明」頁面來請求協助。如果您沒有 Play Console 的登入權限,請聯繫您的帳戶管理員發出邀請。

修復敏感的 JavaScript 介面安全漏洞

開發人員請注意,如果您的應用程式含有敏感的 JavaScript 介面安全漏洞,請詳閱本文資訊。

問題說明

請參閱 Play 管理中心的通知內容

Play 管理中心顯示的修正期限過後,如果應用程式的安全漏洞尚未修正,就會從 Google Play 下架。

敬請採取行動

  1. 開啟傳送至帳戶擁有者電子郵件地址的 Google Play 電子郵件通知,查看受影響的應用程式和相關問題的修正期限。
  2. 更新受影響的應用程式並修復安全漏洞。
  3. 提交受影響應用程式的更新版本。

我們將再次審查您重新提交的應用程式,過程可能需要數小時。如果應用程式可以通過審查並成功發布,您就不必採取進一步行動。如果應用程式未能通過審查,就無法發布新的版本,而且您將收到電子郵件通知。

其他詳細資訊

裝置與網路濫用行為政策規定:「在執行階段載入 JavaScript 的應用程式或第三方程式碼 (例如 SDK) 不得違反 Play 開發人員政策。」

本文將任何會透過 WebView 的 addJavascriptInterface 方法向 WebView 顯露功能的物件稱為 JavaScript 介面;有關 JavaScript 介面的說明,請參閱 Google Developers 網誌,瞭解如何在 WebView 中建構網頁應用程式。

這一類安全漏洞會導致不肖人士可以利用 JavaScript 介面,做出違反使用者資料惡意軟體政策的行為。視顯露的介面而定,這可能導致非預期的資料收集與竊取情形,讓應用程式或 SDK 開發人員在不知情的情況下提供可能有害的應用程式。

建議您採用下列其中一種做法來防堵這個安全漏洞:

做法 1:確定 WebView 不會在 JavaScript 介面中加入物件

檢查是否有任何 WebView 載入不受信任的網路內容,並確認其 JavaScript 介面沒有加入物件。檢查方式有以下兩種:

  1. 檢查 JavaScript 介面中沒有任何透過 addJavascriptInterface 呼叫而加入的物件。
  2. 在 WebView 載入不受信任的內容前,於 shouldInterceptRequest 中透過 removeJavascriptInterface 移除 JavaScript 介面的物件。

做法 2:確保 JavaScript 介面不會顯露敏感功能

請確保 JavaScript 介面中未加入任何敏感功能 (例如需要權限的 Android API 呼叫),包括不會收集與使用者/裝置相關的機密資料,或顯露無障礙工具或簡訊功能等 API。您可以利用以下幾種方式修復這個安全漏洞:

  1. 重新實作每個需要機密權限或是會收集機密資訊的功能,讓應用程式內部的封裝程式碼呼叫這些功能。請務必對使用者顯示醒目揭露事項
  2. 如有任何可透過介面存取敏感功能或使用者資料的函式,請予以移除。

做法 3:確保 WebView 不會向不受信任的內容顯露敏感功能

包含敏感功能的 WebView 不得從不明來源載入任意 JavaScript,而且必須提供關於所用資料或功能的醒目揭露事項。請確保 WebView 只會載入嚴格限定範圍的網址和應用程式開發人員擁有的內容。

如未修復安全漏洞,應用程式將因可能違反 Google Play 政策受到違規處置。

我們很樂意提供協助

閱讀政策說明後,如果您仍對這項決定存有疑慮,認為我們的判斷有誤,請與我們的政策支援團隊聯絡。我們會在 2 個工作天內回覆您。

感謝您一直以來的支持,讓 Google Play 得以持續為開發人員和消費者提供優質體驗。

 

這對您有幫助嗎?

我們應如何改進呢?
搜尋
清除搜尋內容
關閉搜尋
Google 應用程式
主選單
16178341155998640259
true
搜尋說明中心
false
true
true
true
true
true
92637
false
false
false
false