Add UrlRedirectQuery.qll

This commit is contained in:
Ed Minnix
2023-04-03 16:57:12 -04:00
parent cc22a7d4b4
commit 5834e4ac52
2 changed files with 20 additions and 11 deletions

View File

@@ -0,0 +1,19 @@
/** Provides a taint-tracking configuration for reasoning about URL redirections. */
import java
import semmle.code.java.dataflow.FlowSources
import semmle.code.java.security.UrlRedirect
/**
* A taint-tracking configuration for reasoning about URL redirections.
*/
module UrlRedirectConfig implements DataFlow::ConfigSig {
predicate isSource(DataFlow::Node source) { source instanceof RemoteFlowSource }
predicate isSink(DataFlow::Node sink) { sink instanceof UrlRedirectSink }
}
/**
* Taint-tracking flow for URL redirections.
*/
module UrlRedirectFlow = TaintTracking::Global<UrlRedirectConfig>;

View File

@@ -12,17 +12,7 @@
*/
import java
import semmle.code.java.dataflow.FlowSources
import semmle.code.java.security.UrlRedirect
module UrlRedirectConfig implements DataFlow::ConfigSig {
predicate isSource(DataFlow::Node source) { source instanceof RemoteFlowSource }
predicate isSink(DataFlow::Node sink) { sink instanceof UrlRedirectSink }
}
module UrlRedirectFlow = TaintTracking::Global<UrlRedirectConfig>;
import semmle.code.java.security.UrlRedirectQuery
import UrlRedirectFlow::PathGraph
from UrlRedirectFlow::PathNode source, UrlRedirectFlow::PathNode sink