
Dieses Repository existiert als eine schnelle und schmutzige Sammlung von Methoden und Skripten, um die .NET SSL/TLS-Zertifikatsprüfung in PowerShell zu umgehen und mit dem Hack fortzufahren!
#Invoke-SelfSignedWebRequest
Für InfoSec-Arbeiten ist HTTPS ein äußerst praktischer Mechanismus für C2 und Manöver im Zielnetzwerk. Darüber hinaus ist PowerShell ein erstaunliches Produktivitätstool, das einem Operator helfen kann, dynamische Ergebnisse zu erzielen. Eine natürliche Schlussfolgerung ist es, den C2-Kanal (HTTPS) mit dem Effektgenerator (PowerShell) zu kombinieren. Einfach ein schnelles selbstsigniertes Zertifikat erstellen und das Leben ist in bester Ordnung, oder? Leider mag Microsoft (und damit auch PowerShell) SSL-Verbindungen, die durch Zertifikate gesichert werden, die nicht validiert werden können, überhaupt nicht. Sie tun alles, um diese Verbindungen zu VERHINDERN, indem sie horrende Fehlermeldungen auswerfen. Dieses Repository existiert als schnelle und schmutzige Sammlung von Methoden und Skripten, um diese sicherheitsorientierten Funktionen zu umgehen und mit dem Hack fortzufahren!
Ich beabsichtige, neue Methoden hinzuzufügen, sobald sie mir einfallen. Pull-Requests sind willkommen!
##Methoden:
Invoke-SelfSignedWebRequest - Lädt das SSL-Zertifikat der Ziel-URI in den lokalen Zertifikatsspeicher und umschließt Invoke-WebRequest. Entfernt das Zertifikat nach Abschluss der unsicheren WebRequest-Aufrufe. Alias: wget-ss
Disable-CertificateValidation - Deaktiviert die SSL-Zertifikatsvalidierung über den System.Net.ServicePointManager-Endpunkt, indem der ServerCertificateValidationCallback manuell so konfiguriert wird, dass er $true zurückgibt. Ermöglicht es (New-Object System.Net.WebClient).DownloadFile(), eine Verbindung zu selbstsignierten SSL-Domänen herzustellen.
Disable-NetSSLValidation - Konfiguriert interne .NET-Einstellungen, um die SSL-Zertifikatsvalidierung über useUnsafeHeaderParsing zu deaktivieren
Author: Matthew Toussain (@0sm0s1z) License: BSD 3-Clause