
Colección de herramientas ofensivas en C#
Esta es una colección de herramientas y POCs en C# que he creado para su uso en operaciones. Cada proyecto está diseñado para no utilizar bibliotecas externas. Abra el archivo .SLN de cada proyecto en Visual Studio y compile como "Release".
| Proyecto | Descripción | Versión Mínima de .NET |
|---|---|---|
| AbandonedCOMKeys | Enumera claves COM abandonadas (específicamente InprocServer32). Útil para persistencia, ya que en algunos casos se puede escribir en la ubicación faltante y llamar con rundll32.exe -sta {CLSID}. Técnica referenciada en este artículo de @bohops | 4.0 |
| COMHunter | Enumera los servidores COM configurados en las claves LocalServer32 e InProc32 de un sistema mediante WMI | 4.0 |
| CredPhisher | Solicita al usuario actual sus credenciales mediante la función WinAPI CredUIPromptForWindowsCredentials. Soporta un argumento para proporcionar el texto del mensaje que se mostrará al usuario. | 3.5 |
| DriverQuery | Recopila detalles sobre los controladores del sistema y opcionalmente filtra para encontrar solo aquellos no firmados por Microsoft | 3.5 |
| EncryptedZIP | Comprime un directorio o archivo y luego cifra el archivo ZIP con una clave proporcionada usando AES256 CFB. Este ensamblado también elimina la clave de la memoria usando RtlZeroMemory. Use el programa Decrypter incluido para descifrar el archivo. | 3.5 |
| ETWEventSubscription | Similar a las suscripciones de eventos WMI pero aprovecha el Seguimiento de Eventos para Windows (ETW). Cuando ocurre el evento en el sistema, actualmente cuando un usuario inicia sesión o se inicia un proceso específico, se ejecuta el método DoEvil(). | 4.6 |
| GPSCoordinates | Rastrea las coordenadas GPS del sistema (actualmente precisas dentro de 1 km) si los Servicios de Ubicación están habilitados. Funciona actualmente en Windows 10, pero se espera cubrir todas las versiones 7+. | 4.0 |
| HijackHunter |
| Analiza el encabezado PE de un objetivo para encontrar DLLs listadas vulnerables a secuestro. Proporciona razones y técnicas de abuso para cada oportunidad de secuestro detectada |
| 4.0 |
| HookDetector | Detecta funciones de API nativas con gancho en el proceso actual, indicando la presencia de EDR | 4.0 |
| ImplantSSP | Instala un Proveedor de Soporte de Seguridad (SSP) proporcionado por el usuario en el sistema, que será cargado por LSA al iniciar el sistema. La DLL debe exportar SpLsaModeInitialize. Inspirado en Install-SSP de @mattifestation. | 3.5 |
| InspectAssembly | Inspecciona el CIL de un ensamblado .NET objetivo en busca de llamadas a deserializadores y uso de .NET Remoting para ayudar en el triaje de posibles escaladas de privilegios. | 4.0 |
| JunctionFolder | Crea una carpeta de unión en la carpeta de Inicio de Accesorios de Windows como se describe en las filtraciones de Vault 7. Al iniciar o cuando un usuario navega por el directorio, la DLL referenciada será ejecutada por verclsid.exe en integridad media. | 3.5 |
| MockDirUACBypass | Crea un directorio simulado de confianza, C:\Windows \System32\, y mueve un ejecutable de Windows con auto-elevación al directorio simulado. Se coloca una DLL proporcionada por el usuario que exporta las funciones adecuadas y cuando se ejecuta el ejecutable, la DLL se carga y se ejecuta con alta integridad. Técnica descubierta por @ce2wells y descrita en este artículo. | 3.5 |
| PhantomService | Busca y elimina servicios no ASCII que no pueden ser eliminados fácilmente con las herramientas integradas de Windows. Referencia | 4.0 |
| SessionSearcher | Busca en todas las unidades conectadas claves privadas de PuTTY y archivos de conexión RDP y los analiza para obtener detalles relevantes. Basado en SessionGopher de @arvanaghi. | 4.0 |
| UnquotedPath | Genera una lista de rutas de servicio sin comillas que no están en System32/SysWow64 para plantar un PE. Referencia ATT&CK | 3.5 |