{"id":"CVE-2026-54341","summary":"Dragonfly: RESTORE operations may crash the server","details":"Dragonfly is an in-memory data store built for modern application workloads. Prior to 1.39.0, a crafted RESTORE payload triggers an out-of-bounds read in DragonflyDB's listpack collection loaders, crashing the entire server process (SIGSEGV). Because DragonflyDB requires no authentication by default and RESTORE is a normal keyspace command, an unauthenticated remote attacker can crash the server with a single ~24-byte command — a remote, repeatable denial of service. This vulnerability is fixed in 1.39.0.","aliases":["GHSA-cwjr-j869-h8q9"],"modified":"2026-07-15T19:48:12.380987Z","published":"2026-06-26T16:42:15.298Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-125"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54341.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54341.json"},{"type":"ADVISORY","url":"https://github.com/dragonflydb/dragonfly/security/advisories/GHSA-cwjr-j869-h8q9"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54341"},{"type":"FIX","url":"https://github.com/dragonflydb/dragonfly/pull/7502"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/dragonflydb/dragonfly","events":[{"introduced":"0"},{"fixed":"699862e5da7cb29bf5642a1da422c4c78cefae38"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"1.39.0"}],"source":"AFFECTED_FIELD"}}],"versions":["v1.38.0","v1.37.0","v1.36.0","i1.36.3","i1.36.2","v1.32.0","i1.36.1","v1.35.0","v1.34.0","i1.33.3","v1.33.0","v1.31.0","v1.30.0","v1.29.0","v1.28.0","v1.27.0","v1.26.0","v1.24.0","v1.23.0","v1.22.0","v1.21.0","v1.20.0","v1.19.0","v1.18.0","v1.17.0","v1.16.0","v1.15.0","w0.1","v1.14.0","v1.13.0","v1.12.0","v1.11.0","v1.9.0","v1.8.0","v1.7.1","v1.7.0","v1.6.0","v1.5.0","v1.4.0","v1.3.0","v1.2.1","v1.2.0","v1.1.2","v1.1.1","v1.1.0","v1.0.0","v0.17.0","v0.16.0","v0.15.0","v0.14.0","v0.13.1","v0.13.0","v0.12.0","v0.11.0","v0.10.0","v0.9.1","v0.9.0","v0.8.0","v0.7.0","v0.6.0","v0.5.0","v0.4.0","v0.3.1","v0.3.0","v0.3.0-alpha","v0.2.0","v0.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54341.json","vanir_signatures_modified":"2026-07-15T19:48:12Z","vanir_signatures":[{"digest":{"function_hash":"314535243576828160326582957512252429734","length":1444},"id":"CVE-2026-54341-1c5d1fca","signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage.cc","function":"TieredStorage::GetStats"},"deprecated":false},{"id":"CVE-2026-54341-2cc9f536","signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage.h"},"deprecated":false,"digest":{"line_hashes":["72330716941337672439642086198388167747","305724297117566624000226421466586871424","301886186973092707503264372123866764083","337605533298019380444352843243321804191"],"threshold":0.9}},{"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["314217375604373319611727092072920177928","9928718122752498582370258335797722291","96345146307626492672495072611903882642","180495432544999430620721622020122342273","255244306476759855872227665665074116046","678756064203060371631100204329406723","265905144783707963370875508744935666038","196003672809639530197397342450939447313","62597792061550976383823711674428741275","19712044742600886156446797421618225889","190530283109255882916825270433934532265","18016289501325368862770185275807414907","312060651282379576256753354808367431695","97237139939484532426971518878267651737","24140913771738399176463053710259334589","162293581718887265834831559309808932889","212009960248764319749362338338192298723","44504585306419416911068617448997152494"]},"id":"CVE-2026-54341-350ce1a9","signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/main_service.cc"}},{"deprecated":false,"digest":{"function_hash":"315615213830427808667024588438803091527","length":146},"id":"CVE-2026-54341-37bc4a5b","signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage.cc","function":"TieredStorage::WriteDepthUsage"}},{"target":{"file":"src/server/tiering/disk_storage.h"},"deprecated":false,"digest":{"line_hashes":["76740479457152715914044761957168020681","80855476909618232281317927028144049112","253672013635405800075654322418308790180","228434999037152626189098363936395091512","54207933727048536967886418844411698200","42955811310543200026381818932340877397","106796172762433167705909713780701133798","314033370061671773643525985821703691923"],"threshold":0.9},"id":"CVE-2026-54341-3a910544","signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38"},{"signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/server_family.cc"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["238082341870349657608342323994834598118","108513258124786547543236428807385818796","178929906319942458118748713426508476675","204229506162005968873190889761891016943"]},"id":"CVE-2026-54341-5236d58a"},{"signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiering/disk_storage.cc","function":"DiskStorage::Stash"},"deprecated":false,"digest":{"function_hash":"137924072164227250593442897989038710141","length":899},"id":"CVE-2026-54341-609c3ce5","signature_type":"Function"},{"signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/server_family.cc","function":"ServerFamily::FormatInfoMetrics"},"deprecated":false,"digest":{"function_hash":"258282438242363042502248068108896148616","length":21020},"id":"CVE-2026-54341-7ee41002"},{"target":{"file":"src/server/tiered_storage.cc","function":"TieredStorage::UpdateFromFlags"},"deprecated":false,"digest":{"function_hash":"172181600639013762952347930263040277173","length":619},"id":"CVE-2026-54341-9a45567a","signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38"},{"deprecated":false,"digest":{"function_hash":"265619614881816360110508985548304566363","length":1127},"id":"CVE-2026-54341-a3c5356a","signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage.cc","function":"TieredStorage::RunOffloading"}},{"digest":{"line_hashes":["212321994119432767915284444659553434002","224132874624714839442036909251764687591","234673624967945548018794972590363395875"],"threshold":0.9},"id":"CVE-2026-54341-a8e1ca64","signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/stats.h"},"deprecated":false},{"deprecated":false,"digest":{"function_hash":"44913157546618638719807233645063867303","length":740},"id":"CVE-2026-54341-ac459f2f","signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/main_service.cc","function":"Service::RegisterTieringFlags"}},{"source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/stats.cc","function":"operator+="},"deprecated":false,"digest":{"function_hash":"233685384528980102207008124927312459144","length":855},"id":"CVE-2026-54341-b7396f21","signature_type":"Function","signature_version":"v1"},{"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["204299046314674331792882363017406497304","158924515722743269363763200939083992783","82689579056269411708312606049670446895","201443244775567408930707488167974148815","40003371185379435429321130449951891354","204442924078999055350606132656535415861","242573104718098727294390220936328786415","258966855784621988475262146501688442602","244088638877577283168587308641362693821","79366908798438592229478899348762433174","111314300379304664677622424960244554391","214006673486739887471258815661668878799","107938316201188865257517889625240255045","89753359184503986759353004561841993619","324426139084509976368211072832127318274","114900653113727857487262046160046480460","176179166684163772753385920198166247344","41514422081257578780202850924454500556","253825600401062313564189029311156487500","292864010134913849816217365806297954845","123527379692041095888830946917080395982","174726985476318203126081331205572434342","310025079890300494196665015763214016149","65886753606739664310412515323573629790","73507197420247352115706339541987009223","169869101367330331781562950460449757452","268432887126767435472945581048867277376","133945796836425032992099457943952957521","91249180277264243518914076244814566250","128547333297616530288233748779940988418","57344214655120109352120818054418306754","181969858285521117399115081814439867678","308577877238099659990266087511187241491","295654504987900906481850970232943342066","229700076255208246156030627230151495525","247093707792698113896396966309663110878","78467170303134408742110511322957745045","136026625433387027240559021393150285505","98298561092685492917587961266656250170","221526233947258089232297017654487326613","32553566257574407804629769746820915982","233867568287184348931661629026560820769","57528865708991167933261337599173492000","145368120370928879534271651980803973966","166015770828027978688659619805734098727"]},"id":"CVE-2026-54341-c2019d2f","signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage.cc"}},{"signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage.cc","function":"TieredStorage::StashPrimeValue"},"deprecated":false,"digest":{"function_hash":"152280029533666255939295358084917106299","length":1192},"id":"CVE-2026-54341-c25fcd1d","signature_type":"Function"},{"digest":{"function_hash":"19804557209684465319590558590663489997","length":820},"id":"CVE-2026-54341-d1d3cc99","signature_type":"Function","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage_test.cc","function":"TEST_F"},"deprecated":false},{"source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"function":"TieredStorage::GetMutableFlagNames","file":"src/server/tiered_storage.cc"},"deprecated":false,"digest":{"function_hash":"163121537507129669611878880114533693972","length":324},"id":"CVE-2026-54341-d64083f9","signature_type":"Function","signature_version":"v1"},{"deprecated":false,"digest":{"line_hashes":["187005534054217759471639568117038911388","12981573416696419527738008644735009674","260645882547732299821990123779296230598","199060797357909310827385969591665168636","47851374557074031343854221474034677943","102510620512678021567467905169175078506","34159513987552894608256019219911911572","11025248252304379531509313485613208399"],"threshold":0.9},"id":"CVE-2026-54341-db289985","signature_type":"Line","signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/stats.cc"}},{"source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiered_storage_test.cc"},"deprecated":false,"digest":{"line_hashes":["270992223335165046351723035774961475261","37839230602491964846203850970694764452","28010352643563608939736360738447270605","270540573325377987640985126714250967283","88090703307350436720162210761463577700","305718450429965326620918951844191340049","245541448299942604419905626773033776547","118443473305762048788242841866352997515","183835101854707452904419805163458821356","86649802241171837829965370633477623842","297478325296926165313176636757560445573","34669749064383752350586203279522814718","192936562340160915814845614799149183395","290792125078810679968309799786629595047","112247207014100299317135204660698244356","239757435087245089784392007300738103452"],"threshold":0.9},"id":"CVE-2026-54341-e00bc828","signature_type":"Line","signature_version":"v1"},{"signature_version":"v1","source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiering/disk_storage.cc"},"deprecated":false,"digest":{"line_hashes":["117656873180709871159158248958443218935","241494009771845302327049275009305548819","215041942668651200394289572644018356220","49245303080828283095049708248750023488","18868233054884042147282718253768306958","149438181851158720069849244675939490253","119581491560761018247405816998971043832","114168558463474301120442229285913674830","339975699991640392464769545415473952644","44450241060473234481165983207217505772"],"threshold":0.9},"id":"CVE-2026-54341-f4137cf9","signature_type":"Line"},{"source":"https://github.com/dragonflydb/dragonfly/commit/699862e5da7cb29bf5642a1da422c4c78cefae38","target":{"file":"src/server/tiering/disk_storage.cc","function":"DiskStorage::GetStats"},"deprecated":false,"digest":{"function_hash":"75739919011911786061895722058176811643","length":206},"id":"CVE-2026-54341-feaa2f66","signature_type":"Function","signature_version":"v1"}]}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}