Java: Don't ignore local taint steps (fixup)

This commit is contained in:
Rasmus Wriedt Larsen
2021-01-08 15:29:01 +01:00
committed by GitHub
parent 874af7637f
commit 00c253a710

View File

@@ -75,7 +75,8 @@ class ExternalAPIDataNode extends DataFlow::Node {
m.getASourceOverriddenMethod() = call.getCallee().getSourceDeclaration() and
m.fromSource()
) and
// Not already modeled as a taint step
// Not already modeled as a taint step (we need both of these to handle `AdditionalTaintStep` subclasses as well)
not exists(DataFlow::Node next | TaintTracking::localTaintStep(this, next)) and
not exists(DataFlow::Node next | TaintTracking::defaultAdditionalTaintStep(this, next)) and
// Not a call to a known safe external API
not call.getCallee() instanceof SafeExternalAPIMethod