Multifile & Taint Analysis
Aikido tracks how untrusted input flows through your code and flags it when it reaches a dangerous sink (for example, SQL or command execution). We support taint analysis both within a file and across files, as input accepted in one place can be linked to a risky operation in another.
On top of data flow, Aikido also checks reachability so you don’t get pinged for issues that can’t actually execute in your app (for example, a vulnerable function you don’t call, or code that only runs in tests). This is part of how we keep noise down.
Taint tracing in Aikido
When a vulnerability is discovered, Aikido will trace it through the relevant function calls. When you open a security issue, select View code analysis to get a detailed look at the source of the vulnerability as well as a call graph illustrating the execution flow.

Where multi-file taint analysis is available
Aikido currently supports cross-file taint tracking for the following languages:
JavaScript
TypeScript
PHP
.NET/C#
Java
Rust
Go
Ruby
Python
Other languages currently support intra-file taint analysis:
C/C++
Swift
Android
Scala
Kotlin
Dart
Elixir
Last updated
Was this helpful?