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.
{ "vanir_signatures": [ { "id": "CVE-2021-43859-29d87ff6", "digest": { "length": 181.0, "function_hash": "55566688760790417229342517075763677048" }, "signature_type": "Function", "target": { "file": "xstream/src/test/com/thoughtworks/acceptance/SecurityVulnerabilityTest.java", "function": "testInstanceOfVoid" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-3b92b93a", "digest": { "length": 158.0, "function_hash": "261717738691877522929827956336707666449" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/converters/collections/CollectionConverter.java", "function": "addCurrentElementToCollection" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-42b4ae14", "digest": { "length": 381.0, "function_hash": "17231138287832600381894592100287068069" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/core/TreeUnmarshaller.java", "function": "convert" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-43f10a94", "digest": { "length": 650.0, "function_hash": "220166040034801707177840403453687177859" }, "signature_type": "Function", "target": { "file": "xstream/src/test/com/thoughtworks/acceptance/SecurityVulnerabilityTest.java", "function": "testCannotInjectEventHandler" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-48fd1814", "digest": { "line_hashes": [ "37669725065981372541361920149060037669", "1754229239276929498699274070455340911", "41982352291054190134426946505239413600", "339132426552016436555085584248404447229", "281190335896921026067654418042948691705", "101836451350065470669588115209640466933", "170069226330896549956587004495602417294", "175405664480641811482846628989242555461", "308344043568311556500843217578373648934", "214661633136529325303486917787961611567", "57524199966063753519088560374134026781", "63361542330210864932936498280080202040", "121377978789604838791055385342124703054", "120564178264636159261842547107268022221", "280309282135332622366291820899588071183", "116140396242623306064878654562145661014", "228659153108235947882753463685898110017", "253465008515736530894371217708547114895", "47604041726619113582236911670478212984", "157827691179106628380218623395528602742", "299357159731611816879190520786090623494", "263325449489108397308033639618897227089", "195855868307017984720518213082419999218", "157827691179106628380218623395528602742", "56570557617033010041633030400660432580", "266269599569454697175169268514228635384" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/test/com/thoughtworks/acceptance/SecurityVulnerabilityTest.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-59287a06", "digest": { "length": 372.0, "function_hash": "158675721028694727290893110113569592667" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/XStream.java", "function": "unmarshal" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-827b0ed4", "digest": { "length": 219.0, "function_hash": "86104287393050438777889317149321611565" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/converters/collections/MapConverter.java", "function": "putCurrentEntryIntoMap" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-840ebf27", "digest": { "line_hashes": [ "47133092775335648767215388072869838081", "72897891070941714057763968897150290546", "204876188397446628625129180757218716667", "183977537466193036774603040383124982900", "108738211081595398246856293798472960621", "17550906770456504535387592149065180578", "160816637933070719777862874531377453485", "131320530687662887544912643709547885866", "79469178477997099640743731152801113345" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/converters/extended/NamedMapConverter.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-9f4d057d", "digest": { "line_hashes": [ "7616263090923437985525346265549616761", "211219839203299185987365307554810409985", "73721228261296255058296875540290052237", "239913871774152437040395752063489313149", "117725265296903224689269951407431455617", "126617756455122379474158532832345634375", "158235987049869476657084451570586380240", "314118849962306354916524331560040293068", "96433297052028480260787407611872064849", "325820611125133184921877174183212096326", "275047211673991781190008335997426805456", "251899931567808305004438430281872370011", "177754559542579598598790658770667215612", "118738670761640002657491233549629791713", "71362147945938633015783245649742152827", "239637841955745921799253626664476578801", "136908090792826903881571180858786345652", "226208401357142230571642567540990195204", "5923312382624037816122342231039016977", "256450194889914305419909032943252724007", "209578339882724276781126381994571211439", "207821519896740168085970131722419024131", "89998112668629298309028616244523277223", "257848222184230265269703082711942417201", "231035764628361720499571828605484840546", "48705185870131617258729178622391399075", "334353687146338771572110171878246600462", "164655022164759611606439376066928116229", "38013853609415735731977596616628687320" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/XStream.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-ad6928e4", "digest": { "length": 1357.0, "function_hash": "228474360994162782889542199712320720945" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/converters/extended/NamedMapConverter.java", "function": "populateMap" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-ad72fdf2", "digest": { "line_hashes": [ "67983786004786075010774811532640513342", "155251688185425872193164153142665759940", "180982352636348001737525535511897856621", "291635795756997543440780842469637458131", "100411840036841395080916223528854409368", "45659907922294160967612934064248224018", "31472221394269137905746344083408247215", "88563598898606841684968123180300453216" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/converters/collections/MapConverter.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-b91b8836", "digest": { "line_hashes": [ "185869447222012862197413743734267332963", "274937438635320053675547534042926965660", "212113714018905300703044115447665097447", "315082099377130877878551267537102060517", "322595832639141750214961352993266288428", "288516566081390833032506510066468270740", "6674929763605018183272915908570643204", "256753108423566523410138376942892651005" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/converters/collections/CollectionConverter.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-ccb9a04c", "digest": { "line_hashes": [ "136451740817690776813850310762997082518", "105753953192027108849418635246114421000", "118882738501084926826075990972404281301", "212020063483191151362987575288808695462", "287333414921625036090543832290154043373", "9891789946521726045761755493407333519", "5559154755073053156556721280319387054", "238112864466872781268528486106920449733" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/core/TreeUnmarshaller.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-cf16e600", "digest": { "length": 219.0, "function_hash": "11964886622017048364241710368819996484" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/XStream.java", "function": "readFromStream" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-df4b16d4", "digest": { "length": 873.0, "function_hash": "12709619694192487888878944821281014679" }, "signature_type": "Function", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/XStream.java", "function": "createObjectInputStream" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-e2dd41b1", "digest": { "length": 401.0, "function_hash": "253499341416318301251134402216259344937" }, "signature_type": "Function", "target": { "file": "xstream/src/test/com/thoughtworks/acceptance/SecurityVulnerabilityTest.java", "function": "testCannotUseJaxwsInputStreamToDeleteFile" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" }, { "id": "CVE-2021-43859-f898dd1d", "digest": { "line_hashes": [ "302436115647464791492807424592955265526", "20337160572719266553945974133231939115", "100606639916437884206076948162615070323" ], "threshold": 0.9 }, "signature_type": "Line", "target": { "file": "xstream/src/java/com/thoughtworks/xstream/security/ForbiddenClassException.java" }, "deprecated": false, "signature_version": "v1", "source": "https://github.com/x-stream/xstream/commit/e8e88621ba1c85ac3b8620337dd672e0c0c3a846" } ] }