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.00849
    epss-percentile: 0.53285
    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: 4a0a0047304502210081fa22b2de5554ae7f0278971a58d6fa22ddc9178637ce64895bb89d88ee44d502203e039e9097d4954aa0a49bd4ebdb4dbe771c360a17e762a0cbaa4312eefcef03:922c64590222798bb761d5b6d8e72950