Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
NeuroCore — NeuroCore è un'applicazione nativa per macOS che visualizza la struttura interna dei file binari mediante una mappatura della curva di Hilbert e il calcolo dell'entropia di Shannon, il tutto accelerato da Metal Compute Shaders. | Kitploit
Strumenti/GitHubGitHub/farukalpay/neurocore
Analisi StaticaReverse EngineeringInformatica ForenseAnalisi MalwareDigital ForensicsAnalisi di Binari
GitHubfarukalpay/neurocore

NeuroCore

NeuroCore è un'applicazione nativa per macOS che visualizza la struttura interna dei file binari mediante una mappatura della curva di Hilbert e il calcolo dell'entropia di Shannon, il tutto accelerato da Metal Compute Shaders.

Vedi Repository
2728 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

NeuroCore

Utilità ad alte prestazioni per l'analisi strutturale e la visualizzazione di dati binari


Abstract

NeuroCore è un'utilità nativa per macOS progettata per l'analisi strutturale di dati binari tramite visualizzazione ad alta velocità. Sfruttando il calcolo generico su unità di elaborazione grafica (GPGPU) tramite Metal Compute Shaders, l'applicazione mappa flussi binari grezzi su una curva di Hilbert (Space-Filling Curve) in tempo reale. Questa proiezione facilita la rapida identificazione della tassonomia dei file, della distribuzione dell'entropia e delle anomalie crittografiche, superando i limiti della rappresentazione esadecimale lineare.

Introduzione

Gli hex editor tradizionali presentano i dati binari in un formato lineare basato sugli offset, che oscura i pattern strutturali su larga scala e la densità dei dati. NeuroCore colma questa lacuna euristica proiettando i dati lineari in uno spazio topologico bidimensionale.

La proiezione centrale si basa sulla curva di Hilbert, una curva frattale continua che riempie lo spazio. Questa trasformazione matematica preserva la località spaziale: i punti dati adiacenti nel flusso di memoria lineare rimangono strettamente adiacenti nella visualizzazione 2D. Questa proprietà consente agli analisti di interpretare visivamente la composizione strutturale di un file—distinguendo tra codice macchina, testo strutturato, bitmap e blocchi ad alta entropia—senza dover analizzare l'header del file.

Architettura Tecnica

NeuroCore è architettato come un'applicazione nativa ad alte prestazioni, bypassando livelli intermedi di astrazione per interagire direttamente con la GPU.

  • Linguaggio: Swift 5.5+ (Concorenza Stricta)
  • Pipeline Grafica: API Metal (Compute & Render Command Encoders)
  • Interfaccia: SwiftUI con bridging NSViewRepresentable per i layer Metal.

Pipeline di Rendering

Il motore di rendering utilizza un kernel personalizzato in Metal Shading Language (MSL) per eseguire il calcolo parallelo dell'entropia di Shannon e la mappatura delle coordinate.

  1. Ingestione: I dati binari grezzi vengono trasmessi in oggetti MTLBuffer.
  2. Calcolo: La GPU esegue un calcolo dell'entropia a finestra scorrevole attraverso il buffer.
  3. Mappatura: Gli offset lineari vengono trasformati in coordinate $(x, y)$ utilizzando algoritmi di mappatura di Hilbert basati su operazioni bitwise.
  4. Rasterizzazione: I frammenti di pixel vengono colorati dinamicamente in base alla varianza locale dell'entropia, raggiungendo 60fps su dataset arbitrariamente grandi senza problemi di VRAM thrashing.

Analisi Visiva dei Dati e Interpretazione

I seguenti case study dimostrano l'efficacia di NeuroCore nel distinguere le strutture dei file attraverso la visualizzazione dell'entropia.


JSON Data Structure Analysis
Figura 1: Visualizzazione di un binario non identificato da 17,7 MB (Identificato come JSON gerarchico)

Caso di Studio I: Dati Gerarchici a Bassa Entropia

Oggetto: File da 17,7 MB classificato come "Sconosciuto" dal sistema operativo.

  • Firma di Entropia (Bassa/Media): La visualizzazione è dominata dallo spettro verde/teal, indicativo di un punteggio di entropia di $\approx 2.0 - 4.0$. A differenza dei blob crittografati, questo spettro denota alta ridondanza e prevedibilità all'interno del flusso di dati.
  • Caratteristiche Topologiche: La distinta segmentazione geometrica e gli artefatti "a blocchi" lungo la curva di Hilbert sono caratteristici del testo formattato (pretty-printed). Le regioni solide rappresentano sequenze di byte ricorrenti (ad es. indentazione con spazi, chiavi ripetute), mentre le variazioni sparse rappresentano cambi di valore.
  • Conclusione: La topografia visiva conferma che il file è una struttura testuale gerarchica non compressa (dataset JSON) piuttosto che un eseguibile compilato, eliminando la necessità di un'ispezione esadecimale iniziale.



Compressed Binary Analysis
Figura 2: Visualizzazione di un'immagine disco Apple da 192 MB (.dmg)

Caso di Studio II: Archivi Compressi ad Alta Entropia

Oggetto: Volume .dmg da 192 MB.

  • Firma di Entropia (Alta): La saturazione di dati pixel rossi significa entropia massima ($\approx 7.5 - 8.0$ bit per byte). Sebbene interpretato visivamente come "rumore", questa distribuzione stocastica indica l'eliminazione effettiva della ridondanza dei dati.
  • Uniformità della Trama: La visualizzazione manca delle "isole" geometriche viste nella Figura 1. Gli algoritmi di compressione (ad es. LZFSE, zlib) distribuiscono i valori dei byte in modo uniforme per massimizzare l'efficienza di archiviazione, risultando in un campo ad alta varianza.
  • Conclusione: Questa densità visiva è la firma distintiva di eseguibili impaccati, volumi crittografati o archivi compressi. In un contesto forense, osservare questa firma in un file che si presenta come un documento standard suggerirebbe immediatamente l'iniezione di payload steganografici o la crittografia.

Caratteristiche Principali

  • Calcolo Accelerato via Hardware: Scarica le euristiche di entropia e la trasformazione delle coordinate sulla GPU tramite Metal Compute Shaders, garantendo una navigazione in tempo reale.
  • Preservazione della Località di Hilbert: Trasforma i flussi lineari in topografia 2D mantenendo le relazioni di vicinato, rendendo espliciti i confini strutturali.
  • Colorimetria Basata sull'Entropia:
    • Rosso: Entropia Alta (Crittografia, Compressione, output RNG).
    • Blu/Verde: Entropia Bassa-Media (codice macchina x86/ARM64, Testo, Header).
    • Nero: Spazio Nullo (padding/allocazione a zero).
  • Finestra Virtuale: Implementa un sistema di navigazione a zero allocazioni. Gli offset vengono calcolati dinamicamente all'interno dello shader, consentendo l'attraversamento immediato di file su scala gigabyte senza pre-bufferizzare interi dataset in VRAM.

Casi d'Uso

  1. Reverse Engineering: Localizzazione rapida di sezioni .text, risorse incorporate o payload crittografati all'interno di wrapper binari.
  2. Analisi Malware: Identificazione visiva di packer e layer di offuscamento, che si manifestano come anomalie ad alta entropia distinte dalla logica compilata standard.
  3. Forensics Digitale: Rilevamento di dati aggiunti (sovrapposizioni EOF) o modifiche steganografiche che interrompono i pattern attesi della struttura del file.
  4. Validazione Crittografica: Verifica visiva dell'uniformità del generatore di numeri casuali (RNG) e dell'efficienza degli algoritmi di compressione.

Installazione e Build

Questo progetto utilizza la toolchain nativa di macOS e non richiede gestori di pacchetti esterni.

Prerequisiti:

  • macOS 12.0 (Monterey) o superiore.
  • Architettura Apple Silicon (M1/M2/M3) consigliata per una resa ottimale degli shader.
  • Xcode Command Line Tools.

Compilazione:

Esegui il seguente comando nella directory principale del progetto per invocare il compilatore Swift e collegare i framework richiesti (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

Esecuzione:

root@kitploit:~
./NeuroCore

Utilizzo

  1. Ingestione dei Dati: Trascina e rilascia qualsiasi file binario direttamente sul viewport di visualizzazione. Il rendering è istantaneo.
  2. Navigazione:
  • Pan: Scorrimento con due dita (trackpad) o rotella del mouse.
  • Zoom: Tieni premuto Option + Scorri per regolare la densità byte-per-pixel.

Licenza

Tutti i diritti riservati. L'uso commerciale non autorizzato, la ridistribuzione o la modifica sono severamente vietati.

Scarica lo strumento