
이 저장소는 PowerShell에서 .NET SSL/TLS 인증서 검증을 우회하고 해킹을 계속 진행하기 위한 빠르고 간편한 방법과 스크립트 모음입니다.
#Invoke-SelfSignedWebRequest
InfoSec 작업에서 HTTPS를 사용하는 것은 C2 및 대상 네트워크 공간 내에서 기동을 위한 매우 편리한 메커니즘입니다. 또한 PowerShell은 운영자가 동적 결과를 얻을 수 있도록 도와주는 놀라운 생산성 도구입니다. 자연스러운 다음 결론은 C2 채널(HTTPS)과 효과 생성기(PowerShell)를 결합하는 것입니다. 빠른 자체 서명 인증서를 생성하면 모든 것이 순조로울까요? 불행히도 Microsoft(그리고 확장하여 PowerShell)는 유효성을 검사할 수 없는 인증서로 보호되는 SSL 연결을 정말 싫어합니다. 그들은 극악한 수준의 오류 메시지를 던져 이러한 연결을 차단하기 위해 노력합니다. 이 저장소는 이러한 보안 중심 기능을 우회하고 해킹을 계속하기 위한 빠르고 간단한 무기고로서의 방법과 스크립트 모음입니다. 새로운 방법이 떠오르면 추가할 예정입니다. Pull Request 환영합니다!
##방법:
Invoke-SelfSignedWebRequest - 대상 URI의 SSL 인증서를 로컬 인증서 저장소에 로드하고 Invoke-WebRequest를 래핑합니다. 안전하지 않은 WebRequest 호출이 완료되면 인증서를 제거합니다. 별칭: wget-ss
Disable-CertificateValidation - ServerCertificateValidationCallback을 수동으로 구성하여 $true를 반환하도록 설정함으로써 System.Net.ServicePointManager 엔드포인트를 통해 SSL 인증서 유효성 검사를 비활성화합니다. (New-Object System.Net.WebClient).DownloadFile()이 자체 서명 SSL 도메인에 연결할 수 있도록 합니다.
Disable-NetSSLValidation - useUnsafeHeaderParsing을 통해 SSL 인증서 유효성 검사를 비활성화하도록 내부 .NET 설정을 구성합니다.
작성자: Matthew Toussain (@0sm0s1z) 라이선스: BSD 3-Clause