Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2022-0778-POC — Remote Proof-of-Concept für CVE-2022-0778, der ein manipuliertes Zertifikat in einen TLS-Handshake einschleust, um die OpenSSL-BN_mod_sqrt()-Denial-of-Service-Schwachstelle auszulösen. | Kitploit
Tools/GitHubGitHub/jkakavas/cve-2022-0778-poc
SchwachstellenanalyseExploitationFuzzingPenetrationstests
GitHubjkakavas/cve-2022-0778-poc

CVE-2022-0778-POC

Remote Proof-of-Concept für CVE-2022-0778, der ein manipuliertes Zertifikat in einen TLS-Handshake einschleust, um die OpenSSL-BN_mod_sqrt()-Denial-of-Service-Schwachstelle auszulösen.

Repository anzeigen
11324vor 4 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Ein einfacher Remote-Trigger-POC für CVE-2022-0778

Warum

Während wir versuchten zu überprüfen, ob Serverimplementierungen auf unserer Seite gegenüber CVE-2022-0778 anfällig waren/sind, erwies es sich als äußerst mühsam, dies remote zu tun. Anleitungen zum Erstellen manipulierter Zertifikate, die den Parsing-Fehler in BN_nod_sqrt() auslösen, gibt es schon seit einiger Zeit, aber das Hauptproblem ist, dass die meisten Client-Implementierungen versuchen würden, das Client-Zertifikat zu parsen, um es im TLS-Handshake zu verwenden. Das wiederum bedeutete:

  • wenn die Implementierung anfällig war, wurde der Fehler ausgelöst und der Client verbrauchte 100% CPU und blieb stehen.
  • wenn die Implementierung nicht anfällig war, konnte das Zertifikat nicht geparst werden und der Client würde, zu Recht, abbrechen.

Was

Was eigentlich benötigt wurde, war die Möglichkeit, eine Nachricht in den TLS-Handshake einzuschleusen, um den Inhalt der Certificate-Nachricht zu ersetzen, die der Client als Antwort auf die CertificateRequest-Nachricht an den Server sendet.

Wie

Dies hängt von tlslite-ng ab und überschreibt die TLSConnection._clientKeyExchange-Methode, sodass während eines TLS-Handshakes mit einem möglicherweise anfälligen Server:

  1. Wir senden eine ClientHello-Nachricht, wie wir es normalerweise tun
  2. Wir verarbeiten die ServerHelloMessage und prüfen, ob sie eine CertificateRequest enthält
  • Falls ja, konstruieren wir eine beliebige Certificate-Nachricht und laden das DER-kodierte manipulierte Zertifikat von der Festplatte
  • Wir senden die manipulierte Nachricht an den Server und erwarten, dass er sie parst, wodurch möglicherweise CVE-2022-0778 ausgelöst wird
  • Die crafted.crt wird anhand der Anweisungen unter https://github.com/drago-96/CVE-2022-0778#using-asn1-templates erstellt, du kannst sie bei Bedarf gerne neu erstellen.

    Verwendung

    root@kitploit:~
    usage: main.py [-h] [--server SERVER] [--port PORT]
    
    Parameters
    
    optional arguments:
      -h, --help       show this help message and exit
      --server SERVER  Name of the server to connect for the TLS handshake,
                       defaults to "localhost"
      --port PORT      Port where server listens for TLS connections, defaults to
                       "443"
    
    Tool herunterladen