Junrar: RarVM VM_JMP maxOpCount bypass causes infinite CPU loop during RAR4 extraction
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| junrar | junrar | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Junrar | Junrar |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-h9h9-2rmf-rvhp | Junrar: RarVM VM_JMP maxOpCount bypass causes infinite CPU loop during RAR4 extraction |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.402% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Junrar
Junrar junrar |
|
| Vendors & Products |
Junrar
Junrar junrar |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Junrar is an open source Java RAR archive library. Prior to 7.6.1, RarVM.ExecuteCode in src/main/java/com/github/junrar/unpack/vm/RarVM.java can repeatedly execute a VM_JMP instruction whose target is greater than or equal to the prepared program's codeSize. The setIP() function returns success without changing the instruction pointer or decrementing maxOpCount, and the jump handler continues before loop-end accounting, leaving both values unchanged. A crafted RAR4 archive can therefore keep an extraction thread in an infinite CPU loop and exhaust archive-processing worker capacity. The RAR virtual machine does not expose native process execution, so the supported impact is availability loss rather than code execution. This issue is fixed in version 7.6.1. | |
| Title | Junrar: RarVM VM_JMP maxOpCount bypass causes infinite CPU loop during RAR4 extraction | |
| Weaknesses | CWE-835 | |
| References |
| |
| Metrics |
cvssV3_1
|