CVE-2026-14191 (GCVE-0-2026-14191)
Vulnerability from cvelistv5 – Published: 2026-07-01 02:41 – Updated: 2026-07-01 13:07
VLAI
Title
WinRAR / UnRAR RAR5 recovery-volume (.rev) out-of-bounds heap write in RecVolumes5::ReadHeader
Summary
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.
Severity
7.8 (High)
SSVC
Exploitation: none
Automatable: no
Technical Impact: total
CISA Coordinator (v2.0.3)
Assigner
References
2 references
| URL | Tags |
|---|---|
| https://www.rarlab.com/download.htm | patchvendor-advisory |
| https://nvd.nist.gov/vuln/detail/CVE-2023-40477 | related |
Impacted products
Credits
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-14191",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-07-01T13:07:23.906784Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-07-01T13:07:52.685Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"platforms": [
"Windows"
],
"product": "WinRAR",
"vendor": "RARLAB",
"versions": [
{
"lessThan": "7.23",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
},
{
"defaultStatus": "unaffected",
"platforms": [
"Windows",
"Linux",
"macOS"
],
"product": "RAR",
"vendor": "RARLAB",
"versions": [
{
"lessThan": "7.23",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
},
{
"defaultStatus": "unaffected",
"platforms": [
"Windows",
"Linux",
"macOS"
],
"product": "UnRAR",
"vendor": "RARLAB",
"versions": [
{
"lessThanOrEqual": "7.21",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
},
{
"defaultStatus": "unaffected",
"platforms": [
"Windows"
],
"product": "UnRAR.dll",
"vendor": "RARLAB",
"versions": [
{
"lessThan": "7.23",
"status": "affected",
"version": "0",
"versionType": "custom"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Arjun Basnet from Securin"
}
],
"descriptions": [
{
"lang": "en",
"value": "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\u0027s 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\u0027s 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 \u0027unrar t x.part1.rev\u0027, WinRAR \u0027Repair archive\u0027, 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."
}
],
"impacts": [
{
"capecId": "CAPEC-100",
"descriptions": [
{
"lang": "en",
"value": "Overflow Buffers - a controlled out-of-bounds heap write with attacker-controlled offset and attacker-influenced value, giving a memory-corruption primitive that can be used to crash the process (verified DoS) and, per the reporter\u0027s assessment mirroring the RAR3 sibling CVE-2023-40477, can plausibly be leveraged toward remote code execution in the context of the current user. Code execution was not demonstrated by the reporter."
}
]
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"format": "CVSS"
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-787",
"description": "CWE-787 Out-of-bounds Write",
"lang": "en",
"type": "CWE"
},
{
"cweId": "CWE-129",
"description": "CWE-129 Improper Validation of Array Index",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-07-01T02:42:05.524Z",
"orgId": "33c584b5-0579-4c06-b2a0-8d8329fcab9c",
"shortName": "securin"
},
"references": [
{
"name": "WinRAR / RAR 7.23 download (fixed release, 2026-06-30)",
"tags": [
"patch",
"vendor-advisory"
],
"url": "https://www.rarlab.com/download.htm"
},
{
"name": "CVE-2023-40477 - Sibling RAR3-path vulnerability fixed in WinRAR 6.23",
"tags": [
"related"
],
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-40477"
}
],
"source": {
"discovery": "EXTERNAL"
},
"timeline": [
{
"lang": "en",
"time": "2026-06-03T02:08:00.000Z",
"value": "Vulnerability reported to RARLAB (Eugene Roshal) by Securin"
},
{
"lang": "en",
"time": "2026-06-03T20:01:00.000Z",
"value": "RARLAB confirmed the findings after independent source review"
},
{
"lang": "en",
"time": "2026-06-30T07:51:00.000Z",
"value": "WinRAR / RAR 7.23 released with .rev processing fix"
},
{
"lang": "en",
"time": "2026-06-30T00:00:00.000Z",
"value": "CVE-2026-14191 reserved by Securin CNA"
}
],
"title": "WinRAR / UnRAR RAR5 recovery-volume (.rev) out-of-bounds heap write in RecVolumes5::ReadHeader"
}
},
"cveMetadata": {
"assignerOrgId": "33c584b5-0579-4c06-b2a0-8d8329fcab9c",
"assignerShortName": "securin",
"cveId": "CVE-2026-14191",
"datePublished": "2026-07-01T02:41:39.316Z",
"dateReserved": "2026-06-30T08:32:07.249Z",
"dateUpdated": "2026-07-01T13:07:52.685Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"epss": {
"cve": "CVE-2026-14191",
"date": "2026-07-01",
"epss": "0.00286",
"percentile": "0.20451"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2026-14191\",\"sourceIdentifier\":\"33c584b5-0579-4c06-b2a0-8d8329fcab9c\",\"published\":\"2026-07-01T04:16:58.647\",\"lastModified\":\"2026-07-01T14:16:39.587\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"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\u0027s 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\u0027s 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 \u0027unrar t x.part1.rev\u0027, WinRAR \u0027Repair archive\u0027, 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.\"}],\"affected\":[{\"source\":\"33c584b5-0579-4c06-b2a0-8d8329fcab9c\",\"affectedData\":[{\"vendor\":\"RARLAB\",\"product\":\"WinRAR\",\"defaultStatus\":\"unaffected\",\"platforms\":[\"Windows\"],\"versions\":[{\"version\":\"0\",\"lessThan\":\"7.23\",\"versionType\":\"custom\",\"status\":\"affected\"}]},{\"vendor\":\"RARLAB\",\"product\":\"RAR\",\"defaultStatus\":\"unaffected\",\"platforms\":[\"Windows\",\"Linux\",\"macOS\"],\"versions\":[{\"version\":\"0\",\"lessThan\":\"7.23\",\"versionType\":\"custom\",\"status\":\"affected\"}]},{\"vendor\":\"RARLAB\",\"product\":\"UnRAR\",\"defaultStatus\":\"unaffected\",\"platforms\":[\"Windows\",\"Linux\",\"macOS\"],\"versions\":[{\"version\":\"0\",\"lessThanOrEqual\":\"7.21\",\"versionType\":\"custom\",\"status\":\"affected\"}]},{\"vendor\":\"RARLAB\",\"product\":\"UnRAR.dll\",\"defaultStatus\":\"unaffected\",\"platforms\":[\"Windows\"],\"versions\":[{\"version\":\"0\",\"lessThan\":\"7.23\",\"versionType\":\"custom\",\"status\":\"affected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"33c584b5-0579-4c06-b2a0-8d8329fcab9c\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"REQUIRED\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}],\"ssvcV203\":[{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"ssvcData\":{\"timestamp\":\"2026-07-01T13:07:23.906784Z\",\"id\":\"CVE-2026-14191\",\"options\":[{\"exploitation\":\"none\"},{\"automatable\":\"no\"},{\"technicalImpact\":\"total\"}],\"role\":\"CISA Coordinator\",\"version\":\"2.0.3\"}}]},\"weaknesses\":[{\"source\":\"33c584b5-0579-4c06-b2a0-8d8329fcab9c\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-129\"},{\"lang\":\"en\",\"value\":\"CWE-787\"}]}],\"references\":[{\"url\":\"https://nvd.nist.gov/vuln/detail/CVE-2023-40477\",\"source\":\"33c584b5-0579-4c06-b2a0-8d8329fcab9c\"},{\"url\":\"https://www.rarlab.com/download.htm\",\"source\":\"33c584b5-0579-4c06-b2a0-8d8329fcab9c\"}]}}",
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-14191\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-07-01T13:07:23.906784Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-07-01T13:07:31.127Z\"}}], \"cna\": {\"title\": \"WinRAR / UnRAR RAR5 recovery-volume (.rev) out-of-bounds heap write in RecVolumes5::ReadHeader\", \"source\": {\"discovery\": \"EXTERNAL\"}, \"credits\": [{\"lang\": \"en\", \"type\": \"finder\", \"value\": \"Arjun Basnet from Securin\"}], \"impacts\": [{\"capecId\": \"CAPEC-100\", \"descriptions\": [{\"lang\": \"en\", \"value\": \"Overflow Buffers - a controlled out-of-bounds heap write with attacker-controlled offset and attacker-influenced value, giving a memory-corruption primitive that can be used to crash the process (verified DoS) and, per the reporter\u0027s assessment mirroring the RAR3 sibling CVE-2023-40477, can plausibly be leveraged toward remote code execution in the context of the current user. Code execution was not demonstrated by the reporter.\"}]}], \"metrics\": [{\"format\": \"CVSS\", \"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 7.8, \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H\"}}], \"affected\": [{\"vendor\": \"RARLAB\", \"product\": \"WinRAR\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"lessThan\": \"7.23\", \"versionType\": \"custom\"}], \"platforms\": [\"Windows\"], \"defaultStatus\": \"unaffected\"}, {\"vendor\": \"RARLAB\", \"product\": \"RAR\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"lessThan\": \"7.23\", \"versionType\": \"custom\"}], \"platforms\": [\"Windows\", \"Linux\", \"macOS\"], \"defaultStatus\": \"unaffected\"}, {\"vendor\": \"RARLAB\", \"product\": \"UnRAR\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"versionType\": \"custom\", \"lessThanOrEqual\": \"7.21\"}], \"platforms\": [\"Windows\", \"Linux\", \"macOS\"], \"defaultStatus\": \"unaffected\"}, {\"vendor\": \"RARLAB\", \"product\": \"UnRAR.dll\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"lessThan\": \"7.23\", \"versionType\": \"custom\"}], \"platforms\": [\"Windows\"], \"defaultStatus\": \"unaffected\"}], \"timeline\": [{\"lang\": \"en\", \"time\": \"2026-06-03T02:08:00.000Z\", \"value\": \"Vulnerability reported to RARLAB (Eugene Roshal) by Securin\"}, {\"lang\": \"en\", \"time\": \"2026-06-03T20:01:00.000Z\", \"value\": \"RARLAB confirmed the findings after independent source review\"}, {\"lang\": \"en\", \"time\": \"2026-06-30T07:51:00.000Z\", \"value\": \"WinRAR / RAR 7.23 released with .rev processing fix\"}, {\"lang\": \"en\", \"time\": \"2026-06-30T00:00:00.000Z\", \"value\": \"CVE-2026-14191 reserved by Securin CNA\"}], \"references\": [{\"url\": \"https://www.rarlab.com/download.htm\", \"name\": \"WinRAR / RAR 7.23 download (fixed release, 2026-06-30)\", \"tags\": [\"patch\", \"vendor-advisory\"]}, {\"url\": \"https://nvd.nist.gov/vuln/detail/CVE-2023-40477\", \"name\": \"CVE-2023-40477 - Sibling RAR3-path vulnerability fixed in WinRAR 6.23\", \"tags\": [\"related\"]}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"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\u0027s 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\u0027s 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 \u0027unrar t x.part1.rev\u0027, WinRAR \u0027Repair archive\u0027, 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.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-787\", \"description\": \"CWE-787 Out-of-bounds Write\"}, {\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-129\", \"description\": \"CWE-129 Improper Validation of Array Index\"}]}], \"providerMetadata\": {\"orgId\": \"33c584b5-0579-4c06-b2a0-8d8329fcab9c\", \"shortName\": \"securin\", \"dateUpdated\": \"2026-07-01T02:42:05.524Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2026-14191\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-07-01T13:07:52.685Z\", \"dateReserved\": \"2026-06-30T08:32:07.249Z\", \"assignerOrgId\": \"33c584b5-0579-4c06-b2a0-8d8329fcab9c\", \"datePublished\": \"2026-07-01T02:41:39.316Z\", \"assignerShortName\": \"securin\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
}
}
Loading…
Loading…
Experimental. This forecast is provided for visualization only and may change without notice. Do not use it for operational decisions.
Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…