Categories
CVE-2026-97370 high CVSS 7.5

Vulnerability in com.github.junrar:junrar (CVE-2026-97370)

Summary

Vulnerability in com.github.junrar:junrar (CVE-2026-97370). Risk of unauthorized operations or information disclosure. Exploitable via RarVM.ExecuteCode. Mitigation: upgrade to 7.6.1 or later.

Original description

The description as published by the source.

Summary

Junrar's RAR virtual machine can be forced into a deterministic infinite loop while extracting a crafted RAR4 archive. The RarVM.ExecuteCode loop is intended to be bounded by maxOpCount, but jump instructions can bypass this limit when setIP() is called with a target instruction pointer greater than or equal to codeSize.

An unauthenticated attacker who can provide a RAR archive to an application using Junrar.extract() can cause the extraction thread to spin forever, consuming CPU and blocking the process. The issue is a denial of service vulnerability, not remote code execution.

Details

The root cause is in src/main/java/com/github/junrar/unpack/vm/RarVM.java.

setIP() returns early when the target IP is outside the prepared VM program:

private boolean setIP(int ip) {
    if ((ip) >= codeSize) {
        return (true);
    }

    if (--maxOpCount <= 0) {
        return (false);
    }

    IP = ip;
    return true;
}

When ip >= codeSize, this branch:

  • does not update IP;
  • does not decrement maxOpCount;
  • returns true, so callers treat it as success.

The VM_JMP handler and the other jump-like handlers discard the return value of setIP() and immediately continue the main VM loop:

case VM_JMP:
    setIP(getValue(false, mem, op1));
    continue;

Because of the continue, execution also skips the loop-end accounting:

IP++;
--maxOpCount;

As a result, a VM program containing a single `VM_JMP…

Source: GitHub Security Advisories (Global) NVD GitHub Advisory

Auto-generated summary

Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.

A vulnerability tracked as CVE-2026-97370 has been found in com.github.junrar:junrar.
Attackers can target a specific entry point like RarVM.ExecuteCode over the network to misuse the product.
Risk of unauthorized operations or information disclosure. CVSS score: 7.5/10.
What to do: upgrade com.github.junrar:junrar to 7.6.1 or later.
If unsure, ask your IT team or search "com.github.junrar:junrar CVE-2026-97370" on the vendor's site.

CVE-2026-97370 (com.github.junrar:junrar) — CWE-835 / CVSS v3 7.5
Attack vector: remote (network-reachable) / unauthenticated / no user interaction
Attack surface: RarVM.ExecuteCode / maxOpCount / codeSize / true
Patched: 7.6.1 — apply immediately
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.

❓ What is the problem

A vulnerability (CWE-835) exists in com.github.junrar:junrar. Attackers reach the vulnerable code path via RarVM.ExecuteCode without authentication.

📍 Affected scope

Check the vendor advisory for the affected versions of com.github.junrar:junrar. Attack surface: RarVM.ExecuteCode / maxOpCount / codeSize / true.

🔥 Severity

Severity: High (CVSS 7.5/10). Risk of unauthorized operations or information disclosure.

🔧 How to fix

Update to 7.6.1.

🛡️ Workaround

Until the patch is applied: disable the affected feature, apply WAF rules, or restrict access via network ACLs.

🔍 Detection

Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Audit SBOM/dependencies to find affected services.

Response actions

Concrete steps and command examples for SOC/SRE teams to execute in order

  1. 1
    Identify exposure identify
    Audit SBOM/dependencies for affected components.

    資産台帳・SBOM・依存マニフェストで com.github.junrar:junrar を使っているサービスとバージョンを洗い出す。

  2. 2
    Apply patch patch
    Upgrade com.github.junrar:junrar to 7.6.1

    ステージング環境で 7.6.1 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。

  3. 3
    Post-deployment verification verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。

Affected packages

maven com.github.junrar:junrar
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"7.6.1"}]}]

References

We use cookies for analytics and ad measurement. This setting applies to all Game co., Ltd. sites. Details