CVE-2026-59140
N/A
Summary
Data::SortedSet::Shared versions before 0.03 for Perl allow an out-of-bounds read via unvalidated node indices in the rank and min/max query paths.
The attach-time validator ss_validate_header bounds only the root index against the node pool (node_capacity). The order-statistics and min/max queries then follow children[], leftmost and rightmost node indices read raw from the mmap'd segment without bounding them against node_capacity. A full structural check (ss_validate_tree) exists but runs only via an explicit validate method, not on attach.
A local peer that can write the backing file can leave the header valid while poisoning the tree links, so the next rank, min or max query dereferences an out-of-bounds node index, reading adjacent memory or crashing the process.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| EGOR | Data::SortedSet::Shared | 0 < 0.03 | affected |
Weaknesses
- CWE-125: CWE-125 Out-of-bounds Read
Workarounds
For deployments that cannot upgrade to 0.03, place the backing file in a directory writable only by the owning user, so a local peer cannot tamper with the tree the query paths traverse.
References
- https://metacpan.org/release/EGOR/Data-SortedSet-Shared-0.03/diff/EGOR/Data-SortedSet-Shared-0.02#sortedset.h
- https://metacpan.org/release/EGOR/Data-SortedSet-Shared-0.03/changes
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.