XWiki Platform is a generic wiki platform offering runtime services for applications built on top of it. The rollback action is missing a right protection, a user can rollback to a previous version of the page to gain rights they don't have anymore. The problem has been patched in XWiki 14.10.17, 15.5.3 and 15.8-rc-1 by ensuring that the rights are checked before performing the rollback.
{
"cwe_ids": [
"CWE-274"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/21xxx/CVE-2024-21648.json",
"cna_assigner": "GitHub_M"
}[
{
"signature_type": "Line",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/RollbackAction.java"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-1266c576",
"digest": {
"threshold": 0.9,
"line_hashes": [
"225770898808972966980305540496650006387",
"82758793241336396140154517671554318583",
"237469839509136942218006268035267186682",
"317486200301631289079753882354527253966"
]
},
"signature_version": "v1"
},
{
"signature_type": "Function",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/RollbackAction.java",
"function": "action"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-47095a00",
"digest": {
"function_hash": "81114556533999983181138844931377555962",
"length": 756.0
},
"signature_version": "v1"
},
{
"signature_type": "Function",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/test/java/com/xpn/xwiki/XWikiMockitoTest.java",
"function": "rollbackFiresEvents"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-4dfcb93e",
"digest": {
"function_hash": "109235499347032145211255286090464341224",
"length": 1055.0
},
"signature_version": "v1"
},
{
"signature_type": "Function",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java",
"function": "rollback"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-5a10aaef",
"digest": {
"function_hash": "275926664946084384850799602803942027255",
"length": 1948.0
},
"signature_version": "v1"
},
{
"signature_type": "Function",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java",
"function": "deleteDocumentVersions"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-5a16f7fc",
"digest": {
"function_hash": "297958112869590865844949331677644118616",
"length": 1533.0
},
"signature_version": "v1"
},
{
"signature_type": "Line",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/test/java/com/xpn/xwiki/XWikiMockitoTest.java"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-80090806",
"digest": {
"threshold": 0.9,
"line_hashes": [
"60124783522489881865736280883302779188",
"159263842846301095952474216106917248045",
"10081851362211884850254657251936396858",
"325334190539831424749556103929230175366",
"154327661022431565730934618537507110481",
"291963275692275583436790720055002897577",
"199220096654174804474344895863282147526",
"167574202340658271090407221290570479711",
"125051495076896540422875188363826122937",
"114896133390047979835568396134608888545",
"200158019138883836460465795042952693717",
"178000845386602256053465403984986626997",
"271897653757376948138176613183338071450",
"317526644857763408221666101717915172523",
"12188392112286399060379595446298743205",
"16518232679457731822929921676736591097",
"310112487869142424687868462350874466765",
"13456516116012569064749830154771438844"
]
},
"signature_version": "v1"
},
{
"signature_type": "Function",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/DeleteVersionsAction.java",
"function": "action"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-ab86a401",
"digest": {
"function_hash": "114245847432478259502556364670503696729",
"length": 574.0
},
"signature_version": "v1"
},
{
"signature_type": "Line",
"target": {
"file": "xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-ui/src/main/java/org/xwiki/test/ui/po/HistoryPane.java"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-ccc6ea1f",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106512702274270813125790039423140831736",
"226519777921206141850964950743840592353"
]
},
"signature_version": "v1"
},
{
"signature_type": "Line",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/XWiki.java"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-e9573897",
"digest": {
"threshold": 0.9,
"line_hashes": [
"165858611157621679131367874518151370688",
"334163131477016653903813314421536380608",
"115506508775918804494229484912784913726",
"15589247091934173605487142893829892112",
"172688738654110243671958059113524483164",
"58660867537381420786182631647474422501",
"210853032276568859487563395849640467181",
"165592966900322781592319114220613365444",
"293468208257476194629116657973708769449",
"235777590957486227401390677506155650738",
"161139628464470593386396352649864872653",
"331263686486544367751646144044458879482",
"99685666113782365923976529866398493114",
"212410806830640363847607634832356673956",
"54573523819981912073174127565869826668",
"110227566816608800319703203913374225291",
"258841856954497220476895532778871211250",
"150537152707671369504139163119782678836",
"294575281402090069577133034446264576512",
"79081904765086407914506714554576210595",
"180295803742237028299339226635275344071",
"323894767025341869084054903977664324166"
]
},
"signature_version": "v1"
},
{
"signature_type": "Line",
"target": {
"file": "xwiki-platform-core/xwiki-platform-flamingo/xwiki-platform-flamingo-skin/xwiki-platform-flamingo-skin-test/xwiki-platform-flamingo-skin-test-docker/src/test/it/org/xwiki/flamingo/test/docker/VersionIT.java"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-f7325941",
"digest": {
"threshold": 0.9,
"line_hashes": [
"251683329732630741024741649630023950790",
"109997602675310210776454154697603585766",
"70461639945454574835870365879516032464",
"295937677216433645897046424509002339255",
"10200271573181369754638438806340667869",
"142210670671321196009777745767192763899",
"49849368135499908522557100392784425615",
"112132394438218159699687356835263608151",
"19600245693944932042382658164004861154",
"227815691779167471928731745740572058789",
"308873663754291823351399109367104743826",
"3888896519505908745803346952209226024",
"136874422446318307272524381586101715176",
"289600736092877481962799563200741712275",
"247367595449456629993774156800439432139",
"209487938478691547214564680664180591733",
"330615141107358484871541667624122161131"
]
},
"signature_version": "v1"
},
{
"signature_type": "Line",
"target": {
"file": "xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/web/DeleteVersionsAction.java"
},
"deprecated": false,
"source": "https://github.com/xwiki/xwiki-platform/commit/4de72875ca49602796165412741033bfdbf1e680",
"id": "CVE-2024-21648-fd62b9ea",
"digest": {
"threshold": 0.9,
"line_hashes": [
"198152217389260146801500873926629856474",
"215061677183456388066447876278090614090",
"217562468396235332589675241372596062689",
"146597391405541732811600745369822878971"
]
},
"signature_version": "v1"
}
]