Skip to content

How codeql deal with java's interface invoke in Global Taint Tracking #7363

Answered by atorralba
ox1234 asked this question in Q&A
Discussion options

You must be logged in to vote

Normally, virtual dispatch will consider a valid target any method in the inheriting classes that is a viable implementation of the callable (append in this case), so the data flow library should be considering all implementations of the Appender interface.

What you are seeing here could probably be happening because the paths that go from source to sink only go through RoutingAppender, and not any other implementation of Appender. Alternatively, there are paths that go through the other implementations, but the flow is being lost in there for some reason, and thus the query isn't reporting the path. Have you reviewed those other implementations and confirmed whether they end up reaching …

Replies: 1 comment 3 replies

Comment options

You must be logged in to vote
3 replies
@ox1234
Comment options

@atorralba
Comment options

@ox1234
Comment options

Answer selected by ox1234
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants