GitHub Advisoryadvisory · Packagist

GHSA-4pc3-96mx-wwc8 Remote code execution in PHPMailer

CRITICAL Published 2020-03-05 Modified 2025-04-14 Official page ↗
Aliases
CVE-2016-10045
Ecosystem
Packagist
Packages
phpmailer/phpmailer
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-77
Reviewed
2020-03-05

Affected packages

• Packagist phpmailer/phpmailer: >= 5.0.0, < 5.2.20 → fixed in 5.2.20

Description

Impact The `isMail` transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the `mail` command and consequently execute arbitrary code by leveraging improper interaction between the `escapeshellarg` function and internal escaping performed in the mail function in PHP. NOTE: this vulnerability exists because of an incorrect fix for CVE-2016-10033. This issue really emphasises that it&#39;s worth avoiding the built-in PHP `mail()` function entirely. Patches Fixed in 5.2.20 Workarounds Send via SMTP to localhost instead of calling the `mail()` function. References https://nvd.nist.gov/vuln/detail/CVE-2016-10045 See also https://nvd.nist.gov/vuln/detail/CVE-2016-10033 For more information If you have any questions or comments about this advisory: • Open a private issue in the PHPMailer project

Related

Alias · CVE (1)

  • CVE-2016-10045 The isMail transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the mail command and consequently… vulnerability

Weakness · CWE (1)

  • CWE-77 Improper Neutralization of Special Elements used in a Command weakness

References