SmarterMail ConnectToHub Unauthenticated SSRF Leading to Remote Command Execution — CVE-2026-24423
by aavamin (PoC credited to ChatGPT-assisted development) · 2026-07-05
- Severity
- Critical
- CVE
- CVE-2026-24423
- Category
- web
- Affected product
- SmarterMail (ConnectToHub / node clustering feature)
- Affected versions
- Not specified in source (SmarterMail versions exposing the node-management "connect to hub" API)
- Disclosed
- 2026-07-05
- Patch status
- unpatched
Tags
References
Archive entry
intelseclab/poc-archiveMetadata
| Field | Value |
|---|---|
| Date Added | 2026-07-05 |
| Last Updated | 2026-01 |
| Author / Researcher | aavamin (PoC credited to ChatGPT-assisted development) |
| CVE / Advisory | CVE-2026-24423 |
| Category | web |
| Severity | Critical |
| CVSS Score | Not specified in source |
| Status | PoC |
| Tags | ssrf, smartermail, connecttohub, unauthenticated, trust-boundary, rce, mail-server, node-management |
| Related | N/A |
Affected Target
| Field | Value |
|---|---|
| Software / System | SmarterMail (ConnectToHub / node clustering feature) |
| Versions Affected | Not specified in source (SmarterMail versions exposing the node-management “connect to hub” API) |
| Language / Platform | PoC attacker-side server written in Python 3 (stdlib http.server); target is a .NET/Windows-based mail server |
| Authentication Required | No |
| Network Access Required | Yes |
Summary
SmarterMail’s node-clustering feature allows an administrator to point a node at a “hub” server via the connect-to-hub API. The vulnerability is that the admin-level /api/v1/settings/sysadmin/connect-to-hub endpoint requires no authentication, and the server treats the “hub” it connects to as trusted: whatever configuration the remote hub returns (including a SystemMount/CommandMount field) is applied locally. This is a textbook trust-boundary violation combined with server-side request forgery — SmarterMail makes an outbound connection to an attacker-controlled address and then acts on attacker-supplied data as if it were legitimate cluster configuration, ultimately executing an attacker-chosen OS command (the PoC defaults to whoami). The PoC stands up a fake “hub” HTTP server that returns a malicious CommandMount value, then the attacker triggers the vulnerable SmarterMail endpoint to point at it.
Vulnerability Details
Root Cause
The connect-to-hub node-management API is unauthenticated and SmarterMail unconditionally trusts and acts on the SystemMount/CommandMount configuration returned by the “hub” address it is told to connect to, without validating that the hub is a legitimate, trusted peer.
Attack Vector
- Attacker stands up a rogue “hub” HTTP server (the included Python script) that listens on port 80 and responds to
POST /web/api/node-management/setup-initial-connectionwith a JSON body containing aSystemMountobject whoseCommandMountfield holds an OS command. - Attacker sends an unauthenticated
POST /api/v1/settings/sysadmin/connect-to-hubrequest to the target SmarterMail instance, withhubAddresspointing at the rogue server. - SmarterMail’s server-side connects out to the attacker’s fake hub (SSRF) and receives the malicious configuration.
- SmarterMail applies the returned
SystemMount/CommandMountconfiguration, causing the specified command to execute on the mail server host.
Impact
Unauthenticated remote command execution on the SmarterMail host, enabling full compromise of the mail server (mailbox access, further pivoting, credential theft) with zero prior authentication.
Environment / Lab Setup
Target: SmarterMail instance with node-management/cluster API reachable
Attacker: Python 3 (stdlib only) to run the rogue hub server; Burp Suite or Yakit to send the trigger request
Proof of Concept
PoC Script
See
CVE-2026-24423.pyandwhoami.pngin this folder.
| |
The script starts an HTTP server on port 80 that simulates a SmarterMail hub: any POST to /web/api/node-management/setup-initial-connection receives a canned JSON response containing a SystemMount block whose CommandMount is set to whoami > C:\\whoami.txt. After starting the fake hub, the attacker sends a POST /api/v1/settings/sysadmin/connect-to-hub request to the target with hubAddress set to the attacker’s IP, causing the target to fetch and act on the malicious configuration and execute the embedded command.
Detection & Indicators of Compromise
POST /api/v1/settings/sysadmin/connect-to-hub hubAddress=http://<attacker-ip> oneTimePassword=... nodeName=...
Signs of compromise:
- SmarterMail server making unexpected outbound HTTP connections to unfamiliar external IPs shortly after a
connect-to-hubAPI call. - Unexpected file writes or command execution artifacts on the mail server host (e.g. unplanned
whoami.txtor similar output files). connect-to-hub/ node-management API calls with no corresponding legitimate administrative session or MFA event.
Remediation
| Action | Detail |
|---|---|
| Primary fix | No vendor patch confirmed as of 2026-07-05 — monitor SmarterMail advisories and apply the update once released. |
| Interim mitigation | Require authentication on all node-management/sysadmin API endpoints, restrict outbound connectivity from the mail server to only known/trusted hub IPs, and firewall the connect-to-hub endpoint from untrusted networks. |
References
Notes
Mirrored from https://github.com/aavamin/CVE-2026-24423 on 2026-07-05.
| |