# CVE-2026-61815: zbateson/mail-mime-parser has CRLF header injection via attachment filename

> Attackers can inject CRLF sequences into attachment filenames to forge headers, potentially exfiltrating emails via Bcc injection in applications using this library.

- **Severity:** High 7.2 (`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 24 Sep 2026
- **Updated:** 5 Oct 2026
- **Also known as:** GHSA-36h5-qg4p-q2qf

## What is CVE-2026-61815?

CVE-2026-61815 is a high-severity vulnerability in zbateson mail-mime-parser, published on 24 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

zbateson/mail-mime-parser is a mail mime parser alternative to PHP's imap* functions and Pear libraries for reading messages in Internet Message Format RFC 822. Prior to version 3.0.6 and 4.0.2, CRLF (carriage-return / line-feed) header injection (CWE-93) affecting any application that uses this library to build or forward MIME messages with an attacker-influenced attachment filename. Attachment filenames are interpolated into the `Content-Type` and `Content-Disposition` header values without stripping CR/LF, so a filename containing `\r\n` serializes as one or more additional, attacker-controlled header lines (for example a forged `Bcc:` that silently exfiltrates a copy of the outgoing message). The untrusted filename can come directly from parsed inbound mail, so no local construction is required — an application that re-attaches or re-sends a parsed filename is exposed. Versions 3.0.6 and 4.0.2 patch the issue. Versions 1.x and 2.x are also affected but are end-of-life and will not receive patches; users on those lines should upgrade to a fixed release. If upgrading is not immediately possible, strip CR and LF from any filename before passing it to attachment APIs, and from the result of getFilename() before reusing it in a constructed message — e.g. preg_replace('/[\r\n]+/', ' ', $filename).

Weakness: CWE-93 (Improper Neutralization of CRLF Sequences)

## Which versions are affected by CVE-2026-61815?

4 open source packages ship an affected version, including zbateson/mail-mime-parser.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `zbateson/mail-mime-parser` | Packagist | All versions | 3.0.6 |
| `zbateson/mail-mime-parser` | Packagist | All versions | 3.0.6 |
| `zbateson/mail-mime-parser` | Packagist | From 4.0.0 | 4.0.2 |
| `zbateson/mail-mime-parser` | Packagist | From 4.0.0 | 4.0.2 |

## How do I fix CVE-2026-61815?

Upgrade zbateson/mail-mime-parser to a fixed version for your release line: 3.0.6 or 4.0.2.

## Is CVE-2026-61815 being exploited?

There is no known exploitation of CVE-2026-61815 in the wild and no public exploit code.

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-61815 and fix it if it is affected.

What it is: CVE-2026-61815 is a high-severity vulnerability in zbateson mail-mime-parser, published on 24 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2026-61815 in the wild and no public exploit code.

Affected packages and fixed versions:
- zbateson/mail-mime-parser (Packagist): affected all versions; fixed in 3.0.6
- zbateson/mail-mime-parser (Packagist): affected all versions; fixed in 3.0.6
- zbateson/mail-mime-parser (Packagist): affected from 4.0.0; fixed in 4.0.2
- zbateson/mail-mime-parser (Packagist): affected from 4.0.0; fixed in 4.0.2

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-61815/ (Markdown: https://insights.sbomify.com/CVE-2026-61815/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-61815
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-61815
- OSV: https://osv.dev/vulnerability/CVE-2026-61815

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-61815/
Summaries are generated and may contain mistakes; the official description above is the record.
