Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
SilkETW — Envoltorio en C# para ETW que serializa datos de eventos de kernel y modo usuario a JSON para caza de amenazas, análisis de malware y respuesta a incidentes, con integración de Yara y envío a Elasticsearch. | Kitploit
Herramientas/GitHubGitHub/mandiant/silketw
Herramientas DefensivasForensia de MemoriaAnálisis ForenseAnálisis de MalwareForensia DigitalInteligencia de AmenazasDetección de IntrusionesAprendizaje y EducaciónRespuesta a IncidentesDetección de AnomalíasAnálisis de RegistrosArchived
85213920hace 3 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
GitHubmandiant/silketw

SilkETW

Envoltorio en C# para ETW que serializa datos de eventos de kernel y modo usuario a JSON para caza de amenazas, análisis de malware y respuesta a incidentes, con integración de Yara y envío a Elasticsearch.

Ver Repositorio
Compartir

SilkETW y SilkService

SilkETW y SilkService son envoltorios flexibles en C# para ETW, diseñados para abstraer las complejidades de ETW y ofrecer a los usuarios una interfaz simple para realizar investigación e introspección. Aunque ambos proyectos tienen aplicaciones defensivas (y ofensivas) obvias, deben considerarse principalmente como herramientas de investigación.

Para un consumo sencillo, los datos de salida se serializan en JSON. Los datos JSON pueden escribirse en un archivo y analizarse localmente mediante PowerShell, almacenarse en el registro de eventos de Windows o enviarse a infraestructura de terceros como Elasticsearch.

Para obtener más información sobre el futuro de SilkETW y SilkService, consulte la sección Hoja de Ruta.

Medios

Para obtener más antecedentes sobre SilkETW y SilkService, consulte los siguientes recursos.

  • SilkETW: Porque la Telemetría Gratuita es … ¡Gratuita! - aquí
  • SilkETW y SilkService en BlackHat Arsenal 2019 - aquí
  • Caza de Amenazas con eventos ETW y HELK — Parte 1: Instalando SilkETW (por @Cyb3rWard0g) - aquí
  • Caza de Amenazas con eventos ETW y HELK — Parte 2: Enviando eventos ETW a HELK (por @Cyb3rWard0g) - aquí
  • Eventos de todos los proveedores ETW basados en manifiestos y mof en versiones de Windows 10 (por @jdu2600) - aquí
  • Buscando Actividad LDAP Sospechosa con SilkETW y Yara - aquí

Detalles de implementación

Bibliotecas

SilkETW está construido sobre .Net v4.5 y utiliza varias bibliotecas de terceros, como se muestra a continuación. Consulte LICENSE-3RD-PARTY para obtener más detalles.

ModuleId                                 Version LicenseUrl                                                   
--------                                 ------- ----------                                                   
McMaster.Extensions.CommandLineUtils     2.3.2   https://licenses.nuget.org/Apache-2.0                        
Microsoft.Diagnostics.Tracing.TraceEvent 2.0.36  https://github.com/Microsoft/perfview/blob/master/LICENSE.TXT
Newtonsoft.Json                          12.0.1  https://licenses.nuget.org/MIT                               
System.ValueTuple                        4.4.0   https://github.com/dotnet/corefx/blob/master/LICENSE.TXT     
YaraSharp                                1.3.1   https://github.com/stellarbear/YaraSharp/blob/master/LICENSE

SilkETW

Opciones de línea de comandos

El uso desde la línea de comandos es bastante sencillo y la entrada del usuario se valida en el prólogo de ejecución. Consulte la imagen a continuación para obtener más detalles.

Ayuda

SilkService

Advertencia

SilkService fue creado porque muchas personas querían ejecutar SilkETW sin interfaz gráfica y realizar la recolección de ETW de múltiples fuentes al mismo tiempo. Aunque esto tiene un atractivo obvio, se deben tener en cuenta los siguientes puntos.

  • SilkETW y SilkService fueron creados por un ejército de ingeniería de un solo hombre, (@FuzzySec); no cuentan con el respaldo de un departamento de desarrolladores y, por lo tanto, pueden contener errores. Si encuentra errores o ve formas de mejorar estos proyectos, le animamos encarecidamente a que presente tickets y/o envíe solicitudes de extracción.
  • La recolección de ETW puede consumir muchos recursos. No implemente SilkService en una amplia gama de hosts sin realizar pruebas de rendimiento exhaustivas. Asegúrese de que la configuración pueda ejecutarse de manera estable en sus máquinas menos potentes.

Configuración

Después de compilar o descargar el paquete de lanzamiento, puede instalar el servicio ejecutando el siguiente comando desde un símbolo del sistema elevado.

sc create SillkService binPath= "C:\Path\To\SilkService.exe" start= demand

Configuración

SilkService ingiere un archivo de configuración XML, "SilkServiceConfig.xml", que debe colocarse en el mismo directorio que el binario del servicio. A continuación se puede ver un ejemplo de archivo de configuración.

<SilkServiceConfig>
	<!--
		This is a user collector
		-> Microsoft-Windows-DotNETRuntime
		-> GUID or string based name
	-->
	<ETWCollector>
		<Guid>45c82358-c52d-4892-8237-ba001d396fb4</Guid>
		<CollectorType>user</CollectorType>
		<ProviderName>e13c0d23-ccbc-4e12-931b-d9cc2eee27e4</ProviderName>
		<UserKeywords>0x2038</UserKeywords>
		<OutputType>url</OutputType>
		<Path>https://some.elk:9200/NetETW/_doc/</Path>
	</ETWCollector>
	<!--
		This is a user collector
	-->
	<ETWCollector>
		<Guid>6720babc-dedc-4906-86b9-d0bc0089ec50</Guid>
		<CollectorType>user</CollectorType>
		<ProviderName>Microsoft-Windows-DNS-Client</ProviderName>
		<OutputType>eventlog</OutputType>
		<YaraScan>C:\Some\Path\RuleFolder</YaraScan>
		<YaraOptions>Matches</YaraOptions>
	</ETWCollector>
	<!--
		This is a kernel collector
	-->
	<ETWCollector>
		<Guid>21ac2393-3bbb-4702-a01c-b593e21913dc</Guid>
		<CollectorType>kernel</CollectorType>
		<KernelKeywords>Process</KernelKeywords>
		<OutputType>file</OutputType>
		<Path>C:\Users\b33f\Desktop\kproc.json</Path>
	</ETWCollector>
</SilkServiceConfig>

Tenga en cuenta que cada elemento ETWCollector debe tener un GUID aleatorio; esto se utiliza para el seguimiento interno y fines de registro. Puede generar GUID en PowerShell usando el siguiente comando:

PS C:\> [guid]::NewGuid()

Guid
----
eee52b87-3f32-4651-b0c3-e7bb9af334aa

Auditoría

En tiempo de ejecución, SilkService creará una subcarpeta "Logs" para registrar información de ejecución del servicio. Este es un recurso invaluable para consultar el estado del servicio, verificar la validación de parámetros del servicio y revisar información de errores. SilkService prefiere cerrarse sin problemas si encuentra cualquier tipo de error, incluso si dicho error no requiere estrictamente terminación. Esta decisión de diseño se tomó deliberadamente, ya que no es una estrategia sólida tener recolectores colgantes u operabilidad parcial.

¡Consulte siempre el registro del servicio si el servicio se apaga solo!

¿Algo salió mal?

Siempre es posible que algo salga mal. Consulte el registro del servicio para obtener más detalles. Si bien SilkService está configurado para terminar y limpiar los recolectores ETW o error, es posible que un recolector obsoleto permanezca registrado después de la terminación del proceso. Para listar los recolectores en ejecución, puede usar el siguiente comando.

logman -ets

Si se identifican recolectores obsoletos, se pueden eliminar ejecutando los siguientes comandos desde un símbolo del sistema elevado.

Get-EtwTraceProvider |Where-Object {$.SessionName -like "SilkService*"} |ForEach-Object {Stop-EtwTraceSession -Name $.SessionName}
Get-EtwTraceProvider |Where-Object {$_.SessionName -like "SilkService*"} |Remove-EtwTraceProvider

Formato de salida

Estructura de salida JSON

La salida JSON, antes de la serialización, se formatea según la siguiente estructura de C#.

Descargar herramienta