
Este repositório existe como um arsenal rápido e sujo de métodos e scripts para subverter a validação de certificados SSL/TLS do .NET no PowerShell e seguir em frente com o hack!
#Invoke-SelfSignedWebRequest
Para trabalho em InfoSec, usar HTTPS é um mecanismo incrivelmente útil para C2 e manobra dentro do espaço da rede alvo. Além disso, PowerShell é uma ferramenta de produtividade incrível que pode ajudar um operador a alcançar resultados dinâmicos. Uma próxima conclusão natural é combinar o canal C2 (HTTPS) com o gerador de efeitos (PowerShell). Basta gerar rapidamente um certificado autoassinado e a vida fica uma maravilha, certo? Infelizmente, como se vê, a Microsoft (e por extensão o PowerShell) realmente não gosta de conexões SSL protegidas por certificados que não podem ser validados. Eles fazem de tudo para PREVENIR essas conexões, lançando níveis hediondos de mensagens de ERRO. Este repositório existe como um arsenal rápido e sujo de métodos e scripts para subverter esses recursos focados em segurança e seguir com o hack!
Minha intenção é adicionar novos métodos à medida que vierem à mente. Pull requests são bem-vindos!
##Métodos:
Invoke-SelfSignedWebRequest - Carrega o certificado SSL da URI alvo no repositório de certificados local e envolve o Invoke-WebRequest. Remove o certificado ao concluir a invocação insegura do WebRequest. Apelidado de wget-ss
Disable-CertificateValidation - Desabilita a validação de certificado SSL por meio do endpoint System.Net.ServicePointManager, configurando manualmente o ServerCertificateValidationCallback para retornar $true. Permite que (New-Object System.Net.WebClient).DownloadFile() se conecte a domínios SSL autoassinados.
Disable-NetSSLValidation - Ajusta as configurações internas do .NET para desabilitar a validação de certificado SSL via useUnsafeHeaderParsing
Autor: Matthew Toussain (@0sm0s1z) Licença: BSD 3-Clause