CVE intelligence and bounded remediation
CVE-2023-35169 — PHP-IMAP is a wrapper for common IMAP communication without the need to have the php-imap module installed / enabled
PHP-IMAP is a wrapper for common IMAP communication without the need to have the php-imap module installed / enabled. Prior to version 5.3.0, an unsanitized attachment filename allows any unauthenticated user to leverage a directory traversal vulnerability, which results in a remote code execution vulnerability. Every application that stores attachments with `Attachment::save()` without providing a `$filename` or passing unsanitized user input is affected by this attack. An attacker can send an email with a malicious attachment to the inbox, which gets crawled with `webklex/php-imap` or `webklex/laravel-imap`. Prerequisite for the vulnerability is that the script stores the attachments without providing a `$filename`, or providing an unsanitized `$filename`, in `src/Attachment::save(string $path, string $filename = null)`. In this case, where no `$filename` gets passed into the `Attachment::save()` method, the package would use a series of unsanitized and insecure input values from the mail as fallback. Even if a developer passes a `$filename` into the `Attachment::save()` method, e.g. by passing the name or filename of the mail attachment itself (from email headers), the input va…
- Severity
- Critical
- CVSS
- 9.8 (3.1)
- Published
- 2023-06-23
- CISA KEV
- Not currently listed
- Ecosystem
- software/application
- Weaknesses
- CWE-22
Affected products
- webklex / php-imap
Matched remediation archetype
Path traversal, unsafe upload, and file handling
This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.
Check exposure
- Trace untrusted filenames, archive entries, URLs, and path segments into read, write, include, extraction, and upload operations.
- Identify filesystem roots, mount permissions, symbolic-link behavior, archive handling, and whether uploaded content is web-accessible or executable.
- Review canonicalization and containment checks across supported operating systems and storage backends.
Remediate safely
- Generate server-side storage identifiers and resolve paths beneath a fixed root using filesystem-aware containment checks.
- Reject absolute, parent-relative, alternate-separator, device, link, and archive entries that escape the intended root.
- Store uploads outside executable or served paths, validate type and size, and use private atomic temporary files.
Authoritative sources
Complete CVE record and remediation plan
The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.