
Este repositorio existe como un arsenal rápido y sucio de métodos y scripts para subvertir la validación de certificados SSL/TLS de .NET en PowerShell y seguir adelante con el hackeo.
#Invoke-SelfSignedWebRequest
Para el trabajo de InfoSec, usar HTTPS es un mecanismo increíblemente práctico para C2 y para maniobrar dentro del espacio de red objetivo. Además, PowerShell es una herramienta de productividad asombrosa que puede ayudar a un operador a lograr resultados dinámicos. Una conclusión natural es combinar el canal C2 (HTTPS) con el generador de efectos (PowerShell). Basta con generar rápidamente un certificado autofirmado y la vida es de maravilla, ¿verdad? Desafortunadamente, resulta que a Microsoft (y por extensión a PowerShell) realmente no le gustan las conexiones SSL protegidas por certificados que no pueden validarse. Hacen todo lo posible por PREVENIR estas conexiones lanzando atroces niveles de mensajes de ERROR.
Este repositorio existe como un arsenal rápido y sucio de métodos y scripts para subvertir esas funciones centradas en la seguridad y ¡seguir con el hackeo!
Mi intención es ir añadiendo nuevos métodos a medida que se me ocurran. ¡Las pull requests son bienvenidas!
##Métodos:
Invoke-SelfSignedWebRequest - Carga el certificado SSL de la URI de destino en el almacén de certificados local y envuelve Invoke-WebRequest. Elimina el certificado al completar la invocación insegura de WebRequest. Alias: wget-ss
Disable-CertificateValidation - Deshabilita la validación de certificados SSL a través del endpoint System.Net.ServicePointManager configurando manualmente ServerCertificateValidationCallback para que devuelva $true. Permite que (New-Object System.Net.WebClient).DownloadFile() se conecte a dominios SSL autofirmados.
Disable-NetSSLValidation - Configura ajustes internos de .NET para deshabilitar la validación de certificados SSL mediante useUnsafeHeaderParsing
Autor: Matthew Toussain (@0sm0s1z) Licencia: BSD 3-Clause