nginx: Multiple vulnerabilities (CVE-2019-9511, CVE-2019-9513, CVE-2019-9516)
CVE-2019-9511: Data dribble
Some HTTP/2 implementations are vulnerable to window size manipulation and stream prioritization manipulation, potentially leading to a denial of service. The attacker requests a large amount of data from a specified resource over multiple streams. They manipulate window size and stream priority to force the server to queue the data in 1-byte chunks. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both.
Affected Versions:
nginx 1.9.5 - 1.17.2.
Fixed in Version:
nginx 1.17.3, 1.16.1.
References:
- https://mailman.nginx.org/pipermail/nginx-announce/2019/000249.html
- https://www.nginx.com/blog/nginx-updates-mitigate-august-2019-http-2-vulnerabilities/
CVE-2019-9513: Resource loop
Some HTTP/2 implementations are vulnerable to resource loops, potentially leading to a denial of service. The attacker creates multiple request streams and continually shuffles the priority of the streams in a way that causes substantial churn to the priority tree. This can consume excess CPU.
Affected Versions:
nginx 1.9.5 - 1.17.2.
Fixed in Version:
nginx 1.17.3, 1.16.1.
References:
- https://mailman.nginx.org/pipermail/nginx-announce/2019/000249.html
- https://www.nginx.com/blog/nginx-updates-mitigate-august-2019-http-2-vulnerabilities/
CVE-2019-9516: Zero‑length headers leak
Some HTTP/2 implementations are vulnerable to a header leak, potentially leading to a denial of service. The attacker sends a stream of headers with a 0-length header name and 0-length header value, optionally Huffman encoded into 1-byte or greater headers. Some implementations allocate memory for these headers and keep the allocation alive until the session dies. This can consume excess memory.
Affected Versions:
nginx 1.9.5 - 1.17.2.
Fixed in Version:
nginx 1.17.3, 1.16.1.
References:
- https://mailman.nginx.org/pipermail/nginx-announce/2019/000249.html
- https://www.nginx.com/blog/nginx-updates-mitigate-august-2019-http-2-vulnerabilities/