Skip to content

Commit 655470f

Browse files
committed
Refactor EnvInput to MaD
1 parent d258f69 commit 655470f

File tree

4 files changed

+21
-8
lines changed

4 files changed

+21
-8
lines changed

java/ql/lib/ext/java.io.model.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,3 +128,8 @@ extensions:
128128
# sink neutrals
129129
- ["java.io", "File", "compareTo", "", "sink", "hq-manual"]
130130
- ["java.io", "File", "exists", "()", "sink", "hq-manual"]
131+
- addsTo:
132+
pack: codeql/java-all
133+
extensible: sourceModel
134+
data:
135+
- ["java.io", "FileInputStream", True, "FileInputStream", "", "", "Argument[this]", "file", "manual"]

java/ql/lib/ext/java.lang.model.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,13 @@ extensions:
4040
- ["java.lang", "System$Logger", True, "log", "(System$Logger$Level,String,Supplier)", "", "Argument[1..2]", "log-injection", "manual"]
4141
- ["java.lang", "System$Logger", True, "log", "(System$Logger$Level,String,Supplier,Throwable)", "", "Argument[1..2]", "log-injection", "manual"]
4242
- ["java.lang", "System$Logger", True, "log", "(System$Logger$Level,String,Throwable)", "", "Argument[1]", "log-injection", "manual"]
43+
- addsTo:
44+
pack: codeql/java-all
45+
extensible: sourceModel
46+
data:
47+
- ["java.lang", "System", False, "getenv", "", "", "ReturnValue", "environment", "manual"]
48+
- ["java.lang", "System", False, "getProperties", "", "", "ReturnValue", "environment", "manual"]
49+
- ["java.lang", "System", False, "getProperty", "", "", "ReturnValue", "environment", "manual"]
4350
- addsTo:
4451
pack: codeql/java-all
4552
extensible: summaryModel

java/ql/lib/ext/java.util.model.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
extensions:
2+
- addsTo:
3+
pack: codeql/java-all
4+
extensible: sourceModel
5+
data:
6+
- ["java.util", "Properties", True, "get", "", "", "ReturnValue", "environment", "manual"]
7+
- ["java.util", "Properties", True, "getProperty", "", "", "ReturnValue", "environment", "manual"]
8+
29
- addsTo:
310
pack: codeql/java-all
411
extensible: summaryModel

java/ql/lib/semmle/code/java/dataflow/FlowSources.qll

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -233,10 +233,7 @@ deprecated class EnvInput extends DataFlow::Node {
233233
* environment variables.
234234
*/
235235
private class EnvironmentInput extends LocalUserInput {
236-
EnvironmentInput() {
237-
// Results from various specific methods.
238-
this.asExpr().(MethodAccess).getMethod() instanceof EnvReadMethod
239-
}
236+
EnvironmentInput() { sourceNode(this, "environment") }
240237

241238
override string getThreatModel() { result = "environment" }
242239
}
@@ -268,10 +265,7 @@ private class CliInput extends LocalUserInput {
268265
private class FileInput extends LocalUserInput {
269266
FileInput() {
270267
// Access to files.
271-
this.asExpr()
272-
.(ConstructorCall)
273-
.getConstructedType()
274-
.hasQualifiedName("java.io", "FileInputStream")
268+
sourceNode(this, "file")
275269
}
276270

277271
override string getThreatModel() { result = "file" }

0 commit comments

Comments
 (0)