Files
codeql/csharp/ql/test/library-tests/csharp7/GlobalFlow.ql
2021-03-09 09:14:24 +01:00

23 lines
610 B
Plaintext

/**
* @kind path-problem
*/
import csharp
import DataFlow::PathGraph
class DataflowConfiguration extends DataFlow::Configuration {
DataflowConfiguration() { this = "data flow configuration" }
override predicate isSource(DataFlow::Node source) {
source.asExpr().(Expr).getValue() = "tainted"
}
override predicate isSink(DataFlow::Node sink) {
exists(LocalVariable v | sink.asExpr() = v.getInitializer())
}
}
from DataFlow::PathNode source, DataFlow::PathNode sink, DataflowConfiguration conf
where conf.hasFlowPath(source, sink)
select source, source, sink, "$@", sink, sink.toString()