Skip to content

🥅 Validate #enable arguments are all atoms#699

Merged
nevans merged 1 commit into
v0.6.4-patchesfrom
security/validate-enable-arguments
Jun 9, 2026
Merged

🥅 Validate #enable arguments are all atoms#699
nevans merged 1 commit into
v0.6.4-patchesfrom
security/validate-enable-arguments

Conversation

@nevans

@nevans nevans commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

This still allows the argument to be a single string with multiple space-delimited arguments. It splits the string first, and validates the substrings.

Without this patch, Net::IMAP#enable is vulnerable to the same type of CRLF injection issues as in CVE-2026-42258 (GHSA-75xq-5h9v-w6px) and CVE-2026-42257 (GHSA-hm49-wcqc-g2xg).

Please note: Net::IMAP#enable should be never be called with untrusted input! The documentation clearly states that use of any unknown extensions may result in undefined behavior. Any application that sends untrusted input with #enable will still have a security vulnerability, even after this PR. Nevertheless, CRLF command injection can and should be prevented!

This still allows the argument to be a single string with multiple
space-delimited arguments.  It splits the string first, and validates
the substrings.
@nevans nevans added bug Something isn't working security vulnerability patch Pull requests that address security vulnerabilities labels Jun 9, 2026
@nevans nevans changed the base branch from master to v0.6.4-patches June 9, 2026 14:49
@nevans nevans merged commit 5a0af4a into v0.6.4-patches Jun 9, 2026
39 checks passed
@nevans nevans deleted the security/validate-enable-arguments branch June 9, 2026 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working security vulnerability patch Pull requests that address security vulnerabilities

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant