
Coleção de ferramentas ofensivas em C#
Esta é uma coleção de ferramentas e POCs em C# que criei para uso em operações. Cada projeto é projetado para não usar bibliotecas externas. Abra o .SLN de cada projeto no Visual Studio e compile como "Release".
| Projeto | Descrição | Versão Mínima do .NET |
|---|---|---|
| AbandonedCOMKeys | Enumera chaves COM abandonadas (especificamente InprocServer32). Útil para persistência, pois você pode, em alguns casos, escrever no local ausente e chamar com rundll32.exe -sta {CLSID}. Técnica referenciada em este post por @bohops | 4.0 |
| COMHunter | Enumera servidores COM definidos nas chaves LocalServer32 e InProc32 em um sistema usando WMI | 4.0 |
| CredPhisher | Solicita ao usuário atual suas credenciais usando a função WinAPI CredUIPromptForWindowsCredentials. Suporta um argumento para fornecer o texto da mensagem que será mostrado ao usuário. | 3.5 |
| DriverQuery | Coleta detalhes sobre drivers no sistema e opcionalmente filtra para encontrar apenas aqueles não assinados pela Microsoft | 3.5 |
| EncryptedZIP | Comprime um diretório ou arquivo e depois criptografa o arquivo ZIP com uma chave fornecida usando AES256 CFB. Este assembly também limpa a chave da memória usando RtlZeroMemory. Use o programa Decrypter incluído para descriptografar o arquivo. | 3.5 |
| ETWEventSubscription | Semelhante a assinaturas de eventos WMI, mas utiliza o Event Tracing for Windows. Quando o evento no sistema ocorre, atualmente quando qualquer usuário faz login ou um processo específico é iniciado, o método DoEvil() é executado. | 4.6 |
| GPSCoordinates | Rastreia as coordenadas GPS do sistema (precisão dentro de 1km atualmente) se os Serviços de Localização estiverem ativados. Funciona no Windows 10 atualmente, mas espera cobrir todas as versões 7+. | 4.0 |
| HijackHunter | Analisa o cabeçalho PE de um alvo para encontrar DLLs vinculadas vulneráveis a sequestro. Fornece raciocínio e técnicas de abuso para cada oportunidade de sequestro detectada |
| 4.0 |
| HookDetector | Detecta funções Native API com hook no processo atual, indicando a presença de EDR | 4.0 |
| ImplantSSP | Instala uma DLL de Security Support Provider (SSP) fornecida pelo usuário no sistema, que será carregada pelo LSA na inicialização do sistema. A DLL deve exportar SpLsaModeInitialize. Inspirado por Install-SSP por @mattifestation. | 3.5 |
| InspectAssembly | Inspeciona o CIL de um assembly .NET alvo em busca de chamadas para desserializadores e uso de .NET remoting para auxiliar na triagem de possíveis escalonamentos de privilégio. | 4.0 |
| JunctionFolder | Cria uma pasta de junção na pasta Inicializar dos Acessórios do Windows, conforme descrito nos vazamentos do Vault 7. Na inicialização ou quando um usuário navega pelo diretório, a DLL referenciada será executada por verclsid.exe em integridade média. | 3.5 |
| MockDirUACBypass | Cria um diretório confiável simulado, C:\Windows \System32\, e move um executável do Windows com auto-elevação para o diretório simulado. Uma DLL fornecida pelo usuário que exporta as funções apropriadas é descartada e, quando o executável é executado, a DLL é carregada e executada como alta integridade. Técnica descoberta por @ce2wells e descrita em este post. | 3.5 |
| PhantomService | Pesquisa e remove serviços não-ASCII que não podem ser facilmente removidos por ferramentas internas do Windows. Referência | 4.0 |
| SessionSearcher | Pesquisa em todas as unidades conectadas por chaves privadas PuTTY e arquivos de conexão RDP e os analisa em busca de detalhes relevantes. Baseado em SessionGopher por @arvanaghi. | 4.0 |
| UnquotedPath | Produz uma lista de caminhos de serviço sem aspas que não estão em System32/SysWow64 para plantar um PE. Referência ATT&CK | 3.5 |