Merge pull request #3927 from rvermeulen/java-importable-cwe-601

Java: Move `UrlRedirectSink` into importable library
This commit is contained in:
Anders Schack-Mulligen
2020-07-09 16:03:29 +02:00
committed by GitHub
3 changed files with 13 additions and 10 deletions

View File

@@ -12,7 +12,7 @@
import java
import semmle.code.java.dataflow.FlowSources
import UrlRedirect
import semmle.code.java.security.UrlRedirect
import DataFlow::PathGraph
class UrlRedirectConfig extends TaintTracking::Configuration {

View File

@@ -12,7 +12,7 @@
import java
import semmle.code.java.dataflow.FlowSources
import UrlRedirect
import semmle.code.java.security.UrlRedirect
import DataFlow::PathGraph
class UrlRedirectLocalConfig extends TaintTracking::Configuration {

View File

@@ -1,12 +1,15 @@
import java
import semmle.code.java.frameworks.Servlets
import semmle.code.java.dataflow.DataFlow
/** Provides classes to reason about URL redirect attacks. */
/**
* A URL redirection sink.
*/
class UrlRedirectSink extends DataFlow::ExprNode {
UrlRedirectSink() {
import java
import semmle.code.java.dataflow.DataFlow
import semmle.code.java.frameworks.Servlets
/** A URL redirection sink */
abstract class UrlRedirectSink extends DataFlow::Node { }
/** A Servlet URL redirection sink. */
private class ServletUrlRedirectSink extends UrlRedirectSink {
ServletUrlRedirectSink() {
exists(MethodAccess ma |
ma.getMethod() instanceof HttpServletResponseSendRedirectMethod and
this.asExpr() = ma.getArgument(0)