CVE-2026-104658 (GCVE-0-2026-104658)
Vulnerability from cvelistv5
Published
2026-10-08 10:52
Modified
2026-10-08 17:35
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-807 - Reliance on Untrusted Inputs in a Security Decision
Summary
The Linux live-update apply helper (hmailserver-update) of Progressive Robot hMailServer 6.3.4 and 6.3.5 runs as root on a request file written by the unprivileged hmailserver service account, and took from that request the program used to verify an AppImage update's signature and the systemd unit to stop before reading the service account's files. An attacker who already runs code as the hmailserver service account, for example through another flaw in the mail server, can therefore have arbitrary code executed as root, on any Linux installation where the live update's path unit is active - the default for the project's .deb and .rpm packages - and on AppImage installations run under that unit.
References
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| Progressive Robot Ltd | hMailServer |
Version: 6.3.4 ≤ |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-104658",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-08T17:35:35.801848Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-08T17:35:46.645Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "hMailServer",
"repo": "https://gitlab.com/hmailserver/hmailserver",
"vendor": "Progressive Robot Ltd",
"versions": [
{
"lessThan": "6.3.6",
"status": "affected",
"version": "6.3.4",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Found in the hMailServer project\u0027s own security review (Progressive Robot Ltd)"
}
],
"descriptions": [
{
"lang": "en",
"value": "The Linux live-update apply helper (hmailserver-update) of Progressive Robot hMailServer 6.3.4 and 6.3.5 runs as root on a request file written by the unprivileged hmailserver service account, and took from that request the program used to verify an AppImage update\u0027s signature and the systemd unit to stop before reading the service account\u0027s files. An attacker who already runs code as the hmailserver service account, for example through another flaw in the mail server, can therefore have arbitrary code executed as root, on any Linux installation where the live update\u0027s path unit is active - the default for the project\u0027s .deb and .rpm packages - and on AppImage installations run under that unit."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 7.8,
"baseSeverity": "HIGH",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"format": "CVSS",
"scenarios": [
{
"lang": "en",
"value": "GENERAL"
}
]
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-807",
"description": "CWE-807: Reliance on Untrusted Inputs in a Security Decision",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-08T10:52:45.630Z",
"orgId": "ceab7361-8a18-47b1-92ba-4d7d25f6715a",
"shortName": "GitLab"
},
"references": [
{
"url": "https://gitlab.com/hmailserver/hmailserver/-/work_items/58"
},
{
"url": "https://gitlab.com/hmailserver/hmailserver/-/releases/v6.3.6"
}
],
"solutions": [
{
"lang": "en",
"value": "Upgrade to hMailServer 6.3.6, whose helper takes the unit and the AppImage only from its own root-owned command line, refuses an AppImage request where that names none, confirms that the server has stopped, and verifies, runs and installs only copies it made after the stop, readable by root alone until they have verified. Install 6.3.6 with the package manager (apt or dnf) rather than through the live update. An AppImage run under the path unit keeps the helper script copied to /usr/lib/hmailserver/ when its update units were installed, which the AppImage\u0027s own update does not replace: copy 6.3.6\u0027s script there and give it --image in a drop-in for hmailserver-update.service. Until then: systemctl disable --now hmailserver-update.path, which turns the apply off while the update check and download go on. Windows, builds with -DHM_LIVE_UPDATE=OFF and the container image are not affected."
}
],
"title": "Reliance on Untrusted Inputs in a Security Decision in hMailServer"
}
},
"cveMetadata": {
"assignerOrgId": "ceab7361-8a18-47b1-92ba-4d7d25f6715a",
"assignerShortName": "GitLab",
"cveId": "CVE-2026-104658",
"datePublished": "2026-10-08T10:52:45.630Z",
"dateReserved": "2026-10-02T07:38:54.248Z",
"dateUpdated": "2026-10-08T17:35:46.645Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-104658\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"total\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-10-08T17:35:35.801848Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-10-08T17:35:42.287Z\"}}], \"cna\": {\"title\": \"Reliance on Untrusted Inputs in a Security Decision in hMailServer\", \"credits\": [{\"lang\": \"en\", \"type\": \"finder\", \"value\": \"Found in the hMailServer project\u0027s own security review (Progressive Robot Ltd)\"}], \"metrics\": [{\"format\": \"CVSS\", \"cvssV3_1\": {\"scope\": \"UNCHANGED\", \"version\": \"3.1\", \"baseScore\": 7.8, \"attackVector\": \"LOCAL\", \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\", \"integrityImpact\": \"HIGH\", \"userInteraction\": \"NONE\", \"attackComplexity\": \"LOW\", \"availabilityImpact\": \"HIGH\", \"privilegesRequired\": \"LOW\", \"confidentialityImpact\": \"HIGH\"}, \"scenarios\": [{\"lang\": \"en\", \"value\": \"GENERAL\"}]}], \"affected\": [{\"repo\": \"https://gitlab.com/hmailserver/hmailserver\", \"vendor\": \"Progressive Robot Ltd\", \"product\": \"hMailServer\", \"versions\": [{\"status\": \"affected\", \"version\": \"6.3.4\", \"lessThan\": \"6.3.6\", \"versionType\": \"semver\"}], \"defaultStatus\": \"unaffected\"}], \"solutions\": [{\"lang\": \"en\", \"value\": \"Upgrade to hMailServer 6.3.6, whose helper takes the unit and the AppImage only from its own root-owned command line, refuses an AppImage request where that names none, confirms that the server has stopped, and verifies, runs and installs only copies it made after the stop, readable by root alone until they have verified. Install 6.3.6 with the package manager (apt or dnf) rather than through the live update. An AppImage run under the path unit keeps the helper script copied to /usr/lib/hmailserver/ when its update units were installed, which the AppImage\u0027s own update does not replace: copy 6.3.6\u0027s script there and give it --image in a drop-in for hmailserver-update.service. Until then: systemctl disable --now hmailserver-update.path, which turns the apply off while the update check and download go on. Windows, builds with -DHM_LIVE_UPDATE=OFF and the container image are not affected.\"}], \"references\": [{\"url\": \"https://gitlab.com/hmailserver/hmailserver/-/work_items/58\"}, {\"url\": \"https://gitlab.com/hmailserver/hmailserver/-/releases/v6.3.6\"}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"The Linux live-update apply helper (hmailserver-update) of Progressive Robot hMailServer 6.3.4 and 6.3.5 runs as root on a request file written by the unprivileged hmailserver service account, and took from that request the program used to verify an AppImage update\u0027s signature and the systemd unit to stop before reading the service account\u0027s files. An attacker who already runs code as the hmailserver service account, for example through another flaw in the mail server, can therefore have arbitrary code executed as root, on any Linux installation where the live update\u0027s path unit is active - the default for the project\u0027s .deb and .rpm packages - and on AppImage installations run under that unit.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-807\", \"description\": \"CWE-807: Reliance on Untrusted Inputs in a Security Decision\"}]}], \"providerMetadata\": {\"orgId\": \"ceab7361-8a18-47b1-92ba-4d7d25f6715a\", \"shortName\": \"GitLab\", \"dateUpdated\": \"2026-10-08T10:52:45.630Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2026-104658\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-10-08T17:35:46.645Z\", \"dateReserved\": \"2026-10-02T07:38:54.248Z\", \"assignerOrgId\": \"ceab7361-8a18-47b1-92ba-4d7d25f6715a\", \"datePublished\": \"2026-10-08T10:52:45.630Z\", \"assignerShortName\": \"GitLab\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
}
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…