{"id":"CVE-2021-43859","aliases":["BIT-jenkins-2021-43859","CLSA-2026-1784250511","DEBIAN-CVE-2021-43859","DLA-2924-1","DLA-4001-1","EUVD-2022-1176","GHSA-hfq9-hggm-c56q","GHSA-j563-grx4-pjpv","GHSA-rmr5-cpv2-vgjf","OESA-2022-1512","OESA-2022-2066","RHLW-2026-c69885b4933c8262","RHSA-2022:1420","SUSE-SU-2022:0817-1","UBUNTU-CVE-2021-43859","openSUSE-SU-2022:0817-1","openSUSE-SU-2024:11809-1"],"status":"published","title":"Denial of Service by injecting highly recursive collections or maps in XStream","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.07934,"percentile":0.94777,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-400","CWE-502"],"published":"2022-02-01T00:48:15Z","modified":"2026-11-02T19:45:46Z","fixes":[{"ecosystem":"Maven","package":"com.thoughtworks.xstream:xstream","fixed_in":["1.4.19"],"sources":["ghsa","osv"]},{"ecosystem":"Bitnami","package":"jenkins","fixed_in":["2.319.3","2.334.0"],"sources":["osv"]},{"ecosystem":"Debian:12","package":"libxstream-java","fixed_in":["1.4.19-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"libxstream-java","fixed_in":["1.4.19-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"libxstream-java","fixed_in":["1.4.19-1"],"sources":["osv"]},{"ecosystem":"Debian:9","package":"libxstream-java","fixed_in":["1.4.11.1-1+deb9u5"],"sources":["osv"]},{"ecosystem":"openEuler:20.03-LTS-SP1","package":"xstream","fixed_in":["1.4.18-2.oe1"],"sources":["osv"]},{"ecosystem":"openEuler:20.03-LTS-SP2","package":"xstream","fixed_in":["1.4.18-2.oe1"],"sources":["osv"]},{"ecosystem":"openEuler:20.03-LTS-SP3","package":"xstream","fixed_in":["1.4.18-2.oe1"],"sources":["osv"]},{"ecosystem":"openEuler:22.03-LTS","package":"xstream","fixed_in":["1.4.18-2.oe2203"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP3","package":"xstream","fixed_in":["1.4.19-3.18.2"],"sources":["osv"]},{"ecosystem":"SUSE:Manager Server Module 4.1","package":"xstream","fixed_in":["1.4.19-3.18.2"],"sources":["osv"]},{"ecosystem":"SUSE:Manager Server Module 4.2","package":"xstream","fixed_in":["1.4.19-3.18.2"],"sources":["osv"]},{"ecosystem":"SUSE:Linux Enterprise Real Time 15 SP2","package":"xstream","fixed_in":["1.4.19-3.18.2"],"sources":["osv"]},{"ecosystem":"openSUSE:Leap 15.3","package":"xstream","fixed_in":["1.4.19-3.18.2"],"sources":["osv"]},{"ecosystem":"openSUSE:Tumbleweed","package":"xstream","fixed_in":["1.4.19-1.1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"com.thoughtworks.xstream:xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"jenkins","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.319.3"},{"introduced":"2.321.0"},{"fixed":"2.334.0"}]}]},{"source":"osv","ecosystem":"TuxCare:Maven","package":"com.thoughtworks.xstream:xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.4.17"},{"fixed":"1.4.17-tuxcare.2"}]}],"versions":["1.4.17","1.4.17-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"Debian:12","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-1"}]}]},{"source":"osv","ecosystem":"Debian:9","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.11.1-1+deb9u5"}]}],"versions":["1.4.10-1","1.4.11-1","1.4.11.1-1","1.4.11.1-1+deb9u1","1.4.11.1-1+deb9u2","1.4.11.1-1+deb9u3","1.4.11.1-1+deb9u4","1.4.9-2","1.4.9-2+deb9u1"]},{"source":"osv","ecosystem":"Debian:11","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.15-3+deb11u3"}]}],"versions":["1.4.15-3","1.4.15-3+deb11u1","1.4.15-3+deb11u2"],"bundled":2},{"source":"osv","ecosystem":"Maven","package":"com.thoughtworks.xstream:xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19"}]}],"versions":["0.1","0.2","0.3","0.5","0.6","1.0","1.0.1","1.0.2","1.1","1.1.1","1.1.2","1.1.3","1.2","1.2.1","1.2.2","1.3","1.3.1","1.4","1.4.1","1.4.10","1.4.10-java7","1.4.11","1.4.11-java7","1.4.11.1","1.4.12","1.4.12-java7","1.4.13","1.4.13-java7","1.4.14","1.4.14-java7","1.4.14-jdk7","1.4.15","1.4.16","1.4.17","1.4.18","1.4.2","1.4.3","1.4.4","1.4.5","1.4.6","1.4.7","1.4.8","1.4.9"]},{"source":"osv","ecosystem":"openEuler:20.03-LTS-SP1","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.18-2.oe1"}]}]},{"source":"osv","ecosystem":"openEuler:20.03-LTS-SP2","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.18-2.oe1"}]}]},{"source":"osv","ecosystem":"openEuler:20.03-LTS-SP3","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.18-2.oe1"}]}]},{"source":"osv","ecosystem":"openEuler:22.03-LTS","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.18-2.oe2203"}]}]},{"source":"osv","ecosystem":"Red Hat Lightwell:Maven","package":"com.thoughtworks.xstream:xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.18.rhlw-00006"}]}],"versions":["0.1","0.2","0.3","0.5","0.6","1.0","1.0.1","1.0.2","1.1","1.1.1","1.1.2","1.1.3","1.2","1.2.1","1.2.2","1.3","1.3.1","1.4","1.4.1","1.4.10","1.4.10-java7","1.4.11","1.4.11-java7","1.4.11.1","1.4.12","1.4.12-java7","1.4.13","1.4.13-java7","1.4.14","1.4.14-java7","1.4.14-jdk7","1.4.15","1.4.16","1.4.17","1.4.18","1.4.2","1.4.3","1.4.4","1.4.5","1.4.6","1.4.7","1.4.8","1.4.9"],"bundled":3},{"source":"osv","ecosystem":"Red Hat:openshift:3.11::el7","package":"jenkins","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.319.3.1650348949-1.el7"}]}],"bundled":13},{"source":"osv","ecosystem":"Red Hat:openshift:3.11::el7","package":"jenkins-2-plugins","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.11.1650371376-1.el7"}]}],"bundled":13},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP3","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-3.18.2"}]}]},{"source":"osv","ecosystem":"SUSE:Manager Server Module 4.1","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-3.18.2"}]}]},{"source":"osv","ecosystem":"SUSE:Manager Server Module 4.2","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-3.18.2"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Real Time 15 SP2","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-3.18.2"}]}]},{"source":"osv","ecosystem":"Ubuntu:Pro:14.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.4-1","1.4.7-1","1.4.7-1ubuntu0.1","1.4.7-1ubuntu0.1+esm1","1.4.7-1ubuntu0.1+esm2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:16.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.8-1","1.4.8-1ubuntu0.1","1.4.8-1ubuntu0.1+esm1","1.4.8-1ubuntu0.1+esm2","1.4.8-1ubuntu0.1+esm3"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.10-1","1.4.11.1-1~18.04","1.4.11.1-1~18.04.1","1.4.11.1-1~18.04.2","1.4.11.1-1+deb10u4build0.18.04.1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.11.1-1","1.4.11.1-1ubuntu0.1","1.4.11.1-1ubuntu0.2","1.4.11.1-1ubuntu0.3"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.15-4","1.4.18-2","1.4.18-2ubuntu0.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.20-1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.21-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.21-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"libxstream-java","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.21-1"]},{"source":"osv","ecosystem":"openSUSE:Leap 15.3","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-3.18.2"}]}]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"xstream","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.4.19-1.1"}]}]}],"products":[{"vendor":"debian","product":"debian_linux"},{"vendor":"fedoraproject","product":"fedora"},{"vendor":"jenkins","product":"jenkins"},{"vendor":"oracle","product":"commerce_guided_search"},{"vendor":"oracle","product":"communications_brm_-_elastic_charging_engine"},{"vendor":"oracle","product":"communications_cloud_native_core_automated_test_suite"},{"vendor":"oracle","product":"communications_diameter_intelligence_hub"},{"vendor":"oracle","product":"communications_policy_management"},{"vendor":"oracle","product":"flexcube_private_banking"},{"vendor":"oracle","product":"retail_xstore_point_of_service"},{"vendor":"x-stream","product":"xstream"},{"vendor":"xstream","product":"xstream"}],"references":[{"url":"https://github.com/x-stream/xstream/security/advisories/GHSA-rmr5-cpv2-vgjf","tags":["x_refsource_CONFIRM","x_transferred","Exploit","Third Party Advisory","advisory","evidence","web","report"]},{"url":"https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","advisory","fix","web","report"]},{"url":"https://x-stream.github.io/CVE-2021-43859.html","tags":["x_refsource_MISC","x_transferred","Exploit","Vendor Advisory","advisory","evidence","web","report"]},{"url":"http://www.openwall.com/lists/oss-security/2022/02/09/1","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","advisory","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/XODFRE2ZL64FICBJDOPWOLPTSSAI4U7X/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","Mailing List","discussion","article"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/VACQYG356OHUTD5WQGAQ4L2TTFTAV3SJ/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","Mailing List","discussion","article"]},{"url":"https://lists.debian.org/debian-lts-announce/2022/02/msg00018.html","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","advisory","web"]},{"url":"https://www.oracle.com/security-alerts/cpuapr2022.html","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","advisory","fix","web"]},{"url":"https://www.oracle.com/security-alerts/cpujul2022.html","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","advisory","fix","web"]},{"url":"https://lists.debian.org/debian-lts-announce/2024/12/msg00023.html","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-43859","tags":["web","advisory"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/VACQYG356OHUTD5WQGAQ4L2TTFTAV3SJ","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/XODFRE2ZL64FICBJDOPWOLPTSSAI4U7X","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VACQYG356OHUTD5WQGAQ4L2TTFTAV3SJ","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XODFRE2ZL64FICBJDOPWOLPTSSAI4U7X","tags":["web"]},{"url":"https://github.com/advisories/GHSA-rmr5-cpv2-vgjf","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-43859","tags":["advisory"]},{"url":"https://github.com/x-stream/xstream","tags":["web"]},{"url":"https://www.openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2022-1512","tags":["advisory"]},{"url":"https://www.openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2022-2066","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/41xxx/CVE-2022-41966.json","tags":["advisory"]},{"url":"https://github.com/x-stream/xstream/security/advisories/GHSA-j563-grx4-pjpv","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-41966","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-j563-grx4-pjpv","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/47xxx/CVE-2024-47072.json","tags":["advisory"]},{"url":"https://github.com/x-stream/xstream/security/advisories/GHSA-hfq9-hggm-c56q","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-47072","tags":["advisory"]},{"url":"https://github.com/x-stream/xstream/commit/bb838ce2269cac47433e31c77b2b236466e9f266","tags":["fix"]},{"url":"https://github.com/advisories/GHSA-hfq9-hggm-c56q","tags":["advisory"]},{"url":"https://access.redhat.com/errata/RHSA-2022:1420","tags":["advisory"]},{"url":"https://access.redhat.com/security/updates/classification/#important","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2049783","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055719","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055733","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055734","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055787","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055788","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055789","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055792","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055795","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055797","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055798","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055802","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2055804","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2076828","tags":["report"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2022/rhsa-2022_1420.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2021-43859","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-43859","tags":["advisory","report"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25173","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25173","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25173","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25174","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25174","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25174","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25175","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25175","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25175","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25176","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25176","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25176","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25177","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25177","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25177","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25178","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25178","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25178","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25179","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25179","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25179","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25180","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25180","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25180","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25181","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25181","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25181","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25182","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25182","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25182","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25183","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25183","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25183","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2022-25184","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2022-25184","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-25184","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2022/suse-su-20220817-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1195458","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2021-43859","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2021-43859","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/BZZMZMEXJXNF2NQNIXETAFBVRAZVIVSO/","tags":["advisory"]},{"url":"","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2021-43859","title":"Denial of Service by injecting highly recursive collections or maps in XStream","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2022-02-01T12:08:57Z","modified":"2025-11-03T21:45:34.625Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"cna"}],"cwes":["CWE-400"],"updated_at":"2026-11-02T14:32:57.033395Z"}],"euvd":[{"id":"EUVD-2022-1176","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2022-02-01T12:08:57Z","modified":"2025-11-03T21:45:34Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T19:49:31.7352Z"}],"ghsa":[{"id":"GHSA-rmr5-cpv2-vgjf","title":"Denial of Service by injecting highly recursive collections or maps in XStream","description":"### Impact\nThe vulnerability may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream.\n\n### Patches\nXStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded.\n\n### Workarounds\nThe attack uses the hash code implementation for collections and maps to force an exponential calculation time due to highly recursive structures with in the collection or map. Following types of the Java runtime are affected in Java versions available in December 2021:\n\n- java.util.HashMap\n- java.util.HashSet\n- java.util.Hashtable\n- java.util.LinkedHashMap\n- java.util.LinkedHashSet\n- java.util.Stack (older Java revisions only)\n- java.util.Vector (older Java revisions only)\n- Other third party collection implementations that use their element's hash code may also be affected\n\nIf your object graph does not use referenced elements at all, you may simply set the NO_REFERENCE mode:\n```Java\nXStream xstream = new XStream();\nxstream.setMode(XStream.NO_REFERENCES);\n```\n\nIf your object graph contains neither a Hashtable, HashMap nor a HashSet (or one of the linked variants of it) then you can use the security framework to deny the usage of these types:\n```Java\nXStream xstream = new XStream();\nxstream.denyTypes(new Class[]{\n java.util.HashMap.class, java.util.HashSet.class, java.util.Hashtable.class, java.util.LinkedHashMap.class, java.util.LinkedHashSet.class\n});\n```\n\nUnfortunately these types are very common. If you only use HashMap or HashSet and your XML refers these only as default map or set, you may additionally change the default implementation of java.util.Map and java.util.Set at unmarshalling time::\n```Java\nxstream.addDefaultImplementation(java.util.TreeMap.class, java.util.Map.class);\nxstream.addDefaultImplementation(java.util.TreeSet.class, java.util.Set.class);\n```\nHowever, this implies that your application does not care about the implementation of the map and all elements are comparable.\n\n### References\nSee full information about the nature of the vulnerability and the steps to reproduce it in XStream's documentation for [CVE-2021-43859](https://x-stream.github.io/CVE-2021-43859.html).\n\n### Credits\nThe vulnerability was discovered and reported by r00t4dm at Cloud-Penetrating Arrow Lab.\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [XStream](https://github.com/x-stream/xstream/issues)\n* Contact us at [XStream Google Group](https://groups.google.com/group/xstream-user)","status":"published","published":"2022-02-01T00:48:15Z","modified":"2025-11-04T16:34:34Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-400","CWE-502"],"updated_at":"2026-11-02T14:39:05.278442Z"}],"nvd":[{"id":"CVE-2021-43859","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2022-02-01T12:15:08.08Z","modified":"2026-06-17T04:11:35.37Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-400"],"updated_at":"2026-11-02T14:07:04.178977Z"}],"osv":[{"id":"CVE-2021-43859","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2022-02-01T12:15:08.08Z","modified":"2026-10-24T14:21:22.338768884Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:21.877444Z"},{"id":"DEBIAN-CVE-2021-43859","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2022-02-01T12:15:08.08Z","modified":"2026-10-23T18:04:16.304498063Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:35.799676Z"},{"id":"GHSA-rmr5-cpv2-vgjf","title":"Denial of Service by injecting highly recursive collections or maps in XStream","description":"### Impact\nThe vulnerability may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream.\n\n### Patches\nXStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded.\n\n### Workarounds\nThe attack uses the hash code implementation for collections and maps to force an exponential calculation time due to highly recursive structures with in the collection or map. Following types of the Java runtime are affected in Java versions available in December 2021:\n\n- java.util.HashMap\n- java.util.HashSet\n- java.util.Hashtable\n- java.util.LinkedHashMap\n- java.util.LinkedHashSet\n- java.util.Stack (older Java revisions only)\n- java.util.Vector (older Java revisions only)\n- Other third party collection implementations that use their element's hash code may also be affected\n\nIf your object graph does not use referenced elements at all, you may simply set the NO_REFERENCE mode:\n```Java\nXStream xstream = new XStream();\nxstream.setMode(XStream.NO_REFERENCES);\n```\n\nIf your object graph contains neither a Hashtable, HashMap nor a HashSet (or one of the linked variants of it) then you can use the security framework to deny the usage of these types:\n```Java\nXStream xstream = new XStream();\nxstream.denyTypes(new Class[]{\n java.util.HashMap.class, java.util.HashSet.class, java.util.Hashtable.class, java.util.LinkedHashMap.class, java.util.LinkedHashSet.class\n});\n```\n\nUnfortunately these types are very common. If you only use HashMap or HashSet and your XML refers these only as default map or set, you may additionally change the default implementation of java.util.Map and java.util.Set at unmarshalling time::\n```Java\nxstream.addDefaultImplementation(java.util.TreeMap.class, java.util.Map.class);\nxstream.addDefaultImplementation(java.util.TreeSet.class, java.util.Set.class);\n```\nHowever, this implies that your application does not care about the implementation of the map and all elements are comparable.\n\n### References\nSee full information about the nature of the vulnerability and the steps to reproduce it in XStream's documentation for [CVE-2021-43859](https://x-stream.github.io/CVE-2021-43859.html).\n\n### Credits\nThe vulnerability was discovered and reported by r00t4dm at Cloud-Penetrating Arrow Lab.\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [XStream](https://github.com/x-stream/xstream/issues)\n* Contact us at [XStream Google Group](https://groups.google.com/group/xstream-user)","status":"published","published":"2022-02-01T00:48:15Z","modified":"2026-07-08T06:29:15.393142409Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-400","CWE-502"],"updated_at":"2026-11-02T15:46:56.281047Z"},{"id":"OESA-2022-1512","title":"xstream security update","description":"Java XML serialization library.\r\n\r\nSecurity Fix(es):\r\n\r\nXStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.(CVE-2021-43859)","status":"published","published":"2022-02-11T11:04:47Z","modified":"2026-08-18T01:16:19.551635609Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:39.528805Z"},{"id":"OESA-2022-2066","title":"xstream security update","description":"XStream is a simple library to serialize objects to XML and back again. A high level facade is supplied that simplifies common use cases. Custom objects can be serialized without need for specifying mappings. Speed and low memory footprint are a crucial part of the design,making it suitable for large object graphs or systems with high message throughput. No information is duplicated that can be obtained via reflection. This results in XML that is easier to read for humans and more compact than native Java serialization. XStream serializes internal fields, including private and final. Supports non-public and inner classes. Classes are not required to have default constructor.Duplicate references encountered in the object-model will be maintained. Supports circular references. By implementing an interface, XStream can serialize directly to/from any tree structure (not just XML). Strategies can be registered allowing customization of how particular types are represented as XML. When an exception occurs due to malformed XML, detailed diagnostics are provided to help isolate and fix the problem.\r\n\r\nSecurity Fix(es):\r\n\r\nXStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.(CVE-2021-43859)","status":"published","published":"2022-11-11T11:05:23Z","modified":"2026-08-18T01:17:21.530551189Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:39.934788Z"},{"id":"RHLW-2026-c69885b4933c8262","title":"Lightwell Security Advisory: xstream 1.4.18.rhlw-00006","description":"Red Hat Lightwell has released com.thoughtworks.xstream:xstream 1.4.18.rhlw-00006 with backported fixes for CVE-2021-43859, CVE-2022-41966, and CVE-2024-47072.\n\nCVE-2021-43859: XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.\n\nCVE-2022-41966: XStream Denial of Service via stack overflow \n\nCVE-2024-47072: XStream is vulnerable to a Denial of Service attack due to stack overflow from a manipulated binary input stream\n\nThis patched artifact is a drop-in replacement for com.thoughtworks.xstream:xstream 1.4.18 from Maven Central.","status":"published","published":"2026-09-24T16:39:11Z","modified":"2026-10-27T04:13:06.183629728Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:58.636919Z"},{"id":"RHSA-2022:1420","title":"Red Hat Security Advisory: OpenShift Container Platform 3.11.685 security and bug fix update","status":"published","published":"2024-09-16T07:54:19Z","modified":"2026-10-02T10:01:50Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:09.077222Z"},{"id":"UBUNTU-CVE-2021-43859","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2022-02-01T12:15:00Z","modified":"2026-10-17T12:56:01.396178613Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:29.220315Z"},{"id":"BIT-jenkins-2021-43859","title":"Denial of Service by injecting highly recursive collections or maps in XStream","description":"XStream is an open source java library to serialize objects to XML and back again. Versions prior to 1.4.19 may allow a remote attacker to allocate 100% CPU time on the target system depending on CPU type or parallel execution of such a payload resulting in a denial of service only by manipulating the processed input stream. XStream 1.4.19 monitors and accumulates the time it takes to add elements to collections and throws an exception if a set threshold is exceeded. Users are advised to upgrade as soon as possible. Users unable to upgrade may set the NO_REFERENCE mode to prevent recursion. See GHSA-rmr5-cpv2-vgjf for further details on a workaround if an upgrade is not possible.","status":"published","published":"2025-05-26T07:13:32.699Z","modified":"2026-09-08T08:47:57.706547106Z","updated_at":"2026-11-02T15:28:31.42203Z"},{"id":"CLSA-2026-1784250511","title":"TuxCare security update for com.thoughtworks.xstream:xstream (2 CVEs)","description":"TuxCare rebuilt com.thoughtworks.xstream:xstream to address 2 CVEs. Fixed in 1.4.17-tuxcare.2.","status":"published","published":"2026-08-04T14:52:44Z","modified":"2026-11-02T19:45:46.552784835Z","updated_at":"2026-11-02T20:30:00.884471Z"},{"id":"DLA-2924-1","title":"libxstream-java - security update","status":"published","published":"2022-02-15T00:00:00Z","modified":"2026-03-09T01:23:20.984109Z","updated_at":"2026-11-02T15:46:11.189256Z"},{"id":"DLA-4001-1","title":"libxstream-java - security update","status":"published","published":"2024-12-21T00:00:00Z","modified":"2026-03-09T01:23:04.4796Z","updated_at":"2026-11-02T15:46:12.203458Z"},{"id":"openSUSE-SU-2022:0817-1","title":"Security update for xstream","description":"This update for xstream fixes the following issues:\n \n- CVE-2021-43859: Fixed a denial of service when unmarshalling highly recursive collections or maps (bsc#1195458).\n","status":"published","published":"2022-03-14T09:22:57Z","modified":"2026-02-04T02:43:31.23369Z","updated_at":"2026-11-02T16:58:32.653274Z"},{"id":"openSUSE-SU-2024:11809-1","title":"xstream-1.4.19-1.1 on GA media","description":"These are all security issues fixed in the xstream-1.4.19-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T03:15:38.440427Z","updated_at":"2026-11-02T16:58:35.195147Z"},{"id":"SUSE-SU-2022:0817-1","title":"Security update for xstream","description":"This update for xstream fixes the following issues:\n \n- CVE-2021-43859: Fixed a denial of service when unmarshalling highly recursive collections or maps (bsc#1195458).\n","status":"published","published":"2022-03-14T09:22:31Z","modified":"2026-02-04T02:47:01.468531Z","updated_at":"2026-11-02T15:53:50.066806Z"}]}}
