Mailpit: Thumbnail generation decodes unbounded image dimensions before scaling
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-400.
Summary
Mailpit is an email testing tool and API for developers. Prior to 1.30.4, Mailpit decodes attacker-supplied image attachments into a full raster before checking decoded dimensions, pixel count, or memory use in the GET /api/v1/message/{id}/part/{partID}/thumb endpoint. The Thumbnail handler in server/apiv1/thumbnails.go obtains attachment bytes through storage.GetAttachmentPart(), accepts image/* content, and calls imaging.Decode() with AutoOrientation before imaging.Fill() scales the image to 180 by 120 pixels. A compact image declaring very large dimensions can therefore consume disproportionately large memory and CPU, and opening the message UI can trigger the same endpoint through server/ui-src/components/message/MessageAttachments.vue. This can degrade availability when an unauthenticated client can store the crafted attachment and reach the web API. This issue is fixed in version 1.30.4.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| axllent | mailpit | before 1.30.4 | 1.30.4 | Patch available | CNA |
| — | github.com/axllent/mailpit (Go) | before 1.30.4 | 1.30.4 | Patch available | GHSA-75mr-qw9x-3r39 |
- mailpit Vendoraxllent Affected before 1.30.4 Fixed in 1.30.4 Patch available CNA
- github.com/axllent/mailpit (Go) Vendor— Affected before 1.30.4 Fixed in 1.30.4 Patch available GHSA-75mr-qw9x-3r39
Remediation
- Fix · CNA mailpit (axllent) Fixed in 1.30.4
- Fix · GHSA-75mr-qw9x-3r39 github.com/axllent/mailpit (Go) Fixed in 1.30.4 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-67446
- 2026-10-03 Alias added: GHSA-75mr-qw9x-3r39
References
More axllent vulnerabilities
- TI-2026-22161 Mailpit is Vulnerable to Server-Side Request Forgery (SSRF) via Link Check API CVSS 3.1HIGH 8.6
- TI-2026-33452 Mailpit: Unauthenticated remote memory-exhaustion DoS via unlimited SMTP DATA and /api/v1/send body sizes CVSS 3.1HIGH 7.5
- TI-2026-33450 Mailpit: Path traversal & arbitrary file write in mailpit dump --http via attacker-controlled message IDs CVSS 3.1HIGH 8.2
- TI-2026-39868 Mailpit: Incomplete SSRF protection in Link Check API via IPv6 transition mechanisms (follow-up to CVE-2026-27808) CVSS 3.1MEDIUM 5.8
- TI-2026-17561 Mailpit Proxy Endpoint is Vulnerable to Server-Side Request Forgery (SSRF) CVSS 3.1MEDIUM 5.8
- TI-2026-47725 Mailpit: SMTP DATA line reader buffers over-limit input before size enforcement CVSS 3.1MEDIUM 5.3
Sources
- CVE-2026-67446 · CVE Program
- CVE-2026-67446 · NVD
- FIRST EPSS
- GHSA-75mr-qw9x-3r39 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences