Skip to content

Commit 5d00bb2

Browse files
committed
Move logic for URL redirection sinks
1 parent 5e89fce commit 5d00bb2

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

java/ql/src/Security/CWE/CWE-601/UrlRedirect.ql

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,14 @@
1313
import java
1414
import semmle.code.java.dataflow.FlowSources
1515
import semmle.code.java.security.UrlRedirect
16-
import semmle.code.java.dataflow.ExternalFlow
1716
import DataFlow::PathGraph
1817

1918
class UrlRedirectConfig extends TaintTracking::Configuration {
2019
UrlRedirectConfig() { this = "UrlRedirectConfig" }
2120

2221
override predicate isSource(DataFlow::Node source) { source instanceof RemoteFlowSource }
2322

24-
override predicate isSink(DataFlow::Node sink) {
25-
sink instanceof UrlRedirectSink
26-
or
27-
sinkNode(sink, "url-redirect")
28-
}
23+
override predicate isSink(DataFlow::Node sink) { sink instanceof UrlRedirectSink }
2924
}
3025

3126
from DataFlow::PathNode source, DataFlow::PathNode sink, UrlRedirectConfig conf

java/ql/src/semmle/code/java/security/UrlRedirect.qll

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,19 @@
22

33
import java
44
import semmle.code.java.dataflow.DataFlow
5+
import semmle.code.java.dataflow.ExternalFlow
56
import semmle.code.java.frameworks.Servlets
67
import semmle.code.java.frameworks.ApacheHttp
78
private import semmle.code.java.frameworks.JaxWS
89

9-
/** A URL redirection sink */
10+
/** A URL redirection sink. */
1011
abstract class UrlRedirectSink extends DataFlow::Node { }
1112

13+
/** A default sink represeting methods susceptible to URL redirection attacks. */
14+
private class DefaultUrlRedirectSink extends UrlRedirectSink {
15+
DefaultUrlRedirectSink() { sinkNode(this, "url-redirect") }
16+
}
17+
1218
/** A Servlet URL redirection sink. */
1319
private class ServletUrlRedirectSink extends UrlRedirectSink {
1420
ServletUrlRedirectSink() {

0 commit comments

Comments
 (0)