
Ce dépôt est un arsenal rapide et sale de méthodes et de scripts pour contourner la validation des certificats SSL/TLS .NET dans PowerShell et poursuivre le hack !
#Invoke-SelfSignedWebRequest
Pour le travail en InfoSec, l'utilisation de HTTPS est un mécanisme incroyablement pratique pour le C2 et la manœuvre dans l'espace réseau cible. En outre, PowerShell est un outil de productivité étonnant qui peut aider un opérateur à obtenir des résultats dynamiques. La suite logique est de combiner le canal C2 (HTTPS) avec le générateur d'effets (PowerShell). Il suffit de générer rapidement un certificat auto-signé et la vie est belle, non ? Malheureusement, il s'avère que Microsoft (et par extension PowerShell) n'apprécie vraiment pas les connexions SSL sécurisées par des certificats qui ne peuvent pas être validés. Ils font tout leur possible pour EMPÊCHER ces connexions en balançant des quantités abominables de messages d'ERREUR. Ce dépôt est un arsenal rapide et sale de méthodes et de scripts pour contourner ces fonctionnalités axées sur la sécurité et poursuivre le hack !
Mon intention est d'ajouter de nouvelles méthodes au fur et à mesure qu'elles me viennent à l'esprit. Les pull requests sont les bienvenues !
##Méthodes :
Invoke-SelfSignedWebRequest - Charge le certificat SSL de l'URI cible dans le magasin de certificats local et encapsule Invoke-WebRequest. Supprime le certificat à la fin de l'invocation WebRequest non sécurisée. Alias : wget-ss
Disable-CertificateValidation - Désactive la validation des certificats SSL via le point de terminaison System.Net.ServicePointManager en configurant manuellement le ServerCertificateValidationCallback pour qu'il retourne $true. Permet à (New-Object System.Net.WebClient).DownloadFile() de se connecter à des domaines SSL auto-signés.
Disable-NetSSLValidation - Configure les paramètres internes de .NET pour désactiver la validation des certificats SSL via useUnsafeHeaderParsing
Auteur : Matthew Toussain (@0sm0s1z) Licence : BSD 3-Clause