id: aem-querybuilder-json-servlet

info:
  name: AEM QueryBuilder Json Servlet
  author: DhiyaneshDk
  severity: info
  description: Sensitive information might be exposed via AEMs QueryBuilderServlet or QueryBuilderFeedServlet.
  reference:
    - https://helpx.adobe.com/experience-manager/6-3/sites/developing/using/querybuilder-predicate-reference.html
    - https://github.com/thomashartm/burp-aem-scanner/blob/master/src/main/java/burp/actions/dispatcher/QueryBuilderExposed.java
  classification:
    cpe: cpe:2.3:a:adobe:acs_aem_commons:*:*:*:*:*:*:*:*
  metadata:
    max-request: 8
    vendor: adobe
    product: acs_aem_commons
    shodan-query: http.component:"Adobe Experience Manager"
  tags: aem,adobe,misconfig

http:
  - method: GET
    path:
      - '{{BaseURL}}/bin/querybuilder.json'
      - '{{BaseURL}}/bin/querybuilder.json.servlet'
      - '{{BaseURL}}///bin///querybuilder.json'
      - '{{BaseURL}}///bin///querybuilder.json.servlet'
      - '{{BaseURL}}/bin/querybuilder.feed'
      - '{{BaseURL}}/bin/querybuilder.feed.servlet'
      - '{{BaseURL}}///bin///querybuilder.feed'
      - ' {{BaseURL}}///bin///querybuilder.feed.servlet'

    stop-at-first-match: true

    matchers-condition: and
    matchers:
      - type: status
        status:
          - 200

      - type: word
        words:
          - "application/json"
        part: header

      - type: word
        words:
          - 'success'
          - 'results'
        condition: and
# digest: 4a0a00473045022100eed6500be19eba723efbd751e6c7b6f546f78c4d010aa628a4694f9d0ccf48600220040c1d483e68f5bcbfb4a84aea0060f4b8f0e5e341d00aec15cd546acbb4e6c2:922c64590222798bb761d5b6d8e72950