id: wp-updraftplus-fpd

info:
  name: WordPress UpdraftPlus - Full Path Disclosure
  author: DhiyaneshDk
  severity: low
  description: |
    WordPress Plugin UpdraftPlus files are publicly accessible without ABSPATH protection, exposing sensitive server path information through PHP error messages when accessed directly.
  reference:
    - https://wordpress.org/plugins/updraftplus/
  metadata:
    verified: true
    max-request: 1
    fofa-query: body="/wp-content/plugins/updraftplus"
  tags: wp,wordpress,wp-plugin,fpd,updraftplus,misconfig

http:
  - method: GET
    path:
      - "{{BaseURL}}/wp-content/plugins/updraftplus/admin.php"
      - "{{BaseURL}}/wp-content/plugins/updraftplus/class-updraftplus.php"
      - "{{BaseURL}}/wp-content/plugins/updraftplus/restorer.php"
      - "{{BaseURL}}/wp-content/plugins/updraftplus/backup.php"
      - "{{BaseURL}}/wp-content/plugins/updraftplus/includes/class-commands.php"

    stop-at-first-match: true

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body, "Fatal error", "Uncaught Error") || contains_all(body, "Warning:", "failed to open stream")'
          - 'status_code == 200 || status_code == 500'
          - 'contains(body, "updraftplus")'
        condition: and
# digest: 490a0046304402204028fdb039af3a6c14d655419b80159906bb47198c3a2030fdf46487804843ac02201fd9c412c541da7123e7cb4bd9eae25206fed97978562f5fbcbcfbec3c44a1c5:922c64590222798bb761d5b6d8e72950