Skip to content

Commit e3cdc45

Browse files
authored
Merge pull request github#6450 from asgerf/js/query-suffix-convention2
Approved by erik-krogh
2 parents 44ff623 + 0047536 commit e3cdc45

File tree

177 files changed

+2862
-2661
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

177 files changed

+2862
-2661
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
lgtm,codescanning
2+
* Some library files have been deprecated, which may affect custom queries.
3+
Queries importing a data-flow configuration from `semmle.javascript.security.dataflow` should
4+
ensure that the imported file ends with `Query`, and only import its top-level module.
5+
For example, a query that imported `DomBasedXss::DomBasedXss` should from now on import `DomBasedXssQuery`
6+
instead.

javascript/ql/examples/queries/dataflow/StoredXss/StoredXss.ql

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@
88
*/
99

1010
import javascript
11-
import DataFlow
12-
import semmle.javascript.security.dataflow.StoredXss
11+
import semmle.javascript.security.dataflow.StoredXssQuery
1312
import DataFlow::PathGraph
1413

1514
/**
@@ -21,17 +20,17 @@ import DataFlow::PathGraph
2120
* connection.query(..., (e, data) => { ... });
2221
* ```
2322
*/
24-
class MysqlSource extends StoredXss::Source {
23+
class MysqlSource extends Source {
2524
MysqlSource() {
2625
this =
27-
moduleImport("mysql")
26+
DataFlow::moduleImport("mysql")
2827
.getAMemberCall("createConnection")
2928
.getAMethodCall("query")
3029
.getCallback(1)
3130
.getParameter(1)
3231
}
3332
}
3433

35-
from StoredXss::Configuration cfg, PathNode source, PathNode sink
34+
from Configuration cfg, DataFlow::PathNode source, DataFlow::PathNode sink
3635
where cfg.hasFlowPath(source, sink)
3736
select sink.getNode(), source, sink, "Stored XSS from $@.", source.getNode(), "database value."

javascript/ql/examples/queries/dataflow/StoredXss/StoredXssTypeTracking.ql

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,15 @@
99
*/
1010

1111
import javascript
12-
import DataFlow
13-
import semmle.javascript.security.dataflow.StoredXss
12+
import semmle.javascript.security.dataflow.StoredXssQuery
1413
import DataFlow::PathGraph
1514

1615
/**
1716
* An instance of `mysql.createConnection()`, tracked globally.
1817
*/
1918
DataFlow::SourceNode mysqlConnection(DataFlow::TypeTracker t) {
2019
t.start() and
21-
result = moduleImport("mysql").getAMemberCall("createConnection")
20+
result = DataFlow::moduleImport("mysql").getAMemberCall("createConnection")
2221
or
2322
exists(DataFlow::TypeTracker t2 | result = mysqlConnection(t2).track(t2, t))
2423
}
@@ -42,10 +41,10 @@ DataFlow::SourceNode mysqlConnection() { result = mysqlConnection(DataFlow::Type
4241
* }
4342
* ```
4443
*/
45-
class MysqlSource extends StoredXss::Source {
44+
class MysqlSource extends Source {
4645
MysqlSource() { this = mysqlConnection().getAMethodCall("query").getCallback(1).getParameter(1) }
4746
}
4847

49-
from StoredXss::Configuration cfg, PathNode source, PathNode sink
48+
from Configuration cfg, DataFlow::PathNode source, DataFlow::PathNode sink
5049
where cfg.hasFlowPath(source, sink)
5150
select sink.getNode(), source, sink, "Stored XSS from $@.", source.getNode(), "database value."

javascript/ql/src/Security/CWE-020/ExternalAPIsUsedWithUntrustedData.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
*/
1010

1111
import javascript
12-
import semmle.javascript.security.dataflow.ExternalAPIUsedWithUntrustedData::ExternalAPIUsedWithUntrustedData
12+
import semmle.javascript.security.dataflow.ExternalAPIUsedWithUntrustedDataQuery
1313

1414
from ExternalAPIUsedWithUntrustedData externalAPI
1515
select externalAPI, count(externalAPI.getUntrustedDataNode()) as numberOfUses,

javascript/ql/src/Security/CWE-020/UntrustedDataToExternalAPI.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
*/
1111

1212
import javascript
13-
import semmle.javascript.security.dataflow.ExternalAPIUsedWithUntrustedData::ExternalAPIUsedWithUntrustedData
13+
import semmle.javascript.security.dataflow.ExternalAPIUsedWithUntrustedDataQuery
1414
import DataFlow::PathGraph
1515

1616
from Configuration config, DataFlow::PathNode source, DataFlow::PathNode sink

javascript/ql/src/Security/CWE-022/TaintedPath.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
*/
1717

1818
import javascript
19-
import semmle.javascript.security.dataflow.TaintedPath::TaintedPath
19+
import semmle.javascript.security.dataflow.TaintedPathQuery
2020
import DataFlow::PathGraph
2121

2222
from Configuration cfg, DataFlow::PathNode source, DataFlow::PathNode sink

javascript/ql/src/Security/CWE-022/ZipSlip.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
*/
1414

1515
import javascript
16-
import semmle.javascript.security.dataflow.ZipSlip::ZipSlip
16+
import semmle.javascript.security.dataflow.ZipSlipQuery
1717
import DataFlow::PathGraph
1818

1919
from Configuration cfg, DataFlow::PathNode source, DataFlow::PathNode sink

javascript/ql/src/Security/CWE-073/TemplateObjectInjection.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
import javascript
1515
import DataFlow::PathGraph
16-
import semmle.javascript.security.dataflow.TemplateObjectInjection::TemplateObjectInjection
16+
import semmle.javascript.security.dataflow.TemplateObjectInjectionQuery
1717

1818
from DataFlow::Configuration cfg, DataFlow::PathNode source, DataFlow::PathNode sink
1919
where cfg.hasFlowPath(source, sink)

javascript/ql/src/Security/CWE-078/CommandInjection.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
*/
1515

1616
import javascript
17-
import semmle.javascript.security.dataflow.CommandInjection::CommandInjection
17+
import semmle.javascript.security.dataflow.CommandInjectionQuery
1818
import DataFlow::PathGraph
1919

2020
from

javascript/ql/src/Security/CWE-078/IndirectCommandInjection.ql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
import javascript
1818
import DataFlow::PathGraph
19-
import semmle.javascript.security.dataflow.IndirectCommandInjection::IndirectCommandInjection
19+
import semmle.javascript.security.dataflow.IndirectCommandInjectionQuery
2020

2121
from Configuration cfg, DataFlow::PathNode source, DataFlow::PathNode sink, DataFlow::Node highlight
2222
where

0 commit comments

Comments
 (0)