Android WebView settings allows access to content links¶
ID: java/android/websettings-allow-content-access Kind: problem Security severity: 6.5 Severity: warning Precision: medium Tags: - security - external/cwe/cwe-200 Query suites: - java-security-extended.qls - java-security-and-quality.qls
Click to see the query in the CodeQL repository
Android can provide access to content providers within a WebView using the setAllowContentAccess
setting.
Allowing access to content providers via content://
URLs may allow JavaScript to access protected content.
Recommendation¶
If your app does not require access to the content://
URL functionality, you should explicitly disable the setting by calling setAllowContentAccess(false)
on the settings of the WebView.
Example¶
In the following (bad) example, access to content://
URLs is explicitly allowed.
WebSettings settings = webview.getSettings(); // BAD: WebView is configured to allow content access settings.setAllowContentAccess(true);
In the following (good) example, access to content://
URLs is explicitly denied.
WebSettings settings = webview.getSettings(); // GOOD: WebView is configured to disallow content access settings.setAllowContentAccess(false);
References¶
Android Documentation: setAllowContentAccess.
Common Weakness Enumeration: CWE-200.