From 874af7637f4ffb76fa7b2eb7be0dcae729f052ee Mon Sep 17 00:00:00 2001 From: Rasmus Wriedt Larsen Date: Tue, 22 Dec 2020 11:02:50 +0100 Subject: [PATCH] Java: Fix taint-step handling for untrusted-data-external-api The previous implementation would not handle any `AdditionalTaintStep` subclasses. --- java/ql/src/semmle/code/java/security/ExternalAPIs.qll | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/ql/src/semmle/code/java/security/ExternalAPIs.qll b/java/ql/src/semmle/code/java/security/ExternalAPIs.qll index 57d085eba75..785b021d42f 100644 --- a/java/ql/src/semmle/code/java/security/ExternalAPIs.qll +++ b/java/ql/src/semmle/code/java/security/ExternalAPIs.qll @@ -76,7 +76,7 @@ class ExternalAPIDataNode extends DataFlow::Node { m.fromSource() ) and // Not already modeled as a taint step - 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 }