File tree Expand file tree Collapse file tree 2 files changed +10
-4
lines changed
experimental/adaptivethreatmodeling/lib/experimental/adaptivethreatmodeling
lib/semmle/javascript/frameworks Expand file tree Collapse file tree 2 files changed +10
-4
lines changed Original file line number Diff line number Diff line change @@ -120,13 +120,17 @@ predicate isBaseAdditionalFlowStep(
120120}
121121
122122/**
123+ * Gets a value that is (transitively) written to `query`, where `query` is a NoSQL sink.
124+ *
123125 * This predicate allows us to propagate data flow through property writes and array constructors
124126 * within a query object, enabling the security query to pick up NoSQL injection vulnerabilities
125127 * involving more complex queries.
126128 */
127129DataFlow:: Node getASubexpressionWithinQuery ( DataFlow:: Node query ) {
130+ any ( NosqlInjectionATMConfig cfg ) .isEffectiveSink ( query ) and
128131 exists ( DataFlow:: SourceNode receiver |
129- receiver .flowsTo ( getASubexpressionWithinQuery * ( query .getALocalSource ( ) ) ) and
132+ receiver = [ getASubexpressionWithinQuery ( query ) , query ] .getALocalSource ( )
133+ |
130134 result =
131135 [ receiver .getAPropertyWrite ( ) .getRhs ( ) , receiver .( DataFlow:: ArrayCreationNode ) .getAnElement ( ) ]
132136 )
Original file line number Diff line number Diff line change @@ -39,12 +39,14 @@ class BDDTest extends Test, @call_expr {
3939}
4040
4141/**
42- * Gets the test file for `f` with stem extension `stemExt`.
43- * That is, a file named file named `<base>.<stemExt>.<ext>` in the
42+ * Gets the test file for `f` with stem extension `stemExt`, where `stemExt` is "test" or "spec" .
43+ * That is, a file named `<base>.<stemExt>.<ext>` in the
4444 * same directory as `f` which is named `<base>.<ext>`.
4545 */
46- bindingset [ stemExt ]
46+ pragma [ noinline ]
4747File getTestFile ( File f , string stemExt ) {
48+ stemExt = [ "test" , "spec" ] and
49+ result .getBaseName ( ) .regexpMatch ( ".*\\.(test|spec)\\..*" ) and
4850 result = f .getParentContainer ( ) .getFile ( f .getStem ( ) + "." + stemExt + "." + f .getExtension ( ) )
4951}
5052
You can’t perform that action at this time.
0 commit comments