Description (CNA)
In Eclipse Jetty, the Digest authentication server-side component uses ISO-8859-1 to encode the password as bytes. This was done because the initial specification for HTTP did not specify explicitly a charset, and it was assumed to be ISO-8859-1 for historical reasons. If the password contains characters that cannot be represented in ISO-8859-1, they are silently replaced by `?`. This happens with passwords that contain Chinese, Cyrillic or Greek characters, for example: `αβ123` converts to `??123`. An attacker can send a request with a digest `Authorization` header crafted with a password made of only `?` characters; the server would match any password of the same length that contains non-ISO-8859-1 characters. Recent HTTP Digest [RFC-7616](https://datatracker.ietf.org/doc/html/rfc7616) supports a `charset` parameters that defaults to UTF-8 that allows for correct encoding/decoding of passwords.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Eclipse Foundation / Eclipse Jetty - EE8 | affected 12.0.0 through 12.0.35; affected 12.1.0 through 12.1.9 |
| Eclipse Foundation / Eclipse Jetty - EE9 | affected 12.0.0 through 12.0.35; affected 12.1.0 through 12.1.9 |
| Eclipse Foundation / Eclipse Jetty | affected 9.4.0 through 9.4.62; affected 10.0.0 through 10.0.30; affected 11.0.0 through 11.0.30; affected 12.0.0 through 12.0.35; affected 12.1.0 through 12.1.9 |
CWE
CWE-173, CWE-303
References
- https://github.com/jetty/jetty.project/security/advisories/GHSA-2fvj-hgj9-j2gr
- https://gitlab.eclipse.org/security/cve-assignment/-/work_items/120
ADP enrichment
No English description supplied.