Skip to content

Commit 7b34b10

Browse files
committed
Decouple from github#10177
1 parent 1bf1349 commit 7b34b10

File tree

2 files changed

+6
-10
lines changed

2 files changed

+6
-10
lines changed

java/ql/lib/semmle/code/java/security/UnsafeContentUriResolution.qll

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import java
44
private import semmle.code.java.dataflow.TaintTracking
55
private import semmle.code.java.frameworks.android.Android
6-
private import semmle.code.java.security.PathSanitizer
76

87
/** A URI that gets resolved by a `ContentResolver`. */
98
abstract class ContentUriResolutionSink extends DataFlow::Node { }
@@ -50,9 +49,6 @@ private class UninterestingTypeSanitizer extends ContentUriResolutionSanitizer {
5049
}
5150
}
5251

53-
private class PathSanitizer extends ContentUriResolutionSanitizer instanceof PathInjectionSanitizer {
54-
}
55-
5652
private class FilenameOnlySanitizer extends ContentUriResolutionSanitizer {
5753
FilenameOnlySanitizer() {
5854
exists(Method m | this.asExpr().(MethodAccess).getMethod() = m |

java/ql/test/query-tests/security/CWE-441/Test.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,13 @@ public void onCreate() {
5353
Uri uri = (Uri) getIntent().getParcelableExtra("URI_EXTRA");
5454
if (!uri.equals(Uri.parse("content://safe/uri")))
5555
throw new SecurityException();
56-
contentResolver.openInputStream(uri); // Safe
56+
contentResolver.openInputStream(uri); // $ SPURIOUS: hasTaintFlow
5757
}
5858
{
5959
ContentResolver contentResolver = getContentResolver();
6060
Uri uri = (Uri) getIntent().getParcelableExtra("URI_EXTRA");
6161
validateWithEquals(uri);
62-
contentResolver.openInputStream(uri); // Safe
62+
contentResolver.openInputStream(uri); // $ SPURIOUS: hasTaintFlow
6363
}
6464
// Allow list checks
6565
{
@@ -78,13 +78,13 @@ public void onCreate() {
7878
java.nio.file.FileSystems.getDefault().getPath(path).normalize();
7979
if (!normalized.startsWith("/safe/path"))
8080
throw new SecurityException();
81-
contentResolver.openInputStream(uri); // Safe
81+
contentResolver.openInputStream(uri); // $ SPURIOUS: hasTaintFlow
8282
}
8383
{
8484
ContentResolver contentResolver = getContentResolver();
8585
Uri uri = (Uri) getIntent().getParcelableExtra("URI_EXTRA");
8686
validateWithAllowList(uri);
87-
contentResolver.openInputStream(uri); // Safe
87+
contentResolver.openInputStream(uri);// $ SPURIOUS: hasTaintFlow
8888
}
8989
// Block list checks
9090
{
@@ -103,13 +103,13 @@ public void onCreate() {
103103
java.nio.file.FileSystems.getDefault().getPath(path).normalize();
104104
if (normalized.startsWith("/data"))
105105
throw new SecurityException();
106-
contentResolver.openInputStream(uri); // Safe
106+
contentResolver.openInputStream(uri); // $ SPURIOUS: hasTaintFlow
107107
}
108108
{
109109
ContentResolver contentResolver = getContentResolver();
110110
Uri uri = (Uri) getIntent().getParcelableExtra("URI_EXTRA");
111111
validateWithBlockList(uri);
112-
contentResolver.openInputStream(uri); // Safe
112+
contentResolver.openInputStream(uri); // $ SPURIOUS: hasTaintFlow
113113
}
114114
}
115115
}

0 commit comments

Comments
 (0)