CVE-2026-53428

Source
https://cve.org/CVERecord?id=CVE-2026-53428
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-53428.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-53428
Aliases
Published
2026-06-29T18:52:36.199Z
Modified
2026-07-15T01:48:58.330693319Z
Severity
  • 6.9 (Medium) CVSS_V4 - CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:H CVSS Calculator
Summary
Unbounded memory allocation in highlight_lines range expansion in mdex
Details

Memory Allocation with Excessive Size Value vulnerability in leandrocp mdex allows an unauthenticated attacker to cause a denial of service through unbounded memory allocation.

comraknif::lumisadapter::LumisAdapter::parsehighlightlines in native/comraknif/src/lumisadapter.rs eagerly expands a user-controlled inclusive line range from a fenced code block's highlightlines decorator into a Vec<usize>, pushing one element per integer in the range with no upper bound on the range size. An attacker who can supply Markdown that an application renders with MDEx.tohtml/2 (for example a comment, chat message, or wiki page) can embed a code block whose info string is rust highlight_lines="1-100000000", forcing the native adapter to allocate roughly 8 bytes per line in the range.

A payload that differs by only a few bytes can therefore allocate hundreds of megabytes, and a sufficiently large range (for example 1-2000000000) exhausts host memory and aborts the BEAM, denying service to every user of the rendering process. The per-line write loop additionally tests membership with a linear scan over the same vector, degrading rendering to a quadratic cost even for ranges that do not immediately exhaust memory.

The vulnerable native code originally shipped inside mdex (in native/comraknif/src/lumisadapter.rs) and was later extracted into the separate mdexnative package (native/mdexnativenif/src/lumisadapter.rs), where it remains unpatched.

This issue affects mdex from 0.11.0 before 0.12.3, and mdex_native from 0.1.0 before 0.2.3.

Database specific
{
    "cwe_ids": [
        "CWE-789"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53428.json",
    "unresolved_ranges": [
        {
            "extracted_events": [
                {
                    "introduced": "a8407611715d1ead35fbcba79c72cef1b7df387b"
                },
                {
                    "fixed": "6ed94d905f97af188323f042698ae841c02293b4"
                },
                {
                    "introduced": "956528c5e31746253347029e810a969ab916fd27"
                },
                {
                    "fixed": "798a363b4339f6f7162ec8437c4c9f9b5ae6fbf3"
                }
            ],
            "source": "AFFECTED_FIELD"
        }
    ],
    "cna_assigner": "EEF"
}
References

Affected packages

Git / github.com/leandrocp/mdex

Affected ranges

Type
GIT
Repo
https://github.com/leandrocp/mdex
Events
Database specific
{
    "extracted_events": [
        {
            "introduced": "0.11.0"
        },
        {
            "fixed": "0.12.3"
        }
    ],
    "source": "AFFECTED_FIELD"
}
Type
GIT
Repo
https://github.com/leandrocp/mdex_native
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Fixed
Database specific
{
    "extracted_events": [
        {
            "introduced": "0.1.0"
        },
        {
            "fixed": "0.2.3"
        }
    ],
    "source": [
        "DESCRIPTION",
        "REFERENCES"
    ]
}

Affected versions

v0.*
v0.1.1
v0.1.2
v0.1.3
v0.1.4
v0.1.5
v0.11.0
v0.11.1
v0.11.2
v0.11.3
v0.11.4
v0.11.5
v0.11.6
v0.11.7
v0.12.0
v0.12.1
v0.12.2
v0.2.0
v0.2.1
v0.2.2

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-53428.json"