diff --git a/vector/src/main/java/im/vector/app/features/webview/VectorWebViewActivity.kt b/vector/src/main/java/im/vector/app/features/webview/VectorWebViewActivity.kt index 6e7cb9e4684..d1713633a31 100644 --- a/vector/src/main/java/im/vector/app/features/webview/VectorWebViewActivity.kt +++ b/vector/src/main/java/im/vector/app/features/webview/VectorWebViewActivity.kt @@ -55,10 +55,13 @@ class VectorWebViewActivity : VectorBaseActivity() // Allow use of Local Storage domStorageEnabled = true - @Suppress("DEPRECATION") - allowFileAccessFromFileURLs = true - @Suppress("DEPRECATION") - allowUniversalAccessFromFileURLs = true + // allowFileAccessFromFileURLs and allowUniversalAccessFromFileURLs + // only take effect when the main frame is a file:// URL. This + // WebView is launched with an http/https URL (see EXTRA_URL + // wiring), so neither flag is load-bearing here, and + // allowUniversalAccessFromFileURLs in particular is a + // CWE-200 sandbox-escape vector if a file:// load ever lands + // in this Activity. displayZoomControls = false } diff --git a/vector/src/main/java/im/vector/app/features/widgets/webview/WidgetWebView.kt b/vector/src/main/java/im/vector/app/features/widgets/webview/WidgetWebView.kt index 657f63cea7e..195b6d6d872 100644 --- a/vector/src/main/java/im/vector/app/features/widgets/webview/WidgetWebView.kt +++ b/vector/src/main/java/im/vector/app/features/widgets/webview/WidgetWebView.kt @@ -42,10 +42,11 @@ fun WebView.setupForWidget(activity: Activity, // Allow use of Local Storage settings.domStorageEnabled = true - @Suppress("DEPRECATION") - settings.allowFileAccessFromFileURLs = true - @Suppress("DEPRECATION") - settings.allowUniversalAccessFromFileURLs = true + // allowFileAccessFromFileURLs and allowUniversalAccessFromFileURLs + // only take effect when the main frame is a file:// URL. Widgets are + // always served from an https widget URL, so neither flag is + // load-bearing here, and allowUniversalAccessFromFileURLs in + // particular is a CWE-200 sandbox-escape vector. settings.displayZoomControls = false