CVE-2026-45709: CWE-918: Server-Side Request Forgery (SSRF) in axllent mailpit
Mailpit is an email testing tool and API for developers. The fix for GHSA-6jxm-fv7w-rw5j (CVE-2026-23845, "Server-Side Request Forgery (SSRF) via HTML Check API"), shipped in mailpit `v1.28.3`, hardened `internal/htmlcheck/css.go::downloadCSSToBytes` with a 5MB size cap, a `text/css` content-type check, login-info stripping in `isValidURL`, and an opt-in `--block-remote-css-and-fonts` config flag — but did not add the IP-filtering dialer that the same codebase already uses on the two sister SSRF endpoints (the proxy handler and link-check). Prior to version 1.30.0, `internal/htmlcheck/css.go::newSafeHTTPClient` is mis-named — it builds an `http.Client` whose `Transport.DialContext` calls `net.Dialer.DialContext` directly with no IP allowlisting. As a result, the SSRF originally reported by Bao Anh Phan still permits the server to dial loopback, private, link-local, and any other reserved/multicast range, provided the target replies with `HTTP/200` and a content-type beginning with `text/css`. With redirect-following (`CheckRedirect` allows redirects to any `isValidURL` URL with no IP filter), an attacker-controlled public site can redirect mailpit's request into the private network without ever appearing in the email's HTML. In the default mailpit deploy (no UI auth, no SMTP auth, port 1025/8025 exposed), this is an unauthenticated, network-reachable SSRF triggered by sending an HTML email and then issuing one HTTP `GET` to `/api/v1/message/{id}/html-check`. Version 1.30.0 contains an updated fix.
AI Analysis
Technical Summary
Mailpit's HTML Check API prior to version 1.30.0 uses an HTTP client that lacks IP allowlisting when fetching CSS resources, allowing SSRF attacks. Although a size cap and content-type checks were added in version 1.28.3, the client still permits requests to loopback, private, link-local, and reserved IP ranges if the response is HTTP 200 with a 'text/css' content-type. Redirects are followed without IP filtering, enabling an attacker-controlled public site to redirect requests into internal networks invisibly. The vulnerability is exploitable without authentication by sending a malicious HTML email and then calling the /api/v1/message/{id}/html-check endpoint. The fix in version 1.30.0 updates the HTTP client to include IP allowlisting, mitigating the SSRF risk.
Potential Impact
An unauthenticated attacker can exploit this SSRF vulnerability to make the mailpit server send HTTP requests to internal or private network addresses, potentially accessing internal services or resources not otherwise exposed. The vulnerability does not directly disclose data but can be used to interact with internal systems, causing information leakage or indirect impact. The CVSS score is 5.8 (medium severity) with network attack vector, low attack complexity, no privileges required, no user interaction, scope changed, no confidentiality impact, limited integrity impact, and no availability impact.
Mitigation Recommendations
Version 1.30.0 of mailpit contains an updated fix that adds IP allowlisting to the HTTP client used in the HTML Check API, effectively mitigating this SSRF vulnerability. Users should upgrade to mailpit version 1.30.0 or later to remediate this issue. No other official remediation or temporary fixes are documented. Patch status is not explicitly confirmed beyond the mention of version 1.30.0 containing the fix; users should verify with the vendor advisory for the latest guidance.
CVE-2026-45709: CWE-918: Server-Side Request Forgery (SSRF) in axllent mailpit
Description
Mailpit is an email testing tool and API for developers. The fix for GHSA-6jxm-fv7w-rw5j (CVE-2026-23845, "Server-Side Request Forgery (SSRF) via HTML Check API"), shipped in mailpit `v1.28.3`, hardened `internal/htmlcheck/css.go::downloadCSSToBytes` with a 5MB size cap, a `text/css` content-type check, login-info stripping in `isValidURL`, and an opt-in `--block-remote-css-and-fonts` config flag — but did not add the IP-filtering dialer that the same codebase already uses on the two sister SSRF endpoints (the proxy handler and link-check). Prior to version 1.30.0, `internal/htmlcheck/css.go::newSafeHTTPClient` is mis-named — it builds an `http.Client` whose `Transport.DialContext` calls `net.Dialer.DialContext` directly with no IP allowlisting. As a result, the SSRF originally reported by Bao Anh Phan still permits the server to dial loopback, private, link-local, and any other reserved/multicast range, provided the target replies with `HTTP/200` and a content-type beginning with `text/css`. With redirect-following (`CheckRedirect` allows redirects to any `isValidURL` URL with no IP filter), an attacker-controlled public site can redirect mailpit's request into the private network without ever appearing in the email's HTML. In the default mailpit deploy (no UI auth, no SMTP auth, port 1025/8025 exposed), this is an unauthenticated, network-reachable SSRF triggered by sending an HTML email and then issuing one HTTP `GET` to `/api/v1/message/{id}/html-check`. Version 1.30.0 contains an updated fix.
CVSS v3.1
Score 5.8medium
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
Mailpit's HTML Check API prior to version 1.30.0 uses an HTTP client that lacks IP allowlisting when fetching CSS resources, allowing SSRF attacks. Although a size cap and content-type checks were added in version 1.28.3, the client still permits requests to loopback, private, link-local, and reserved IP ranges if the response is HTTP 200 with a 'text/css' content-type. Redirects are followed without IP filtering, enabling an attacker-controlled public site to redirect requests into internal networks invisibly. The vulnerability is exploitable without authentication by sending a malicious HTML email and then calling the /api/v1/message/{id}/html-check endpoint. The fix in version 1.30.0 updates the HTTP client to include IP allowlisting, mitigating the SSRF risk.
Potential Impact
An unauthenticated attacker can exploit this SSRF vulnerability to make the mailpit server send HTTP requests to internal or private network addresses, potentially accessing internal services or resources not otherwise exposed. The vulnerability does not directly disclose data but can be used to interact with internal systems, causing information leakage or indirect impact. The CVSS score is 5.8 (medium severity) with network attack vector, low attack complexity, no privileges required, no user interaction, scope changed, no confidentiality impact, limited integrity impact, and no availability impact.
Mitigation Recommendations
Version 1.30.0 of mailpit contains an updated fix that adds IP allowlisting to the HTTP client used in the HTML Check API, effectively mitigating this SSRF vulnerability. Users should upgrade to mailpit version 1.30.0 or later to remediate this issue. No other official remediation or temporary fixes are documented. Patch status is not explicitly confirmed beyond the mention of version 1.30.0 containing the fix; users should verify with the vendor advisory for the latest guidance.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-05-13T04:38:01.166Z
- Cvss Version
- 3.1
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a5e3e5d2a4a8d5989464d97
Added to database: 07/20/2026, 15:27:25 UTC
Last enriched: 07/20/2026, 15:43:01 UTC
Last updated: 07/21/2026, 03:44:44 UTC
Views: 9
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.