add taint through the qs library

This commit is contained in:
Erik Krogh Kristensen
2021-07-14 16:56:51 +02:00
parent e0a123cbd0
commit 193ddfc771
4 changed files with 127 additions and 0 deletions

View File

@@ -292,6 +292,20 @@ module querystring {
}
}
/**
* A taint step through a call to [qs](https://npmjs.com/package/qs)
*/
private class QsStep extends TaintTracking::SharedTaintStep {
override predicate uriStep(DataFlow::Node pred, DataFlow::Node succ) {
exists(API::CallNode call |
call = API::moduleImport("qs").getMember(["parse", "stringify"]).getACall()
|
pred = call.getArgument(0) and
succ = call
)
}
}
/**
* Provides steps for the `goog.Uri` class in the closure library.
*/