Divulgation de plusieurs vulnérabilités de déni de service (DoS) dans le protocole HTTP/2 (CVE-2019-9511, CVE-2019-9518)
A variety of Denial of Service vulnerabilities were found in third-party implementations of HTTP/2.
Contexte
On August 13, researchers at Netflix published an advisory for their GitHub page detailing their discovery of eight vulnerabilities in the HTTP/2 protocol implementations by third parties. The vulnerabilities were primarily discovered by Jonathan Looney, Engineering Manager at Netflix, with one vulnerability, CVE-2019-9518, discovered by Piotr Sikora, Senior Software Engineer at Google.
Image Credit: Cloudflare
Analyse
A client (“the attacker”) can exploit these HTTP/2 vulnerabilities by sending specially crafted requests to vulnerable servers. While these requests will vary, a vulnerable server will attempt to process the request and attempt to send a response. However, the malicious client ignores the response, leading to excess consumption of resources, which would result in a denial of service (DoS).
The following are the eight vulnerabilities and the associated nicknames given to them in the Netflix advisory.
CVE ID | Nickname |
---|---|
CVE-2019-9511 | “Data Dribble” |
CVE-2019-9512 | “Ping Flood” |
CVE-2019-9513 | “Resource Loop” |
CVE-2019-9514 | “Reset Flood” |
CVE-2019-9515 | “Settings Flood” |
CVE-2019-9516 | “0-Length Headers Leak” |
CVE-2019-9517 | “Internal Data Buffering” |
CVE-2019-9518 | “Empty Frames Flood” |
Démonstration de faisabilité (PoC)
At the time the blog was published, no proof-of-concept code was available.
Solution
To immediately address the vulnerabilities, Netflix’s advisory suggests disabling HTTP/2 support, but cautions that this could either result in performance degradation or not be feasible. Software vendors are in the process of publishing patches for these vulnerabilities. Initial reports from vendors can be found below:
Vendor | Link(s) | Source |
---|---|---|
Akamai | HTTP2 Vulnerabilities | Blog |
Ambassador (API Gateway) | Multiple HTTP/2 vulnerabilities in Envoy Proxy | Blog |
Apache Traffic Server (ATS) | [ANNOUNCE] Apache Traffic Server is vulnerable to various HTTP/2 attacks | Mailing List |
Cloudflare | On the recent HTTP/2 DoS attacks | Blog |
Envoy (Proxy) | Version 1.11.1 History | Changelog |
Google (Golang) | [security] Go 1.12.8 and Go 1.11.13 are released | Forum Posting |
Microsoft | CVE-2019-9511, CVE-2019-9512, CVE-2019-9513, CVE-2019-9514, CVE-2019-9518 | Advisory |
Netty Project | Netty 4.1.39.Final released | Blog |
nghttp2 | nghttp2 v1.39.2 Release Notes | Software Release |
Nginx | NGINX Updates Mitigate the August 2019 HTTP/2 Vulnerabilities | Blog |
Node.js | August 2019 Security Releases | Blog |
Swift | About the security content of SwiftNIO HTTP/2 1.5.0 | Advisory |
Customers using these software applications are encouraged to update to the patched versions as soon as possible.
Identification des systèmes affectés
A list of Tenable plugins to identify these vulnerabilities will appear here as they’re released.
Où trouver plus d'informations
Rejoignez l'équipe SRT de Tenable sur Tenable Community.
Apprenez-en plus sur Tenable, la première plateforme de Cyber Exposure qui vous permet de gérer votre surface d'attaque moderne de manière globale.
Get a free 60-day trial of Tenable.io .
Articles connexes
- Threat hunting
- Threat Intelligence
- Vulnerability Management
- Vulnerability Scanning