id: CVE-2022-2551

info:
  name: WordPress Duplicator <1.4.7 - Authentication Bypass
  author: LRTK-CODER
  severity: high
  description: |
    WordPress Duplicator plugin before 1.4.7 is susceptible to authentication bypass. The plugin discloses the URL of the backup to unauthenticated visitors accessing the main installer endpoint. If the installer script has been run once by an administrator, this allows download of the full site backup without proper authentication.
  impact: |
    Successful exploitation of this vulnerability can lead to unauthorized access to sensitive information or unauthorized actions on the affected WordPress site.
  remediation: Fixed in version 1.4.7.1.
  reference:
    - https://wpscan.com/vulnerability/f27d753e-861a-4d8d-9b9a-6c99a8a7ebe0
    - https://wordpress.org/plugins/duplicator/
    - https://github.com/SecuriTrust/CVEsLab/tree/main/CVE-2022-2551
    - https://nvd.nist.gov/vuln/detail/CVE-2022-2551
    - https://github.com/ARPSyndicate/cvemon
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2022-2551
    cwe-id: CWE-425
    epss-score: 0.59708
    epss-percentile: 0.98283
    cpe: cpe:2.3:a:snapcreek:duplicator:*:*:*:*:lite:wordpress:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: snapcreek
    product: duplicator
    framework: wordpress
    google-query:
      - inurl:/backups-dup-lite/dup-installer/
      - inurl:"/wp-content/plugins/duplicator"
  tags: cve2022,cve,wordpress,wp,wp-plugin,duplicator,wpscan,snapcreek,vkev,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/wp-content/backups-dup-lite/dup-installer/main.installer.php?is_daws=1"
      - "{{BaseURL}}/wp-content/dup-installer/main.installer.php?is_daws=1"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "<a href='../installer.php'>restart this install process</a>"
        condition: and

      - type: word
        part: header
        words:
          - text/html

      - type: status
        status:
          - 200
# digest: 4b0a00483046022100d6cc7b51a6b8751d7a2d799e87d14f6154a0a9dd677f9ae89fffbd1468aeaa67022100de299e2fd3341db923d9ade5f86a7790ab62b9daaa5c79a5cdd6c21145d6e67a:922c64590222798bb761d5b6d8e72950