Files
codeql/csharp/ql/test/library-tests/dataflow/global/Common.qll
2018-08-02 17:53:23 +01:00

21 lines
502 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*()
)
}
}