File tree Expand file tree Collapse file tree 2 files changed +13
-2
lines changed
java/ql/lib/semmle/code/java/security Expand file tree Collapse file tree 2 files changed +13
-2
lines changed Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ private import semmle.code.java.dataflow.ExternalFlow
88private import semmle.code.java.dataflow.TaintTracking
99private import semmle.code.java.frameworks.ApacheHttp
1010private import semmle.code.java.frameworks.Networking
11+ private import semmle.code.java.security.Sanitizers
1112
1213/**
1314 * String of HTTP URLs not in private domains.
@@ -36,6 +37,17 @@ private class DefaultUrlOpenSink extends UrlOpenSink {
3637 DefaultUrlOpenSink ( ) { sinkNode ( this , "request-forgery" ) }
3738}
3839
40+ /**
41+ * A sanitizer to URL opening.
42+ */
43+ abstract class UrlOpenSanitizer extends DataFlow:: Node { }
44+
45+ private class SimpleTypeUrlOpenSanitizer extends UrlOpenSanitizer instanceof SimpleTypeSanitizer { }
46+
47+ private class ExternalUrlOpenSanitizer extends UrlOpenSanitizer {
48+ ExternalUrlOpenSanitizer ( ) { barrierNode ( this , "request-forgery" ) }
49+ }
50+
3951/**
4052 * A unit class for adding additional taint steps.
4153 *
Original file line number Diff line number Diff line change @@ -4,7 +4,6 @@ import java
44import semmle.code.java.dataflow.TaintTracking
55import semmle.code.java.frameworks.Networking
66import semmle.code.java.security.HttpsUrls
7- private import semmle.code.java.security.Sanitizers
87
98/**
109 * A taint tracking configuration for HTTP connections.
@@ -18,7 +17,7 @@ module HttpStringToUrlOpenMethodFlowConfig implements DataFlow::ConfigSig {
1817 any ( HttpUrlsAdditionalTaintStep c ) .step ( node1 , node2 )
1918 }
2019
21- predicate isBarrier ( DataFlow:: Node node ) { node instanceof SimpleTypeSanitizer }
20+ predicate isBarrier ( DataFlow:: Node node ) { node instanceof UrlOpenSanitizer }
2221
2322 predicate observeDiffInformedIncrementalMode ( ) { any ( ) }
2423}
You can’t perform that action at this time.
0 commit comments