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
NeuroCore — NeuroCore es una aplicación nativa de macOS que visualiza la estructura interna de archivos binarios mediante un mapeo de Curva de Hilbert y el cálculo de entropía de Shannon, acelerado por Metal Compute Shaders. | Kitploit
Herramientas/GitHubGitHub/farukalpay/neurocore
Análisis EstáticoIngeniería InversaAnálisis ForenseAnálisis de MalwareForensia DigitalAnálisis de Binarios
GitHubfarukalpay/neurocore

NeuroCore

NeuroCore es una aplicación nativa de macOS que visualiza la estructura interna de archivos binarios mediante un mapeo de Curva de Hilbert y el cálculo de entropía de Shannon, acelerado por Metal Compute Shaders.

Ver Repositorio
272hace 8 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 →
Compartir

NeuroCore

Utilidad de análisis estructural de binarios y visualización de alto rendimiento


Resumen

NeuroCore es una utilidad nativa de macOS diseñada para el análisis estructural de datos binarios mediante visualización de alta velocidad. Al aprovechar la computación de propósito general en unidades de procesamiento gráfico (GPGPU) a través de Metal Compute Shaders, la aplicación mapea flujos binarios en bruto sobre una curva de relleno del espacio de Hilbert en tiempo real. Esta proyección facilita la identificación rápida de la taxonomía de archivos, la distribución de entropía y las anomalías criptográficas, abordando las limitaciones de la representación hexadecimal lineal.

Introducción

Los editores hexadecimales tradicionales presentan los datos binarios en un formato lineal basado en desplazamientos, lo que oculta los patrones estructurales a gran escala y la densidad de los datos. NeuroCore aborda esta brecha heurística proyectando los datos lineales en un espacio topológico bidimensional.

La proyección central se basa en la Curva de Hilbert, una curva fractal continua que rellena el espacio. Esta transformación matemática preserva la localidad espacial: los puntos de datos adyacentes en el flujo de memoria lineal permanecen estrictamente adyacentes en la visualización 2D. Esta propiedad permite a los analistas examinar visualmente la composición estructural de un archivo —distinguiendo entre código máquina, texto estructurado, mapas de bits y bloques de alta entropía— sin analizar el encabezado del archivo.

Arquitectura Técnica

NeuroCore está diseñado como una aplicación nativa de alto rendimiento que omite las capas de abstracción intermedias para interactuar directamente con la GPU.

  • Lenguaje: Swift 5.5+ (Strict Concurrency)
  • Pipeline de gráficos: API de Metal (Compute & Render Command Encoders)
  • Interfaz: SwiftUI con puente NSViewRepresentable para las capas de Metal.

Pipeline de Renderizado

El motor de renderizado utiliza un kernel personalizado de Metal Shading Language (MSL) para ejecutar el cálculo paralelo de la entropía de Shannon y el mapeo de coordenadas.

  1. Ingesta: Los datos binarios en bruto se transmiten a objetos MTLBuffer.
  2. Cómputo: La GPU ejecuta un cálculo de entropía de ventana deslizante sobre el búfer.
  3. Mapeo: Los desplazamientos lineales se transforman en coordenadas $(x, y)$ mediante algoritmos de mapeo de Hilbert a nivel de bits.
  4. Rasterización: Los fragmentos de píxeles se colorean dinámicamente según la varianza de entropía local, logrando un rendimiento de 60 fps en conjuntos de datos arbitrariamente grandes sin saturar la VRAM.

Análisis e Interpretación de Datos Visuales

Los siguientes casos de estudio demuestran la eficacia de NeuroCore para distinguir estructuras de archivos mediante la visualización de entropía.


Análisis de Estructura de Datos JSON
Figura 1: Visualización de un binario no identificado de 17,7 MB (identificado como JSON jerárquico)

Caso de Estudio I: Datos Jerárquicos de Baja Entropía

Objeto: Archivo de 17,7 MB clasificado como "Desconocido" por el sistema operativo.

  • Firma de Entropía (Baja/Media): La visualización está dominada por el espectro verde/verde azulado, indicativo de una puntuación de entropía de $\approx 2.0 - 4.0$. A diferencia de los blobs cifrados, este espectro denota una alta redundancia y previsibilidad dentro del flujo de datos.
  • Características Topológicas: La segmentación geométrica distintiva y los artefactos "bloqueados" a lo largo de la Curva de Hilbert son característicos del texto formateado (pretty-printed). Las regiones sólidas representan secuencias de bytes recurrentes (p. ej., sangría de espacios en blanco, claves repetidas), mientras que las variaciones dispersas representan cambios de valores.
  • Conclusión: La topografía visual confirma que el archivo es una estructura de texto jerárquica no comprimida (conjunto de datos JSON) en lugar de un ejecutable compilado, eliminando la necesidad de una inspección hexadecimal inicial.



Análisis de Binario Comprimido
Figura 2: Visualización de una imagen de disco de Apple de 192 MB (.dmg)

Caso de Estudio II: Archivos Comprimidos de Alta Entropía

Objeto: Volumen .dmg de 192 MB.

  • Firma de Entropía (Alta): La saturación de datos de píxeles rojos indica entropía máxima ($\approx 7.5 - 8.0$ bits por byte). Aunque se interpreta visualmente como "ruido", esta distribución estocástica indica la eliminación efectiva de la redundancia de datos.
  • Uniformidad de Textura: La visualización carece de las "islas" geométricas vistas en la Figura 1. Los algoritmos de compresión (p. ej., LZFSE, zlib) distribuyen los valores de bytes de manera uniforme para maximizar la eficiencia de almacenamiento, lo que da como resultado un campo de alta varianza.
  • Conclusión: Esta densidad visual es la firma distintiva de ejecutables empaquetados, volúmenes cifrados o archivos comprimidos. En un contexto forense, observar esta firma en un archivo que pretende ser un documento estándar sugeriría de inmediato la inyección de una carga útil esteganográfica o el cifrado.

Características Principales

  • Cómputo Acelerado por Hardware: Transfiere las heurísticas de entropía y la transformación de coordenadas a la GPU mediante Metal Compute Shaders, garantizando una navegación en tiempo real.

  • Preservación de la Localidad de Hilbert: Transforma los flujos lineales en topografía 2D mientras mantiene las relaciones de vecindad, haciendo que los límites estructurales sean visualmente explícitos.

  • Colorimetría Basada en Entropía:

    • Rojo: Entropía alta (cifrado, compresión, salida de RNG).
    • Azul/Verde: Entropía baja-media (código máquina x86/ARM64, texto, encabezados).
    • Negro: Espacio nulo (relleno/asignación de ceros).
  • Ventaneo Virtual: Implementa un sistema de navegación de asignación cero. Los desplazamientos se calculan dinámicamente dentro del shader, lo que permite el recorrido inmediato de archivos de escala de gigabytes sin almacenar previamente en búfer conjuntos de datos completos en la VRAM.

Casos de Uso

  1. Ingeniería Inversa: Localización rápida de secciones .text, recursos incrustados o cargas útiles cifradas dentro de envoltorios binarios.
  2. Análisis de Malware: Identificación visual de empaquetadores (packers) y capas de ofuscación, que se manifiestan como anomalías de alta entropía distintas de la lógica compilada estándar.
  3. Informática Forense: Detección de datos añadidos (superposiciones EOF) o modificaciones esteganográficas que alteran los patrones esperados de la estructura del archivo.
  4. Validación Criptográfica: Verificación visual de la uniformidad del Generador de Números Aleatorios (RNG) y de la eficiencia de los algoritmos de compresión.

Instalación y Compilación

Este proyecto utiliza el toolchain nativo de macOS y no requiere gestores de paquetes externos.

Requisitos previos:

  • macOS 12.0 (Monterey) o superior.
  • Arquitectura Apple Silicon (M1/M2/M3) recomendada para un rendimiento óptimo del shader.
  • Xcode Command Line Tools.

Compilación:

Ejecute el siguiente comando en la raíz del proyecto para invocar el compilador de Swift y enlazar los frameworks necesarios (SwiftUI, Metal, MetalKit, AppKit, Foundation):

root@kitploit:~
swiftc NeuroCoreApp.swift ContentView.swift Renderer.swift ShaderSource.swift Utils.swift \
-o NeuroCore \
-sdk $(xcrun --show-sdk-path) \
-target arm64-apple-macos12.0 \
-framework SwiftUI \
-framework Metal \
-framework MetalKit \
-framework AppKit \
-framework Foundation

Ejecución:

root@kitploit:~
./NeuroCore

Uso

  1. Ingesta de Datos: Arrastre y suelte cualquier archivo binario directamente sobre el viewport de visualización. El renderizado es instantáneo.
  2. Navegación:
  • Pan (desplazamiento): Desplazamiento con dos dedos (trackpad) o rueda del mouse.
  • Zoom: Mantenga presionada la tecla Option + Scroll para ajustar la densidad de bytes por píxel.

Licencia

Todos los derechos reservados. El uso comercial, la redistribución o la modificación no autorizados están estrictamente prohibidos.

Descargar herramienta