{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2026-107574", "assignerOrgId": "ceab7361-8a18-47b1-92ba-4d7d25f6715a", "state": "PUBLISHED", "assignerShortName": "GitLab", "dateReserved": "2026-10-08T10:51:35.642Z", "datePublished": "2026-10-08T11:46:26.206Z", "dateUpdated": "2026-10-08T11:46:26.206Z" }, "containers": { "cna": { "title": "Inefficient Algorithmic Complexity in hMailServer", "descriptions": [ { "lang": "en", "value": "Inefficient algorithmic complexity in the JSON reader of Progressive Robot hMailServer allows a remote unauthenticated attacker to make the mail services unavailable. Reading a JSON object kept the first of each duplicated member name by searching the members already read, so an object of N distinct member names cost O(N^2): 1 MB took 8.9 seconds and 4 MB took 300 seconds against the affected code. A remote attacker reaches the reader without an account by mailing a crafted TLS-RPT report (up to 16 MB after decompression) to a hosted domain's published report mailbox, which is read on a delivery thread; a few such reports hold every delivery thread (ten by default), so the server delivers no mail, local or outbound, for over an hour per report. A signed-in account reaches the same 16 MB body through the webmail's own REST routes, holding the REST API's own worker threads. Where no report mailbox is configured, the unauthenticated REST sign-in routes that read a JSON body are capped at 64 KB and are not affected." } ], "affected": [ { "vendor": "Progressive Robot Ltd", "product": "hMailServer", "repo": "https://gitlab.com/hmailserver/hmailserver", "versions": [ { "version": "6.2.28", "status": "affected", "lessThan": "6.3.6", "versionType": "semver" } ], "defaultStatus": "unaffected" } ], "problemTypes": [ { "descriptions": [ { "lang": "en", "description": "CWE-407: Inefficient Algorithmic Complexity", "cweId": "CWE-407", "type": "CWE" } ] } ], "references": [ { "url": "https://gitlab.com/hmailserver/hmailserver/-/work_items/76" }, { "url": "https://gitlab.com/hmailserver/hmailserver/-/releases/v6.3.6" } ], "metrics": [ { "format": "CVSS", "scenarios": [ { "lang": "en", "value": "GENERAL" } ], "cvssV3_1": { "version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH", "baseScore": 7.5, "baseSeverity": "HIGH" } } ], "solutions": [ { "lang": "en", "value": "Upgrade to hMailServer 6.3.6, which keeps the member names seen in a hash set, so a JSON object is read in one pass. Until then, where domain reports are on, move the report mailbox off a hosted domain; restart the service to end a busy thread." } ], "credits": [ { "lang": "en", "value": "Found in the hMailServer project's own security review (Progressive Robot Ltd)", "type": "finder" } ], "providerMetadata": { "orgId": "ceab7361-8a18-47b1-92ba-4d7d25f6715a", "shortName": "GitLab", "dateUpdated": "2026-10-08T11:46:26.206Z" } } } }