Skip to content

Commit f36ee95

Browse files
author
Sebastian Bauersfeld
committed
Java: Pass taint through Spring's AbstractMessageSource.getMessage() methods.
1 parent 94c1a48 commit f36ee95

File tree

3 files changed

+21
-0
lines changed

3 files changed

+21
-0
lines changed

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ private module Frameworks {
102102
private import semmle.code.java.frameworks.ratpack.Ratpack
103103
private import semmle.code.java.frameworks.ratpack.RatpackExec
104104
private import semmle.code.java.frameworks.spring.SpringCache
105+
private import semmle.code.java.frameworks.spring.SpringContext
105106
private import semmle.code.java.frameworks.spring.SpringHttp
106107
private import semmle.code.java.frameworks.spring.SpringUtil
107108
private import semmle.code.java.frameworks.spring.SpringUi

java/ql/lib/semmle/code/java/frameworks/spring/Spring.qll

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import semmle.code.java.frameworks.spring.SpringBeanFile
99
import semmle.code.java.frameworks.spring.SpringBeans
1010
import semmle.code.java.frameworks.spring.SpringBeanRefType
1111
import semmle.code.java.frameworks.spring.SpringCache
12+
import semmle.code.java.frameworks.spring.SpringContext
1213
import semmle.code.java.frameworks.spring.SpringComponentScan
1314
import semmle.code.java.frameworks.spring.SpringConstructorArg
1415
import semmle.code.java.frameworks.spring.SpringController
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/**
2+
* Provides models for the `org.springframework.context` package.
3+
*/
4+
5+
import java
6+
private import semmle.code.java.dataflow.ExternalFlow
7+
8+
private class StringSummaryCsv extends SummaryModelCsv {
9+
override predicate row(string row) {
10+
row =
11+
[
12+
//`namespace; type; subtypes; name; signature; ext; input; output; kind`
13+
"org.springframework.context.support;AbstractMessageSource;true;getMessage;(String,Object[],String,Locale);;ArrayElement of Argument[1];ReturnValue;taint",
14+
"org.springframework.context.support;AbstractMessageSource;true;getMessage;(String,Object[],String,Locale);;Argument[2];ReturnValue;taint",
15+
"org.springframework.context.support;AbstractMessageSource;true;getMessage;(String,Object[],Locale);;ArrayElement of Argument[1];ReturnValue;taint",
16+
"org.springframework.context.support;AbstractMessageSource;true;getMessageFromParent;;;ArrayElement of Argument[1];ReturnValue;taint",
17+
]
18+
}
19+
}

0 commit comments

Comments
 (0)