openSUSE-SU-2026:22226-1

See a problem?
Import Source
https://ftp.suse.com/pub/projects/security/osv/openSUSE-SU-2026:22226-1.json
JSON Data
https://api.osv.dev/v1/vulns/openSUSE-SU-2026:22226-1
Upstream
CVE (10)
  • CVE-2026-116264
  • CVE-2026-116265
  • CVE-2026-116266
  • CVE-2026-116267
  • CVE-2026-116268
  • CVE-2026-116269
  • CVE-2026-116270
  • CVE-2026-116271
  • CVE-2026-116272
  • CVE-2026-116273
Related
Published
2026-11-03T18:16:30Z
Modified
2026-11-04T14:15:29Z
Summary
Security update for perl-MIME-tools
Details

This update for perl-MIME-tools fixes the following issues:

Changes in perl-MIME-tools:

  • updated to 5.522.0 (5.522)

    • 5.522
      • VERSION 5.522 RELEASED
      • Many security issues were addressed (see the following ten CVEs) Issues were brought to my attention, and patches supplied, by the CPANSec security group.
      • parse_params: flag a parameter list that could not be parsed Detect additional ambiguous parse situations when parameter names contain illegal characters. Fixes: CVE-2026-116264 invalid parameter hides boundary/filename. bsc#1288723
      • parse_params: check the boundary after RFC 2231 reassembly Another ambiguous-parse case was missed (trailing space after boundary was not detected for RFC-2231-encoded boundaries.) Fixes: CVE-2026-116265 RFC 2231 boundary skips ambiguity checks. bsc#1288722
      • parse_params: Stricter checking for encoded boundaries; earlier versions would miss some cases. Fixes: CVE-2026-116266 boundary changed by decoding not flagged. bsc#1288721
      • Cap the indentation levels in the Results: structure. Otherwise, specially-crafted messages could consume large amounts of memory. Fixes: CVE-2026-116267 indent stored per message per level bsc#1288720
      • parse_params: stop a comment match at the next parenthesis. Otherwise, specially-crafted messages could cause the regex back-tracker to consume large amounts of CPU time. Note that MIME::Parser does not correctly parse ((nested comments)) and has never done so. Fixes: CVE-2026-116268 unclosed "(" comments backtrack CPU exhaustion. bsc#1288719
      • parse_params: re-encode filename* values without charset tricks Specially-crafted messages could trick recommended_filename() into returning an empty string instead of a plausible filename. Fixes: CVE-2026-116269 RFC 2231 language tag empties filename. bsc#1288718
      • decode_mimewords: do not copy the input into each error. Otherwise, specially-crafted messages could consume large amounts of memory. Fixes: CVE-2026-116270 each bad "=?" copies the input into $@. bsc#1288717
      • FileUnder: do not reuse an existing generated directory. Otherwise, attackers might be able to use symbolic links to get files created in unexpected locations. Fixes: CVE-2026-116271 FileUnder reuses a pre-created directory. bsc#1288716
      • parse_params: flag comments other readers do not skip Specially-crafted messages could create ambiguous messages without setting the ambiguous_parse flag. Fixes: CVE-2026-116272 comment hides a duplicate boundary. bsc#1288715
      • Call whine() rather than error() if max_parts or max_depth is exceeded during a parse. This lets us return undef rather than throwing an exception if ignore_errors() is set to 0.
      • Change to defaults: max_parts is now set to 1000 and max_depth to 64 rather than being unlimited. This should not affect most real-world uses of MIME::tools, but you may need to increase these values or set them to -1 (unlimited) if you run into trouble. ***** NOTE INCOMPATIBILITY ***** Fixes: CVE-2026-116273 max_parts and max_depth unlimited. bsc#1288714
      • Do not signal an ambiguous parse if we have filename="" or name=""
      • Update author names in META.yml
      • Add git repo to META.yml
    • 5.520
      • VERSION 5.520 RELEASED
      • MIME::Parser used O(N^2) CPU time and memory parsing a MIME message nested N levels deep. A smallish specially-crafted message could DOS the computer by making it consume enormous amounts of memory and CPU time. The parser was modified to use O(N) time and memory in this case. Additionally, a new MIME::Parser::max_depth() function was added to limit the nesting depth before declaring a parse failure. Problem was reported to me by Zhaoyang Li and Xiang Li from AOSP Lab at Nankai University.
      • MIME::Parser would ignore multiple blank lines in a message preamble when parsing it; this could break DKIM. Problem pointed out and fix suggested by Tim Henderson.
      • If a MIME boundary includes trailing whitespace, we mark the parse as ambiguous. Problem noted and patch submitted by Christian Herdtweck
    • 5.519
      • VERSION 5.519 RELEASED
      • Some (buggy) software creates base64-encoded parts as a concatenation of multiple base64-encoded streams, and some client software decodes each stream separately and concatenates the results. Duplicate this behavior in MIME::tools to prevent it from being used as a mechanism to sneak dangerous content past a security scanner. Patch courtesy of Giorgio Premi giosh94mhz@gmail.com.
  • updated to 5.518.0 (5.518)

    • 5.518
      • VERSION 5.518 RELEASED
      • Add tests for encoded "boundary=XXX" parameters and set the ambiguous-parse flag if any are found. Patch courtesy of Dominik Csapak d.csapak@proxmox.com MIME::tools chooses to decode encoded boundary parameters. MUA behaviors differ; Claws-Mail decodes them while Thunderbird does not.
      • Don't ignore invalid whitespace after "boundary=XXX" parameter. Patch courtesy of Dominik Csapak d.csapak@proxmox.com
      • Ignore comments between tokens. A header parameter can be written foo(comment)=bar and it's the same as foo=bar. Patch courtesy of Dominik Csapak d.csapak@proxmox.com
  • updated to 5.517.0 (5.517)

    • 5.517
      • VERSION 5.517 RELEASED
      • Add a missing test message file that was causing tests to fail.
    • 5.516
      • VERSION 5.516 RELEASED
      • Handle MIME parameters of the form param= better (ie, a parameter with no value at all.) It's treated the same as param="" rather than aborting the parse.
      • Diagnose additional types of malformed MIME as ambiguous. Specifically, an empty boundary parameters like boundary= or boundary="" is treated as ambiguous. Thanks to Stoiko Ivanov s.ivanov@proxmox.com for pointing out this missing case.
References

Affected packages

openSUSE:Leap 16.0 / perl-MIME-tools

Package

Name
perl-MIME-tools
Purl
pkg:rpm/opensuse/perl-MIME-tools&distro=openSUSE%20Leap%2016.0

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
5.522.0-bp160.1.1

Ecosystem specific

{
    "binaries": [
        {
            "perl-MIME-tools": "5.522.0-bp160.1.1"
        }
    ]
}

Database specific

source
"https://ftp.suse.com/pub/projects/security/osv/openSUSE-SU-2026:22226-1.json"