Umbra covers Python, JS, Go, Java, Ruby, PHP, C#. Add Kotlin (.kt) — its JVM
sinks mirror Java, so this is mostly wiring.
Where:
umbra_core/pipeline/findings/multilang.py: add a .kt ruleset (SQLi via string
concat in executeQuery/createStatement, command injection via
ProcessBuilder/Runtime.exec).
umbra_core/pipeline/findings/lang_taint.py: add a Kotlin LangTaintSpec.
umbra_core/pipeline/findings/engine.py: add .kt to _SCAN_EXTS.
Acceptance criteria
Reference: the existing Java rules/spec (Kotlin is very close). See CONTRIBUTING.md.
Umbra covers Python, JS, Go, Java, Ruby, PHP, C#. Add Kotlin (
.kt) — its JVMsinks mirror Java, so this is mostly wiring.
Where:
umbra_core/pipeline/findings/multilang.py: add a.ktruleset (SQLi via stringconcat in
executeQuery/createStatement, command injection viaProcessBuilder/Runtime.exec).umbra_core/pipeline/findings/lang_taint.py: add a KotlinLangTaintSpec.umbra_core/pipeline/findings/engine.py: add.ktto_SCAN_EXTS.Acceptance criteria
.ktfile (inline and taint-through-var).PreparedStatement/ arg-listProcessBuilder.pytest -q+ruffgreen.Reference: the existing Java rules/spec (Kotlin is very close). See
CONTRIBUTING.md.