Java: Add manual overlay annotations

This commit is contained in:
Kasper Svendsen
2025-01-15 08:42:29 +01:00
parent 81b677a2d9
commit b6e56f26c7
8 changed files with 8 additions and 0 deletions

View File

@@ -22,6 +22,7 @@ import semmle.code.java.dataflow.ExternalFlow
private import semmle.code.java.security.Sanitizers
import Log4jInjectionFlow::PathGraph
overlay[local?]
deprecated private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "log4j-injection" }
}

View File

@@ -17,6 +17,7 @@ import semmle.code.java.dataflow.FlowSources
import semmle.code.java.dataflow.ExternalFlow
import RemoteUrlToOpenStreamFlow::PathGraph
overlay[local?]
deprecated private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "openstream-called-on-tainted-url" }
}

View File

@@ -22,6 +22,7 @@ import semmle.code.java.security.PathSanitizer
private import semmle.code.java.security.Sanitizers
import InjectFilePathFlow::PathGraph
overlay[local?]
deprecated private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "file-path-injection" }
}

View File

@@ -18,6 +18,7 @@ import semmle.code.java.security.CommandLineQuery
import InputToArgumentToExecFlow::PathGraph
private import semmle.code.java.dataflow.ExternalFlow
overlay[local?]
deprecated private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "jsch-os-injection" }
}

View File

@@ -7,6 +7,7 @@ private import semmle.code.java.dataflow.ExternalFlow
private import semmle.code.java.dataflow.FlowSteps
private import semmle.code.java.frameworks.android.WebView
overlay[local?]
private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "android-web-resource-response" }
}

View File

@@ -8,6 +8,7 @@ import semmle.code.java.arithmetic.Overflow
import semmle.code.java.dataflow.FlowSteps
import semmle.code.java.controlflow.Guards
overlay[local?]
private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "thread-resource-abuse" }
}

View File

@@ -9,6 +9,7 @@ import semmle.code.java.controlflow.Guards
import semmle.code.java.security.UrlRedirect
import Regex
overlay[local?]
private class ActivateModels extends ActiveExperimentalModels {
ActivateModels() { this = "permissive-dot-regex-query" }
}

View File

@@ -291,6 +291,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {
* to `lambdaCall`, if any. That is, `lastCall` is able to target the enclosing
* callable of `lambdaCall`.
*/
overlay[global]
pragma[nomagic]
predicate revLambdaFlow(
Call lambdaCall, LambdaCallKind kind, Node node, Type t, boolean toReturn, boolean toJump,