2
2
* Provides a taint-tracking configuration for detecting flow of query string
3
3
* data to sensitive actions in GET query request handlers.
4
4
*
5
- * Note, for performance reasons: only import this file if `Configuration` is
6
- * needed, otherwise `SensitiveGetQueryCustomizations` should be imported
7
- * instead.
5
+ * Note, for performance reasons: only import this file if
6
+ * `SensitiveGetQueryFlow` is needed, otherwise
7
+ * `SensitiveGetQueryCustomizations` should be imported instead.
8
8
*/
9
9
10
10
private import ruby
@@ -13,19 +13,34 @@ private import codeql.ruby.TaintTracking
13
13
/**
14
14
* Provides a taint-tracking configuration for detecting flow of query string
15
15
* data to sensitive actions in GET query request handlers.
16
+ * DEPRECATED: Use `SensitiveGetQueryFlow`
16
17
*/
17
- module SensitiveGetQuery {
18
+ deprecated module SensitiveGetQuery {
18
19
import SensitiveGetQueryCustomizations:: SensitiveGetQuery
19
20
20
21
/**
21
22
* A taint-tracking configuration for reasoning about use of sensitive data
22
23
* from a GET request query string.
23
24
*/
24
- class Configuration extends TaintTracking:: Configuration {
25
+ deprecated class Configuration extends TaintTracking:: Configuration {
25
26
Configuration ( ) { this = "SensitiveGetQuery" }
26
27
27
28
override predicate isSource ( DataFlow:: Node source ) { source instanceof Source }
28
29
29
30
override predicate isSink ( DataFlow:: Node sink ) { sink instanceof Sink }
30
31
}
31
32
}
33
+
34
+ private module SensitiveGetQueryConfig implements DataFlow:: ConfigSig {
35
+ import SensitiveGetQueryCustomizations:: SensitiveGetQuery
36
+
37
+ predicate isSource ( DataFlow:: Node source ) { source instanceof Source }
38
+
39
+ predicate isSink ( DataFlow:: Node sink ) { sink instanceof Sink }
40
+ }
41
+
42
+ /**
43
+ * Taint-tracking for reasoning about use of sensitive data from a
44
+ * GET request query string.
45
+ */
46
+ module SensitiveGetQueryFlow = TaintTracking:: Global< SensitiveGetQueryConfig > ;
0 commit comments