CVE-2024-21648

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-21648
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-21648.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-21648
Aliases
Published
2024-01-08T23:31:50.298Z
Modified
2025-12-10T10:10:59.644783Z
Severity
  • 8.0 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H CVSS Calculator
Summary
XWiki has no right protection on rollback action
Details

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.

Database specific
{
    "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"
}
References

Affected packages

Git / github.com/xwiki/xwiki-commons

Affected ranges

Type
GIT
Repo
https://github.com/xwiki/xwiki-commons
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Git / github.com/xwiki/xwiki-platform

Affected ranges

Type
GIT
Repo
https://github.com/xwiki/xwiki-platform
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Affected versions

xwiki-application-calendar-1.*

xwiki-application-calendar-1.0

xwiki-platform-7.*

xwiki-platform-7.3-milestone-2
xwiki-platform-7.4-milestone-1
xwiki-platform-7.4-milestone-2

xwiki-platform-8.*

xwiki-platform-8.0-milestone-1
xwiki-platform-8.0-milestone-2
xwiki-platform-8.1-milestone-1
xwiki-platform-8.1-milestone-2
xwiki-platform-8.2-milestone-1
xwiki-platform-8.2-milestone-2
xwiki-platform-8.3-milestone-1

xwiki-platform-9.*

xwiki-platform-9.9-rc-2

xwiki-plugin-tag-1.*

xwiki-plugin-tag-1.1

Database specific

vanir_signatures

[
    {
        "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"
    }
]