Skip to content
KitploitKITPLOIT
HerramientasBlog
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
ESFang — ESF modular ingestion tool para desarrollo e investigación. | Kitploit
Herramientas/GitHubGitHub/withsecurelabs/esfang
Análisis ForenseForensia DigitalRespuesta a IncidentesAnálisis de Registros
GitHubwithsecurelabs/esfang

ESFang

ESF modular ingestion tool para desarrollo e investigación.

Ver Repositorio
386hace 4 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 →
Compartir

ESFang

Esta es una herramienta diseñada para el consumo modular de eventos del EndpointSecurity Framework (ESF) en el entorno macOS. Es mi intento de superar una serie de problemas encontrados con las herramientas existentes, como la pérdida silenciosa de datos, el consumo estricto de tipos de eventos, la falta de soporte para tipos de datos alternativos y la sobrecarga del manejador de acceso a archivos.

Esta herramienta se apoya en gran medida en el excelente trabajo realizado por Chris Ross, Omark-Ikram y el equipo de Objective-See con sus herramientas ProcessMonitor, Appmon y EndpointSecurityDemo. Mi comprensión fundamental y la aplicabilidad de la ingesta de datos ESF se vieron enormemente mejoradas y puestas en marcha al examinar sus trabajos, que hicieron gran parte del trabajo pesado para hacer posible este desarrollo. Esta herramienta ha intentado extrapolar los mejores elementos de estas herramientas y ampliarlos para permitir una acción de consumo ESF caso por caso según las necesidades del investigador.

Las herramientas existentes, incluidas las más refinadas como Crescendo de FireEye, incurren en una serie de problemas asociados con el propio ESF que, en las pruebas, parecen estar relacionados con la forma en que el cliente ESF ingiere los datos del subsistema. El problema principal encontrado fue la pérdida silenciosa de datos. En las pruebas, cuando se ingerían numerosos tipos de eventos, los resultados comparados con la ingesta de un solo tipo de evento mostraban una disparidad en los datos acumulados. En las pruebas, los eventos críticos relacionados con actividad maliciosa no estaban en el conjunto de datos adquirido que sí estaba presente en la ingesta de un solo tipo de evento.

El propósito principal de esta herramienta era triple:

  • Crear una herramienta que evitara el problema de la pérdida silenciosa de datos
  • Permitir la especificación de recopilación de eventos caso por caso
  • Ser ampliable e integrable en sistemas de monitoreo

Con este fin, la herramienta permite al usuario especificar qué tipos de eventos desea recopilar durante las operaciones entre los 51 tipos de eventos NOTIFY disponibles (los tipos de eventos AUTH se omitieron para esta herramienta). Esto significa que los investigadores pueden apuntar a tipos de eventos específicos relacionados con las operaciones particulares que desean monitorear, además de ayudar a reducir la pérdida silenciosa de datos asociada al disminuir la cantidad total de tipos de eventos recopilados por el cliente.

La salida de datos se distribuye en archivos de registro individuales por tipo de evento, que a su vez se agrupan en archivos de género de eventos como procesos, archivos, sockets, etc. Todos los registros se escriben en JSON para facilitar su ingesta y los usuarios pueden ampliarlos modificando el código fuente para recopilar campos adicionales descritos en la documentación de tipos de eventos proporcionada por Apple.

NOTAS FUTURAS -

Para prevenir la pérdida silenciosa de datos, una solución potencial sería usar múltiples hilos en la herramienta para permitir que varios clientes ESF se ejecuten simultáneamente, recopilando cada uno un subconjunto de los tipos de eventos. Esto podría potencialmente superar el umbral interno que se alcanza y que causa la pérdida de datos observada. Simplemente no tuve tiempo de implementar los controles adicionales para esto.

CÓMO USAR

¡Requiere que SIP esté deshabilitado!

  • Desafortunadamente, como este es un código POC de desarrollo, no podrá usarlo con SIP habilitado, ya que el acceso al subsistema ESF está restringido a binarios firmados. Como no está firmado, SIP debe estar deshabilitado para su uso. Por lo tanto, úselo solo en máquinas que no sean de producción.

  • Hay tres tipos de ejecución: puede especificar el ID de un event_id del archivo de configuración, especificar un group_id del archivo de configuración, o puede hacer referencia al archivo de configuración con las líneas de los ID de tipos de eventos o grupos sin comentar.

  • Ejemplo 1 = Recopilar solo eventos ES_EVENT_TYPE_NOTIFY_EXEC: ./ESFang -id 2

  • Ejemplo 2 = Recopilar eventos del género Archivo: ./ESFang -group 2

  • Ejemplo 3 = Recopilar tipos de eventos o grupos especificados por el archivo de configuración: ./ESFang -config ./ESF_config.txt

NOTA SOBRE EL FILTRO CODIFICADO

Dentro del código fuente hay un filtro de procesos codificado que se encuentra en las líneas 460 - 469. Este filtro se puede manipular para capturar un PID, PPID o nombre de proceso específico. Se agregó como una solución "chapucera" para fines de filtrado específicos. Los intentos de hacerlo dinámico desde la línea de comandos para alimentar a Inspector fallaron. Así que se dejó codificado.

NOTA SOBRE EL MUTER DE PROCESOS CODIFICADO

Dentro del código fuente hay una capacidad de silenciamiento de procesos codificada que se encuentra en las líneas 471 - 491. Este filtro se puede usar para silenciar la captura de eventos específicos según la ruta del proceso o del proceso padre, respectivamente. Debe usarse con precaución, ya que todos los procesos que coincidan con el nombre especificado serán silenciados si el proceso o el padre de cualquier actividad coincide. Esto estaba en pruebas beta cuando se publicó.

Descargar herramienta