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
halogen — Crea automáticamente reglas YARA a partir de documentos maliciosos. | Kitploit
Herramientas/GitHubGitHub/target/halogen
Análisis EstáticoAnálisis ForenseAnálisis de MalwareInteligencia de AmenazasRespuesta a IncidentesArchived
GitHubtarget/halogen

halogen

Crea automáticamente reglas YARA a partir de documentos maliciosos.

Ver Repositorio
211305hace 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

Halogen


Halogen es una herramienta para automatizar la creación de reglas YARA basadas en los archivos de imagen incrustados dentro de un documento malicioso. Esto puede ayudar a los profesionales de ciberseguridad a escribir reglas de detección para amenazas maliciosas, así como ayudar a los respondedores a identificar la amenaza particular con la que están tratando. Actualmente, Halogen es capaz de crear reglas basadas en archivos JPG y PNG.


Recorrido de Halogen

Ayuda de Halogen

root@kitploit:~
python3 halogen.py -h
usage: halogen.py [-h] [-f FILE] [-d DIR] [-n NAME] [--png-idat] [--jpg-sos] [--jpg-sof2sos] [--jpg-jump] [-c CONTAINER] [--clam] [--rprefix RPREFIX]

Halogen: Automatically create yara rules based on images embedded in office documents.

optional arguments:
  -h, --help            show this help message and exit
  -f FILE, --file FILE  File to parse
  -d DIR, --directory DIR
                        directory to scan for image files.
  -n NAME, --rule-name NAME
                        specify a custom name for the rule file
  --png-idat            For PNG matches, instead of starting with the PNG file header, start with the IDAT chunk.
  --jpg-sos             For JPG matches, skip over the header and look for the Start of Scan marker, and begin the match there.
  --jpg-sof2sos         for JPG matches, skip over the header and match the SOF all the way to the SOS + 45 bytes of the data within the SOS.
  --jpg-jump            for JPG matches, skip over the header and identify the sof, the sos and then read the actual image data take that data and look for repeated bytes. Skip those bytes and then
                        create 45 bytes of raw image data.
  -c CONTAINER, --container CONTAINER
                        specify a clamav container type defaults to CL_TYPE_MSOLE2, CL_TYPE_OOXML_WORD, CL_TYPE_OOXML_XL, CL_TYPE_OOXML_PPT
  --clam                generate a clam rule instead of a yara rule
  --rprefix RPREFIX     specify a clamav ruleset prefix


Descargar herramienta

Probándolo

Hemos incluido algunos archivos de documento de prueba con imágenes incrustadas para que puedas probarlo. Ejecutar python3 halogen/halogen.py -d tests/ > /tmp/halogen_test.yara producirá el archivo YARA de prueba que contiene todas las imágenes encontradas dentro de los archivos del directorio tests/.
Luego puedes ejecutar yara -d /tmp/halogen_test.yara tests/ y observar qué imágenes coinciden con qué archivos.

Notas

  1. Usamos dos patrones para la coincidencia JPG. Uno es menos estricto que el encabezado típico de archivo JPG, y lo usamos porque hemos visto algunos archivos maliciosos que coinciden con este patrón. Si Halogen encuentra ambos, escribirá por defecto la coincidencia más estricta. Normalmente, estos tienen el mismo contenido coincidente, por lo que no se pierde ninguna detección.
  2. Para archivos PNG, puedes optar por comenzar por defecto en el encabezado del archivo, o con --png-idat puedes comenzar en el chunk IDAT encontrado dentro de un archivo PNG. También redujimos los bytes devueltos al coincidir con el chunk IDAT.
  3. Similar a lo anterior, puedes iniciar coincidencias JPG en el marcador Start of Scan usando el flag --jpg-sos.
  4. Debido a cómo funciona la sección SOS del archivo JPG, también hemos incluido un flag opcional --jpg-sof2sos, que lee el marcador Start of Frame (SOF) hasta que se encuentra el SOS, y luego lee 45 bytes adicionales. Esto es útil si el estándar --jpg-sos te da falsos positivos.
  5. En un esfuerzo por reducir falsos positivos, hemos añadido el flag --jpg-jump que lee los datos de imagen comprimidos y crea un salto hexadecimal en la salida YARA si encuentra bytes de imagen repetidos. Esto nos permite coincidir con el SOF y SOS del archivo, así como con algunos de los datos más únicos en la imagen.

Contribuciones

Por favor, envía pull requests en python3 e informa cualquier error que encuentres como issues.