
Lehrreiche Exploit-Skripte für HTTP/3-Angriffe (CVE-2022-30592), einschließlich HTTP3-loris, HTTP3-stream und HTTP3-flooding, getestet gegen QUIC-fähige Server.
Basierend auf der Arbeit: E. Chatzoglou, V. Kouliaridis, G. Kambourakis, G. Karopoulos, and S. Gritzalis, "A hands-on gaze on HTTP/3 security through the lens of HTTP/2 and a public dataset", Computers & Security, p. 103051, 2022.
Dieses Repository dient dazu, die von uns zu Bildungszwecken verwendeten Skripte zu teilen. Diese Angriffe waren Teil unserer Studie und wurden gegen sechs verschiedene QUIC-fähige Server (IIS, NGINX, LiteSpeed, Cloudflare, H2O und Caddy) getestet, die für die Kommunikation mit HTTP/3 konfiguriert waren. Das http-stream-Skript ist der Exploit für das CVE-2022-30592-Problem, das die lsquic-Bibliothek betraf. Dieses Skript kann auch gegen den Litespeed-Server ausgenutzt werden.
Für die Durchführung dieser Angriffe wurde ein Ubuntu 18.04-Client verwendet, unterstützt durch die aioquic-Python-Bibliothek für HTTP3-loris und HTTP3-stream. Für den HTTP3-flooding-Angriff wurde das curl-Tool mit Unterstützung für HTTP/3 verwendet. Die folgenden Anweisungen beschreiben die Installation von aioquic für die HTTP3-loris- und HTTP3-stream-Angriffe.
Ändern Sie den URL-Parameter auf den des Ziels. Beachten Sie, dass je nach den Fähigkeiten des Zielservers möglicherweise unterschiedliche Werte für die einzelnen Parameter der Exploits erforderlich sind.
Die folgenden Anweisungen beschreiben die Installation von curl für den HTTP3-flooding-Angriff.
Nach der Bash-Verbindung zum Docker führen Sie ./http3-flood.sh aus.
====================================================
MIT Lizenz
Copyright (c) 2022 Efstratios Chatzoglou
Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die „Software“) erhält, kostenlos die Erlaubnis erteilt, die Software ohne Einschränkung zu nutzen, einschließlich und ohne Einschränkung der Rechte zur Verwendung, Vervielfältigung, Modifizierung, Zusammenführung, Veröffentlichung, Verteilung, Unterlizenzierung und/oder zum Verkauf von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies zu gestatten, unter den folgenden Bedingungen:
Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.
DIE SOFTWARE WIRD „WIE BESEHEN“ ZUR VERFÜGUNG GESTELLT, OHNE IRGENDEINE GEWÄHRLEISTUNG, WEDER AUSDRÜCKLICH NOCH IMPLIZIT, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERRECHTSINHABER HAFTBAR FÜR JEGLICHE FORDERUNGEN, SCHÄDEN ODER SONSTIGE VERPFLICHTUNGEN, OB AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE AUS ODER IM ZUSAMMENHANG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ENTSTEHEN.