Skip to content

Commit 09ec09f

Browse files
committed
chore: fix versions of vulnerable test deps
Prevent version resolution from bumping to fixed versions unintentionally.
1 parent a6b1765 commit 09ec09f

File tree

3 files changed

+45
-40
lines changed

3 files changed

+45
-40
lines changed

MODULE.bazel

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ TEST_MAVEN_ARTIFACTS = [
8080
"com.google.truth.extensions:truth-java8-extension:1.4.5",
8181
"com.google.truth.extensions:truth-liteproto-extension:1.4.5",
8282
"com.google.truth.extensions:truth-proto-extension:1.4.5",
83+
"com.google.code.gson:gson:2.13.2",
8384
"com.google.truth:truth:1.4.5",
8485
"jakarta.el:jakarta.el-api:6.0.1",
8586
"jakarta.validation:jakarta.validation-api:3.1.1",
@@ -106,7 +107,6 @@ VULNERABLE_TEST_MAVEN_ARTIFACTS = [
106107
"com.fasterxml.jackson.core:jackson-core:2.12.1",
107108
"com.fasterxml.jackson.core:jackson-databind:2.12.1",
108109
"com.fasterxml.jackson.dataformat:jackson-dataformat-cbor:2.12.1",
109-
"com.google.code.gson:gson:2.8.6",
110110
"com.h2database:h2:2.1.212",
111111
"com.mikesamuel:json-sanitizer:1.2.1",
112112
"com.unboundid:unboundid-ldapsdk:6.0.3",
@@ -157,6 +157,9 @@ maven.override(
157157
artifact = coordinate.split(":")[1],
158158
group = coordinate.split(":")[0],
159159
version = coordinate.split(":")[2],
160+
# Force vulnerable versions. Otherwise version selection might land on patched versions if a newer version is
161+
# in the dependeny tree.
162+
force_version = coordinate in VULNERABLE_TEST_MAVEN_ARTIFACTS,
160163
)
161164
for coordinate in TEST_MAVEN_ARTIFACTS + TEST_MAVEN_ARTIFACTS_FIXED + VULNERABLE_TEST_MAVEN_ARTIFACTS
162165
]

examples/src/main/java/com/example/JsonSanitizerValidJsonFuzzer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public static void fuzzerTestOneInput(FuzzedDataProvider data) {
3636
// that trust the output of the sanitizer.
3737
try {
3838
Gson gson = new Gson();
39-
gson.fromJson(validJson, JsonElement.class);
39+
Object unused = gson.fromJson(validJson, JsonElement.class);
4040
} catch (Exception e) {
4141
throw new FuzzerSecurityIssueLow("Output is invalid JSON", e);
4242
}

maven_install.json

Lines changed: 40 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,57 @@
11
{
22
"__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL",
33
"__INPUT_ARTIFACTS_HASH": {
4-
"com.alibaba:fastjson": -681992561,
5-
"com.beust:klaxon": 300212242,
6-
"com.fasterxml.jackson.core:jackson-core": 1010823907,
7-
"com.fasterxml.jackson.core:jackson-databind": -745487957,
8-
"com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": -1896543162,
4+
"com.alibaba:fastjson": 1817768268,
5+
"com.beust:klaxon": 338175087,
6+
"com.fasterxml.jackson.core:jackson-core": 723971516,
7+
"com.fasterxml.jackson.core:jackson-databind": 1657199092,
8+
"com.fasterxml.jackson.dataformat:jackson-dataformat-cbor": 524096757,
99
"com.github.jsqlparser:jsqlparser": -85077207,
1010
"com.google.code.findbugs:jsr305": 495355163,
11-
"com.google.code.gson:gson": 804554938,
11+
"com.google.code.gson:gson": -2119346406,
1212
"com.google.errorprone:error_prone_annotations": 1088983199,
1313
"com.google.guava:guava": -1791353471,
1414
"com.google.j2objc:j2objc-annotations": 2003271689,
1515
"com.google.truth.extensions:truth-java8-extension": -1240961434,
1616
"com.google.truth.extensions:truth-liteproto-extension": -574439286,
1717
"com.google.truth.extensions:truth-proto-extension": -362698248,
1818
"com.google.truth:truth": -252459521,
19-
"com.h2database:h2": 226402037,
20-
"com.mikesamuel:json-sanitizer": 293386087,
21-
"com.unboundid:unboundid-ldapsdk": 1642354521,
19+
"com.h2database:h2": -342409218,
20+
"com.mikesamuel:json-sanitizer": -1840608028,
21+
"com.unboundid:unboundid-ldapsdk": -1036201052,
2222
"io.github.classgraph:classgraph": -1461122240,
2323
"jakarta.el:jakarta.el-api": 171705473,
2424
"jakarta.validation:jakarta.validation-api": -186402049,
25-
"javax.el:javax.el-api": 281575833,
25+
"javax.el:javax.el-api": -2068634010,
2626
"javax.persistence:javax.persistence-api": -631950732,
27-
"javax.validation:validation-api": -236707587,
28-
"javax.xml.bind:jaxb-api": 1419721195,
27+
"javax.validation:validation-api": -1286435650,
28+
"javax.xml.bind:jaxb-api": -1763012100,
2929
"junit:junit": -652553691,
3030
"net.bytebuddy:byte-buddy-agent": -1065427230,
3131
"net.jodah:typetools": 1676712931,
3232
"ognl:ognl": 2052829285,
33-
"org.apache.commons:commons-imaging": -713470582,
33+
"org.apache.commons:commons-imaging": -1220018277,
3434
"org.apache.commons:commons-jexl": 813523241,
35-
"org.apache.commons:commons-text": -202691025,
36-
"org.apache.logging.log4j:log4j-api": 1725824943,
37-
"org.apache.logging.log4j:log4j-core": 1273395248,
38-
"org.apache.xmlgraphics:batik-anim": -305607220,
39-
"org.apache.xmlgraphics:batik-awt-util": -1574868820,
40-
"org.apache.xmlgraphics:batik-bridge": -541969660,
41-
"org.apache.xmlgraphics:batik-css": 991501212,
42-
"org.apache.xmlgraphics:batik-dom": -1684035877,
43-
"org.apache.xmlgraphics:batik-gvt": 913119998,
44-
"org.apache.xmlgraphics:batik-parser": 1947933594,
45-
"org.apache.xmlgraphics:batik-script": -1755688890,
46-
"org.apache.xmlgraphics:batik-svg-dom": -1819522958,
47-
"org.apache.xmlgraphics:batik-svggen": -1381794329,
48-
"org.apache.xmlgraphics:batik-transcoder": 610348408,
49-
"org.apache.xmlgraphics:batik-util": -14027843,
50-
"org.apache.xmlgraphics:batik-xml": -1533097552,
35+
"org.apache.commons:commons-text": -1377889016,
36+
"org.apache.logging.log4j:log4j-api": -1645212456,
37+
"org.apache.logging.log4j:log4j-core": -521037129,
38+
"org.apache.xmlgraphics:batik-anim": 1816317577,
39+
"org.apache.xmlgraphics:batik-awt-util": -243562583,
40+
"org.apache.xmlgraphics:batik-bridge": 2092183121,
41+
"org.apache.xmlgraphics:batik-css": -571765063,
42+
"org.apache.xmlgraphics:batik-dom": -1814108902,
43+
"org.apache.xmlgraphics:batik-gvt": 1681211415,
44+
"org.apache.xmlgraphics:batik-parser": -496639493,
45+
"org.apache.xmlgraphics:batik-script": 554579407,
46+
"org.apache.xmlgraphics:batik-svg-dom": 1153046051,
47+
"org.apache.xmlgraphics:batik-svggen": -1952728434,
48+
"org.apache.xmlgraphics:batik-transcoder": 1844713309,
49+
"org.apache.xmlgraphics:batik-util": 1754814712,
50+
"org.apache.xmlgraphics:batik-xml": 1285546021,
5151
"org.assertj:assertj-core": 1651685074,
5252
"org.freemarker:freemarker": -165087457,
53-
"org.glassfish:javax.el": 2017793333,
54-
"org.hibernate:hibernate-validator": 943779753,
53+
"org.glassfish:javax.el": 125177410,
54+
"org.hibernate:hibernate-validator": -1353801614,
5555
"org.jacoco:org.jacoco.core": -372056147,
5656
"org.junit.jupiter:junit-jupiter-api": -1488163120,
5757
"org.junit.jupiter:junit-jupiter-engine": 479628524,
@@ -69,9 +69,9 @@
6969
"org.ow2.asm:asm": 1206815935,
7070
"org.ow2.asm:asm-commons": 1607605466,
7171
"org.ow2.asm:asm-tree": -1365652182,
72-
"org.springframework.cloud:spring-cloud-function-context": -955758783,
73-
"org.springframework.cloud:spring-cloud-function-core": 428800769,
74-
"org.springframework:spring-messaging": 772904355,
72+
"org.springframework.cloud:spring-cloud-function-context": 191971828,
73+
"org.springframework.cloud:spring-cloud-function-core": -1854900684,
74+
"org.springframework:spring-messaging": 328550982,
7575
"repositories": -1949687017
7676
},
7777
"__RESOLVED_ARTIFACTS_HASH": {
@@ -85,7 +85,7 @@
8585
"com.github.jsqlparser:jsqlparser": 130367484,
8686
"com.google.auto.value:auto-value-annotations": 641018093,
8787
"com.google.code.findbugs:jsr305": 870839855,
88-
"com.google.code.gson:gson": -1575757252,
88+
"com.google.code.gson:gson": -2092238571,
8989
"com.google.errorprone:error_prone_annotations": 213918278,
9090
"com.google.guava:failureaccess": 1715931538,
9191
"com.google.guava:guava": 716792237,
@@ -191,7 +191,6 @@
191191
"xml-apis:xml-apis-ext": 814558833
192192
},
193193
"conflict_resolution": {
194-
"com.google.code.gson:gson:2.8.6": "com.google.code.gson:gson:2.8.9",
195194
"com.google.j2objc:j2objc-annotations:2.8": "com.google.j2objc:j2objc-annotations:3.1"
196195
},
197196
"artifacts": {
@@ -257,9 +256,9 @@
257256
},
258257
"com.google.code.gson:gson": {
259258
"shasums": {
260-
"jar": "d3999291855de495c94c743761b8ab5176cfeabe281a5ab0d8e8d45326fd703e"
259+
"jar": "dd0ce1b55a3ed2080cb70f9c655850cda86c206862310009dcb5e5c95265a5e0"
261260
},
262-
"version": "2.8.9"
261+
"version": "2.13.2"
263262
},
264263
"com.google.errorprone:error_prone_annotations": {
265264
"shasums": {
@@ -893,6 +892,9 @@
893892
"com.fasterxml.jackson.core:jackson-core",
894893
"com.fasterxml.jackson.core:jackson-databind"
895894
],
895+
"com.google.code.gson:gson": [
896+
"com.google.errorprone:error_prone_annotations"
897+
],
896898
"com.google.guava:guava": [
897899
"com.google.errorprone:error_prone_annotations",
898900
"com.google.guava:failureaccess",

0 commit comments

Comments
 (0)