org.eclipse.jetty:jetty-server@9.4.38.v20210224

  • latest version

    12.1.11

  • latest non vulnerable version

  • first published

    17 years ago

  • latest version published

    27 days ago

  • licenses detected

  • package registry

  • Direct Vulnerabilities

    Known vulnerabilities in the org.eclipse.jetty:jetty-server package. This does not include vulnerabilities belonging to this package’s dependencies.

    Fix vulnerabilities automatically

    Snyk's AI Trust Platform automatically finds the best upgrade path and integrates with your development workflows. Secure your code at zero cost.

    Fix for free
    VulnerabilityVulnerable Version
    • M
    Improper Validation of Consistency within Input

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Improper Validation of Consistency within Input through ComplianceUtils.verify(HttpURI, HttpFields, HttpCompliance, ComplianceViolation.Listener) in jetty-core/jetty-http/src/main/java/org/eclipse/jetty/http/ComplianceUtils.java. An attacker can bypass host consistency checks by sending a request whose :authority pseudo-header and Host header name different hosts, causing Jetty to accept the request and expose conflicting host identities to different code paths. This lets attacker-controlled host information survive inside the request, so logic that relies on Request.getServerName() or the URI authority can see one host while code reading the raw Host header sees another. In deployments that use host-based routing, ACLs, redirects, or tenant isolation, this can lead to incorrect request handling, host-based access control bypass, and attacker-influenced URL generation or logging.

    Notes

    • HTTP/1.1 already had its own authority/Host consistency path in HttpConnection/HttpChannelState; the gap was in the HTTP/2 and HTTP/3 server entry flow where the shared compliance check was invoked before that comparison happened.
    • The mismatch check only rejects when both values are present and differ after normalizing case and default ports, so requests with only one of :authority or Host present are not part of this issue.

    How to fix Improper Validation of Consistency within Input?

    Upgrade org.eclipse.jetty:jetty-server to version 9.4.61, 10.0.29, 11.0.29, 12.0.35, 12.1.9 or higher.

    [9.4.0,9.4.61)[10.0.0,10.0.29)[11.0.0,11.0.29)[12.0.0,12.0.35)[12.1.0,12.1.9)
    • M
    Interpretation Conflict

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Interpretation Conflict due to inconsistent handling of invalid or unusual URIs in the parse() function on HttpURI.java‎. An attacker can bypass security controls or access restricted resources by crafting specially formatted URIs that are interpreted differently by various system components.

    How to fix Interpretation Conflict?

    Upgrade org.eclipse.jetty:jetty-server to version 12.0.31, 12.1.5 or higher.

    [9.4.0.M0,12.0.31)[12.1.0.alpha0,12.1.5)
    • M
    Improper Resource Shutdown or Release

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Improper Resource Shutdown or Release due to an error in handling gzip compression in the GzipHandler. An attacker can corrupt data and inadvertently share it between requests by exploiting the improper release of a buffer when a gzip error occurs during the inflation of a request body.

    How to fix Improper Resource Shutdown or Release?

    Upgrade org.eclipse.jetty:jetty-server to version 9.4.57.v20241219 or higher.

    [9.4.0.M0,9.4.57.v20241219)
    • H
    Denial of Service (DoS)

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Denial of Service (DoS) via the ThreadLimitHandler.getRemote() method. An attacker can exhaust the server's memory and trigger OutofMemory errors by repeatedly sending crafted requests.

    How to fix Denial of Service (DoS)?

    Upgrade org.eclipse.jetty:jetty-server to version 9.4.56, 10.0.24, 11.0.24, 12.0.9 or higher.

    [9.3.12,9.4.56)[10.0.0,10.0.24)[11.0.0,11.0.24)[12.0.0,12.0.9)
    • M
    Improper Validation of Syntactic Correctness of Input

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Improper Validation of Syntactic Correctness of Input via the HttpURI class due to insufficient validation on the authority segment of a URI. An attacker can manipulate the URI parsing to redirect requests or initiate server-side requests to unintended destinations by supplying malformed URIs that bypass validation checks.

    Notes:

    1. This is only exploitable if the application uses decoded user data as encoded URIs in conjunction with the HttpURI class used directly;

    2. The Jetty usage of the HttpURI class is not vulnerable.

    How to fix Improper Validation of Syntactic Correctness of Input?

    Upgrade org.eclipse.jetty:jetty-server to version 9.4.57.v20241219, 12.0.12 or higher.

    [,9.4.57.v20241219)[10.0.0,12.0.12)
    • L
    Information Exposure

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Information Exposure such that nonstandard cookie parsing may allow an attacker to smuggle cookies within other cookies, or otherwise perform unintended behavior by tampering with the cookie parsing mechanism. If Jetty sees a cookie VALUE that starts with " (double quote), it will continue to read the cookie string until it sees a closing quote -- even if a semicolon is encountered. Exploiting this vulnerability results in cookies exfiltration and policy based on cookies bypass.

    Note: A cookie header such as: DISPLAY_LANGUAGE="b; JSESSIONID=1337; c=d" will be parsed as one cookie, with the name DISPLAY_LANGUAGE and a value of b; JSESSIONID=1337; c=d instead of 3 separate cookies.

    How to fix Information Exposure?

    Upgrade org.eclipse.jetty:jetty-server to version 9.4.51, 10.0.14, 11.0.14, 12.0.0.beta0 or higher.

    [,9.4.51)[10.0.0,10.0.14)[11.0.0,11.0.14)[12.0.0alpha0,12.0.0.beta0)
    • M
    Denial of Service (DoS)

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Denial of Service (DoS) such that servlets with multipart support (e.g. annotated with @MultipartConfig) that call HttpServletRequest.getParameter() or HttpServletRequest.getParts() may cause OutOfMemoryError when the client sends a multipart request with a part that has a name but no filename and very large content.

    Note: This happens even with the default settings of fileSizeThreshold=0, which should stream the whole part content to disk. An attacker client may send a large multipart request and cause the server to throw OutOfMemoryError. However, the server may be able to recover after the OutOfMemoryError and continue its service -- although it may take some time.

    How to fix Denial of Service (DoS)?

    Upgrade org.eclipse.jetty:jetty-server to version 9.4.51, 10.0.14, 11.0.14, 12.0.0.beta0 or higher.

    [,9.4.51)[10.0.0,10.0.14)[11.0.0,11.0.14)[12.0.0.alpha0,12.0.0.beta0)
    • L
    Information Exposure

    org.eclipse.jetty:jetty-server is a lightweight highly scalable java based web server and servlet engine.

    Affected versions of this package are vulnerable to Information Exposure. If an exception is thrown by the SessionListener#sessionDestroyed() method, the session ID will not be validated in the manager, which may allow the application to be left logged in on a shared computer.

    How to fix Information Exposure?

    Upgrade org.eclipse.jetty:jetty-server to version 11.0.3, 10.0.3, 9.4.41 or higher.

    [11.0.0,11.0.3)[10.0.0,10.0.3)[,9.4.41)