mirror of
https://github.com/github/codeql.git
synced 2025-12-21 19:26:31 +01:00
Don't capitalize the term content provider
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com>
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
<p>When an Android component expects a result from an Activity, <code>startActivityForResult</code> can be used.
|
||||
The started Activity can then use <code>setResult</code> to return the appropriate data to the calling component.</p>
|
||||
<p>If an Activity obtains the incoming, user-provided Intent and directly returns it via <code>setResult</code>
|
||||
without any checks, the application may be unintentionally giving arbitrary access to its Content Providers, even
|
||||
without any checks, the application may be unintentionally giving arbitrary access to its content providers, even
|
||||
if they are not exported, as long as they are configured with the attribute <code>android:grantUriPermissions="true"</code>.
|
||||
This happens because the attacker adds the appropriate URI permission flags to the provided Intent, which take effect
|
||||
once the Intent is reflected back.</p>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
* @name Intent URI permission manipulation
|
||||
* @description Returning an externally provided Intent via setResult may allow a malicious
|
||||
* application to access arbitrary Content Providers of the vulnerable application.
|
||||
* @description Returning an externally provided Intent via 'setResult' may allow a malicious
|
||||
* application to access arbitrary content providers of the vulnerable application.
|
||||
* @kind path-problem
|
||||
* @problem.severity error
|
||||
* @security-severity 7.8
|
||||
@@ -21,4 +21,4 @@ from DataFlow::PathNode source, DataFlow::PathNode sink
|
||||
where any(IntentUriPermissionManipulationConf c).hasFlowPath(source, sink)
|
||||
select sink.getNode(), source, sink,
|
||||
"This Intent can be set with arbitrary flags from $@, " +
|
||||
"and used to give access to internal Content Providers.", source.getNode(), "this user input"
|
||||
"and used to give access to internal content providers.", source.getNode(), "this user input"
|
||||
|
||||
Reference in New Issue
Block a user