mirror of
https://github.com/Alfresco/SearchServices.git
synced 2026-09-16 18:12:56 +00:00
3.2 KiB
3.2 KiB
Jetty 9.4.57 CVE Mitigations
Scope
Search Services embeds the solr-solr-6.6.5-patched.22.zip runtime. That ZIP
contains Jetty 9.4.57.v20241219 JARs under server/lib; Maven dependency
management does not replace them in the packaged distribution.
This assessment applies to the default runtime assembled by
search-services/packaging/pom.xml. Reassess it when the Solr distribution,
Jetty configuration, ingress, or authentication mode changes.
Reachability Assessment
| CVE | Disposition | Evidence |
|---|---|---|
| CVE-2026-6790 | Not reachable | Requires HTTP/2 or HTTP/3. The distribution contains no HTTP/2, HTTP/3, or ALPN JARs. server/etc/jetty-http.xml configures only Jetty's HTTP/1.1 HttpConnectionFactory. |
| CVE-2024-6763 | Not applicable to current use | Requires application use of org.eclipse.jetty.http.HttpURI as a validator for attacker-controlled URLs. Repository application code does not reference that class, and the Jetty advisory states that normal server use is not vulnerable. |
| CVE-2025-11143 | Not exploitable through identified application code | Repository application code does not use HttpURI for URL allowlists/blocklists, redirects, host ACLs, or SSRF protection. Reject malformed URIs at the ingress as defense in depth. |
| CVE-2026-10050 | Not reachable | The vulnerable class is client-side org.eclipse.jetty.client.DigestAuthentication. The distribution contains no jetty-client JAR. The server-side DigestAuthenticator is a different class and is not configured. |
| CVE-2026-2332 | Reachable unless controlled at deployment | The vulnerable HTTP/1.1 chunk parser is active in HttpConnectionFactory and processes requests before Solr authentication. Application-level shared-secret checks do not prevent parser exploitation. |
Required Controls for CVE-2026-2332
Production deployments must apply all applicable controls below:
- Do not expose the Solr listener directly to public or general internal networks.
- Restrict port
8983to approved ACS, Search, monitoring, and administrative sources using network policy, firewall rules, or security groups. - Prefer mutual TLS and set
SOLR_SSL_NEED_CLIENT_AUTH=true. - At any ingress proxy, reject malformed chunked transfer encoding, chunk extensions, and control characters in chunk metadata. Prefer normalized upstream requests using
Content-Length. - Do not rely on
ALFRESCO_SECURE_COMMS=secretalone. Jetty parses HTTP framing before the shared-secret authentication plugin runs. - Do not use
ALFRESCO_SECURE_COMMS=nonein production.
Deployment Evidence
Capture the following evidence for each deployed environment before accepting the mitigation:
- The effective
ALFRESCO_SECURE_COMMSvalue. - The effective
SOLR_SSL_NEED_CLIENT_AUTHvalue. - Listener bindings and published container ports.
- Firewall, security-group, or network-policy rules protecting port
8983. - Ingress or load-balancer rules for chunked transfer encoding and connection reuse.
- A request-path diagram showing every component between an untrusted client and Jetty.
Reopen the finding if untrusted clients can establish a direct HTTP/1.1 connection to Jetty, or if the ingress cannot reject the malformed chunked requests described by CVE-2026-2332.