In grails-databinding in Grails before 3.3.15, 4.x before 4.1.1, 5.x before 5.1.9, and 5.2.x before 5.2.1 (at least when certain Java 8 configurations are used), data binding allows a remote attacker to execute code by gaining access to the class loader.
{
"versions": [
{
"introduced": "3.3.10"
},
{
"fixed": "3.3.15"
},
{
"introduced": "4.0.0"
},
{
"fixed": "4.1.1"
},
{
"introduced": "5.0.0"
},
{
"fixed": "5.1.9"
},
{
"introduced": "0"
},
{
"last_affected": "5.2.0"
}
]
}[
{
"signature_type": "Line",
"source": "https://github.com/grails/grails-core/commit/2279cc53db82674fc3bf527b4c9a8a071ffd7942",
"signature_version": "v1",
"target": {
"file": "grails-core/src/test/groovy/grails/util/GrailsUtilTests.java"
},
"id": "CVE-2022-35912-782c96ef",
"deprecated": false,
"digest": {
"line_hashes": [
"265527345752929269959675063536228266316",
"253657430198469265743706077559009248439",
"235959779190895364226641945778270050068",
"317079240568775686040492947509911246572"
],
"threshold": 0.9
}
},
{
"signature_type": "Function",
"source": "https://github.com/grails/grails-core/commit/1e3c7077e0c773bd6f20f6f73d332e890abc0c50",
"signature_version": "v1",
"target": {
"file": "grails-core/src/test/groovy/grails/util/GrailsUtilTests.java",
"function": "testGrailsVersion"
},
"id": "CVE-2022-35912-7dc5ce23",
"deprecated": false,
"digest": {
"function_hash": "337336054825846849060651794846366540003",
"length": 82.0
}
},
{
"signature_type": "Line",
"source": "https://github.com/grails/grails-core/commit/1e3c7077e0c773bd6f20f6f73d332e890abc0c50",
"signature_version": "v1",
"target": {
"file": "grails-core/src/test/groovy/grails/util/GrailsUtilTests.java"
},
"id": "CVE-2022-35912-bba1edd0",
"deprecated": false,
"digest": {
"line_hashes": [
"133658545622022813691893546492822193591",
"231968117220509831045687927920220568529",
"322518850141335907120383407016704122099",
"68221056247180651435663117672102194603"
],
"threshold": 0.9
}
},
{
"signature_type": "Function",
"source": "https://github.com/grails/grails-core/commit/b062a5cfe95835ea43217561db5ab8fa34aefe2b",
"signature_version": "v1",
"target": {
"file": "grails-core/src/test/groovy/grails/util/GrailsUtilTests.java",
"function": "testGrailsVersion"
},
"id": "CVE-2022-35912-bcad145c",
"deprecated": false,
"digest": {
"function_hash": "86599955727034140749407227730922538923",
"length": 89.0
}
},
{
"signature_type": "Line",
"source": "https://github.com/grails/grails-core/commit/b062a5cfe95835ea43217561db5ab8fa34aefe2b",
"signature_version": "v1",
"target": {
"file": "grails-core/src/test/groovy/grails/util/GrailsUtilTests.java"
},
"id": "CVE-2022-35912-c19632d7",
"deprecated": false,
"digest": {
"line_hashes": [
"168448992433160026276914504092498461111",
"212024600673281245820970122453290818013",
"24168885317386346339111550118646531829",
"57181071602607972446226234243744107833"
],
"threshold": 0.9
}
},
{
"signature_type": "Function",
"source": "https://github.com/grails/grails-core/commit/2279cc53db82674fc3bf527b4c9a8a071ffd7942",
"signature_version": "v1",
"target": {
"file": "grails-core/src/test/groovy/grails/util/GrailsUtilTests.java",
"function": "testGrailsVersion"
},
"id": "CVE-2022-35912-f68f530c",
"deprecated": false,
"digest": {
"function_hash": "294856197498714873664731451451100738900",
"length": 82.0
}
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-35912.json"
"2026-04-11T23:41:57Z"