Files
codeql/csharp/ql/test/library-tests/dataflow/global/Common.qll
2018-12-20 10:19:59 +01:00

20 lines
498 B
Plaintext

import csharp
class Config extends DataFlow::Configuration {
Config() { this = "Config" }
override predicate isSource(DataFlow::Node source) {
source.asExpr().(StringLiteral).getValue() = "taint source"
or
source.asParameter().hasName("tainted")
}
override predicate isSink(DataFlow::Node sink) {
sink.asExpr() instanceof Access and
exists(MethodCall mc |
mc.getTarget().getName() = "Check" and
mc.getAnArgument() = sink.asExpr().getParent*()
)
}
}