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
kaiju — CERT Kaiju es una extensión de marco de análisis binario para el conjunto de herramientas de ingeniería inversa de software Ghidra. Este repositorio es un "espejo" -- por favor, presente tickets, informes de errores o solicitudes de extracción en el repositorio upstream en @CERTCC: https://github.com/certcc/kaiju | Kitploit
Herramientas/GitHubGitHub/cmu-sei/kaiju
Análisis EstáticoIngeniería InversaAnálisis de MalwareAnálisis de BinariosAnálisis de Firmware
GitHubcmu-sei/kaiju

kaiju

Ver Repositorio
14439hace 5 mesesRevisado 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 →

Acerca de

CERT Kaiju es una extensión de marco de análisis binario para el conjunto de herramientas de ingeniería inversa de software Ghidra. Este repositorio es un "espejo" -- por favor, presente tickets, informes de errores o solicitudes de extracción en el repositorio upstream en @CERTCC: https://github.com/certcc/kaiju

Sitio web
Compartir

Dynamic YAML Badge release_on_tag Badge run_tests_on_push_pr Badge

CERT Kaiju Marco de Análisis Binario para GHIDRA

CERT Kaiju es una colección de herramientas de análisis binario para Ghidra.

Se trata de una implementación en Ghidra/Java de algunas características de CERT Pharos Binary Analysis Framework, particularmente las herramientas de hashing de funciones y análisis de malware, pero se espera que crezca con nuevas herramientas y capacidades con el tiempo.

Como este es un esfuerzo nuevo, esta implementación aún no tiene una paridad completa de funcionalidades con la implementación original en C++ basada en ROSE; sin embargo, el cambio a Java y Ghidra ha permitido algunas nuevas funcionalidades no disponibles en el marco original — notablemente, un mejor manejo de arquitecturas que no son x86. Dado que se está realizando un rediseño significativo del marco y las herramientas, y que el cambio a Java y Ghidra permite capacidades diferentes a las de la implementación en C++, se tomó la decisión de utilizar una nueva marca para reducir la confusión entre implementaciones al discutir las diferentes herramientas y capacidades.

Nuestra intención para el futuro cercano es mantener tanto el marco original de Pharos como Kaiju, lado a lado, ya que ambos pueden proporcionar funcionalidades y capacidades únicas.

ADVERTENCIA: Al ser un prototipo, pueden surgir muchos problemas al evaluar los hashes de funciones creados por este plugin. Por ejemplo, a diferencia de la implementación de Pharos, el módulo de hashing de funciones de Kaiju creará hashes para funciones muy pequeñas (por ejemplo, aquellas con una sola instrucción como RET, lo que provoca muchas más colisiones no intencionadas). Como resultado, los resultados analíticos pueden variar entre este plugin y Pharos fn2hash.

Instalación

Paquetes precompilados de Kaiju están disponibles. Simplemente descargue el archivo ZIP correspondiente a su versión de Ghidra e instálelo según las instrucciones a continuación. Se recomienda instalarlo a través de la interfaz gráfica de Ghidra, pero también es posible descomprimirlo manualmente en el directorio adecuado para instalarlo.

CERT Kaiju requiere las siguientes dependencias en tiempo de ejecución:

  • Ghidra 10.3.x, 10.4.x, 11.0.x, 11.1.x, 11.2.x, 11.3.x, 11.4.x, 12.0.x
  • JDK 21 (o 17 para versiones antiguas de Ghidra)
  • Z3 incluyendo el .jar de bindings de Java de Z3

Z3 se proporciona precompilado como parte de los paquetes precompilados, o puede compilar Z3 por su cuenta o usar el paquete de su distribución Linux.

Instalación Gráfica

Inicie Ghidra, y desde la ventana de apertura, seleccione en el menú: File > Install Extension. Haga clic en el signo más en la parte superior de la ventana de extensiones, navegue y seleccione el archivo .zip en el explorador de archivos y presione OK. La extensión se instalará y aparecerá una casilla marcada junto al nombre de la extensión en la ventana para indicar que está instalada y lista.

La interfaz le pedirá que reinicie Ghidra para comenzar a usar la extensión. Simplemente reinicie, y las funciones adicionales de Kaiju estarán disponibles para uso interactivo o en scripts.

Alguna funcionalidad puede requerir habilitar los plugins de Kaiju. Para ello, abra el Code Browser y luego navegue al menú File > Configure. En la ventana que aparece, haga clic en el enlace Configure debajo del icono de la categoría "CERT Kaiju". Aparecerá una ventana emergente con todos los plugins de Kaiju disponibles públicamente. Marque cualquier plugin que desee activar y luego presione OK. Ahora tendrá acceso a las funcionalidades interactivas de los plugins.

Si un plugin no es visible inmediatamente después de habilitarlo, puede encontrarlo en el menú Window del Code Browser.

Versiones "alpha" experimentales de herramientas futuras pueden estar disponibles en la categoría "Experimental" si desea probarlas. Sin embargo, estos plugins son definitivamente experimentales, no tienen soporte y no se recomiendan para uso en producción. ¡Agradecemos sus comentarios tempranos!

Instalación Manual

Las extensiones de Ghidra como Kaiju también pueden instalarse manualmente descomprimiendo el contenido de la extensión en el directorio adecuado de su instalación de Ghidra. Para más información, consulte The Ghidra Installation Guide.

Compilarlo Usted Mismo

También puede compilar la extensión Kaiju directamente desde el código fuente. Consulte el archivo INSTALL.md incluido en el directorio raíz del código fuente de Kaiju.

Uso

Las herramientas de Kaiju pueden usarse de manera gráfica interactiva, o mediante un modo "headless" más adecuado para trabajos por lotes. Algunas herramientas pueden estar disponibles solo para uso gráfico o headless, según la naturaleza de la herramienta.

Interfaz Gráfica Interactiva

Kaiju crea una interfaz gráfica interactiva (GUI) dentro de Ghidra utilizando Java Swing y la arquitectura de plugins de Ghidra.

La mayoría de las herramientas de Kaiju son en realidad plugins de Análisis que se ejecutan automáticamente cuando se selecciona la opción "Auto Analysis", ya sea al importar un nuevo ejecutable para desensamblar, o eligiendo directamente Analysis > Auto Analyze... desde la ventana del code browser. Verá varios plugins de análisis de CERT seleccionados por defecto en la herramienta Auto Analyze, pero puede habilitar/deshabilitar según lo desee.

Sin embargo, las herramientas de Análisis deben ejecutarse antes de que funcionen las diversas herramientas GUI. En algunos casos excepcionales, puede ser útil ejecutar el Auto Analysis dos veces para asegurar que se produzcan todos los metadatos necesarios para crear una partición y desensamblado correctos, lo que a su vez puede influir en los resultados de hashing.

Los analizadores se ejecutan automáticamente durante la fase de análisis de Ghidra e incluyen:

  • DisasmImprovements = mejora la partición de funciones del desensamblado en comparación con la partición estándar de Ghidra.
  • Fn2Hash = calcula hashes de funciones para todas las funciones en un programa y se utiliza para generar firmas YARA para programas.

Las herramientas GUI incluyen:

  • GhiHorn = un plugin para calcular caminos y alcanzabilidad en grafos de flujo de control, utilizando Z3.
    • Seleccione Kaiju > GhiHorn para acceder a esta herramienta desde el CodeBrowser de Ghidra. También puede iniciar el plugin presionando CTRL-G.
  • Function Hash Viewer = un plugin que muestra una lista interactiva de funciones en un programa y varios tipos de hashes. Los analistas pueden usarlo para exportar una o más funciones de un programa a firmas YARA.
    • Seleccione Window > CERT Kaiju Function Hash Viewer del menú para comenzar con esta herramienta si aún no está visible. Aparecerá una nueva ventana mostrando una tabla de hashes y otros datos. Los botones en la parte superior de la ventana pueden actualizar la tabla o exportar datos a un archivo o una firma YARA. Esta ventana también puede acoplarse al CodeBrowser principal de Ghidra para un uso más fácil junto con otros plugins. Documentación de uso más extensa se puede encontrar en el menú Help > Contents de Ghidra al usar la herramienta.
  • OOAnalyzer JSON Importer = un plugin que puede cargar, analizar y aplicar resultados de OOAnalyzer generados por Pharos a ejecutables de C++ orientados a objetos en un proyecto de Ghidra. Al iniciarse, el plugin solicitará al usuario el archivo de salida JSON producido por OOAnalyzer que contiene información sobre clases de C++ recuperadas. Después de cargar el archivo JSON, los tipos de datos y símbolos de C++ recuperados encontrados por OOAnalyzer se actualizan en el Code Browser de Ghidra. El diseño y los detalles de implementación del plugin se describen en nuestra entrada de blog de SEI titulada Using OOAnalyzer to Reverse Engineer Object Oriented Code with Ghidra.
    • Seleccione Kaiju > OOAnalyzer Importer del menú para comenzar con esta herramienta. Un cuadro de diálogo simple le pedirá que localice el archivo JSON que desea importar. Documentación de uso más extensa se puede encontrar en el menú de Ghidra al usar la herramienta.

Modo "Headless" de Línea de Comandos

Ghidra también admite un modo "headless" que permite ejecutar herramientas en algunas circunstancias sin usar la GUI interactiva. Estos comandos pueden utilizarse para scripting y trabajos en "modo por lotes" de grandes cantidades de archivos.

Las herramientas headless se basan en gran medida en la funcionalidad GhidraScript de Ghidra.

Las herramientas headless incluyen:

  • fn2hash = ejecuta automáticamente Fn2Hash en un programa dado y exporta todos los hashes a un archivo CSV especificado
  • fn2yara = ejecuta automáticamente Fn2Hash en un programa dado y exporta todos los datos de hash como firmas YARA al archivo especificado
  • fnxrefs = analiza un Programa y exporta una lista de Funciones basadas en la dirección de punto de entrada que tienen referencias cruzadas en datos u otras partes del Programa

Se ha incluido un script de lanzamiento simple llamado kaijuRun para ejecutar estos comandos headless en escenarios simples, como generar los hashes de funciones para cada función en un solo ejecutable. Suponiendo que la variable GHIDRA_INSTALL_DIR está configurada, se podría por ejemplo ejecutar el script de lanzamiento en un solo ejecutable de la siguiente manera:

root@kitploit:~
$GHIDRA_INSTALL_DIR/Ghidra/Extensions/kaiju/kaijuRun fn2hash example.exe

Este comando generaría los resultados en un archivo con nombre automático como example.exe.Hashes.csv.

La ayuda básica para el script kaijuRun está disponible ejecutando:

root@kitploit:~
$GHIDRA_INSTALL_DIR/Ghidra/Extensions/kaiju/kaijuRun --help

Consulte el archivo docs/HeadlessKaiju.md en el repositorio para obtener más información sobre el uso de este modo y el script de lanzamiento kaijuRun.

Documentación y Ayuda Adicional

Hay documentación y ayuda más completas disponibles, en uno de dos formatos.

Consulte el directorio docs/ para documentación en formato Markdown y ayuda para todas las herramientas y componentes de Kaiju. Estos documentos son fáciles de mantener, editar y leer incluso desde la línea de comandos.

Alternativamente, puede encontrar la misma documentación en el sistema de ayuda integrado de Ghidra. Para acceder a estos documentos de ayuda, desde el menú de Ghidra, vaya a Help > Contents y luego seleccione CERT Kaiju en el árbol de navegación del lado izquierdo de la ventana de ayuda.

Tenga en cuenta que la documentación de ayuda de Ghidra es exactamente el mismo contenido que los archivos Markdown en el directorio docs/; gracias a un plugin gradle integrado, gradle analizará automáticamente el Markdown y lo exportará a HTML de Ghidra durante el proceso de compilación. Esto permite un mantenimiento aún más simple (actualizar documentos en un solo lugar, no dos) y mantiene ambos sincronizados.

Toda la documentación nueva debe agregarse al directorio docs/.

Licencia

Este software está licenciado bajo una licencia de estilo BSD simplificada por el Software Engineering Institute de Carnegie Mellon University. Encuentre los detalles completos de esta licencia, así como los términos de licencia de las dependencias utilizadas en este proyecto, en el archivo LICENSE.md en la raíz de este repositorio.

El logotipo de CERT Kaiju está basado en arte creado por Cameron Spahn, originalmente publicado bajo los términos de la Creative Commons Attribution-Share Alike 4.0 International license.

Descargar herramienta
Help > Contents