Description
An out-of-bounds heap write exists in the RAR5 recovery-volume (.rev) parser in WinRAR and UnRAR (RecVolumes5::ReadHeader in recvol5.cpp). The RecItems vector is sized only when the first .rev file in a set is processed; subsequent .rev files supply an independent RecNum value that is validated against that file's own TotalCount field but never against the actual size of RecItems. A crafted set of two or more .rev files can therefore write an attacker-controlled 32-bit value (the header's RevCRC field) to RecItems[RecNum] at an attacker-controlled offset up to 65534 * sizeof(RecVolItem) bytes past the allocation, corrupting adjacent heap objects. Triggering requires the victim to run a recovery/test operation on an attacker-supplied .rev set (for example 'unrar t x.part1.rev', WinRAR 'Repair archive', or auto-recovery when extracting a volume set with a missing .rar part). This is the RAR5-path sibling of CVE-2023-40477 (which was fixed in the RAR3 path only in WinRAR 6.23). Fixed in WinRAR / RAR 7.23.
Problem types
CWE-129 Improper Validation of Array Index
Product status
Any version before 7.23
Any version before 7.23
Any version
Any version before 7.23
Timeline
| 2026-06-03: | Vulnerability reported to RARLAB (Eugene Roshal) by Securin |
| 2026-06-03: | RARLAB confirmed the findings after independent source review |
| 2026-06-30: | WinRAR / RAR 7.23 released with .rev processing fix |
| 2026-06-30: | CVE-2026-14191 reserved by Securin CNA |
Credits
Arjun Basnet from Securin
References
www.rarlab.com/download.htm (WinRAR / RAR 7.23 download (fixed release, 2026-06-30))
nvd.nist.gov/vuln/detail/CVE-2023-40477 (CVE-2023-40477 - Sibling RAR3-path vulnerability fixed in WinRAR 6.23)
www.securin.io/...ounds-heap-write-in-recvolumes5-readheader