Skip to content

Commit 0c6bd84

Browse files
committed
Python: Move SqlInjection configuration to own file
1 parent 6299b73 commit 0c6bd84

File tree

2 files changed

+22
-12
lines changed

2 files changed

+22
-12
lines changed

python/ql/src/Security/CWE-089/SqlInjection.ql

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,20 +12,9 @@
1212
*/
1313

1414
import python
15-
import semmle.python.dataflow.new.DataFlow
16-
import semmle.python.dataflow.new.TaintTracking
17-
import semmle.python.Concepts
18-
import semmle.python.dataflow.new.RemoteFlowSources
15+
import semmle.python.security.dataflow.SqlInjection
1916
import DataFlow::PathGraph
2017

21-
class SQLInjectionConfiguration extends TaintTracking::Configuration {
22-
SQLInjectionConfiguration() { this = "SQLInjectionConfiguration" }
23-
24-
override predicate isSource(DataFlow::Node source) { source instanceof RemoteFlowSource }
25-
26-
override predicate isSink(DataFlow::Node sink) { sink = any(SqlExecution e).getSql() }
27-
}
28-
2918
from SQLInjectionConfiguration config, DataFlow::PathNode source, DataFlow::PathNode sink
3019
where config.hasFlowPath(source, sink)
3120
select sink.getNode(), source, sink, "This SQL query depends on $@.", source.getNode(),
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/**
2+
* Provides a taint-tracking configuration for reasoning about SQL injection
3+
* vulnerabilities.
4+
*/
5+
6+
import python
7+
import semmle.python.dataflow.new.DataFlow
8+
import semmle.python.dataflow.new.TaintTracking
9+
import semmle.python.Concepts
10+
import semmle.python.dataflow.new.RemoteFlowSources
11+
12+
/**
13+
* A taint-tracking configuration for reasoning about SQL injection vulnerabilities.
14+
*/
15+
class SQLInjectionConfiguration extends TaintTracking::Configuration {
16+
SQLInjectionConfiguration() { this = "SQLInjectionConfiguration" }
17+
18+
override predicate isSource(DataFlow::Node source) { source instanceof RemoteFlowSource }
19+
20+
override predicate isSink(DataFlow::Node sink) { sink = any(SqlExecution e).getSql() }
21+
}

0 commit comments

Comments
 (0)