Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
MCPTrace — Plugin Volatility 3 che estrae candidati di messaggi MCP/JSON-RPC dai dump di memoria Windows e Linux, preservando i byte grezzi, gli indirizzi e lo SHA-256 per la verifica. | Kitploit
Strumenti/GitHubGitHub/kowntaewook/mcptrace
Memory ForensicsInformatica ForenseRaccolta InformazioniAnalisi MalwareDigital ForensicsRisposta agli IncidentiSicurezza dell'IAAnalisi dei Log
GitHubkowntaewook/mcptrace

MCPTrace

Plugin Volatility 3 che estrae candidati di messaggi MCP/JSON-RPC dai dump di memoria Windows e Linux, preservando i byte grezzi, gli indirizzi e lo SHA-256 per la verifica.

Vedi Repository
7477 giorni faNon ancora revisionato

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

MCPTrace

MCPTrace è un plugin di Volatility 3 per estrarre candidati messaggi MCP/JSON-RPC da dump di memoria Windows e Linux. Esamina la memoria dei processi alla ricerca di richieste, risposte, notifiche, nomi di tool e argomenti delle chiamate, quindi registra il contenuto recuperato insieme alla sua posizione in memoria.

Il progetto si concentra su evidenze che un analista può ispezionare e verificare. Ogni artefatto conserva i byte originali, il process ID, l'indirizzo virtuale, la codifica, la lunghezza e l'hash SHA-256. I risultati possono essere esportati come JSONL per ulteriori analisi o per il confronto con altri log. MCPTrace opera su un'immagine di memoria acquisita e non richiede un LLM o un'API AI esterna.

Funzionalità

  • Estrae artefatti JSON-RPC UTF-8 e UTF-16LE dalla memoria dei processi leggibile.
  • Identifica metodi e forme di risposta correlati a MCP, inclusi i nomi e gli argomenti di tools/call.
  • Conserva i byte e gli indirizzi originali per una successiva verifica rispetto all'immagine.
  • Suggerisce relazioni richiesta/risposta utilizzando lo stesso PID e un request ID tipizzato.
  • Applica regole opzionali, definite dall'analista, sugli argomenti dei tool, come controlli su percorsi o URL.
  • Esporta artefatti e riepiloghi per processo, inclusi byte non leggibili, errori e limiti di ricerca.

I target di analisi attuali sono Windows x64 e Linux x86-64. Il nome del plugin si riferisce al sistema operativo presente nell'immagine di memoria, indipendentemente dal sistema operativo utilizzato per eseguire Volatility.

Come funziona

MCPTrace utilizza l'enumerazione dei processi e la traduzione degli indirizzi di Volatility. Su Windows, attraversa i Virtual Address Descriptor (VAD) dei processi; su Linux, attraversa le Virtual Memory Area (VMA). Queste mappature definiscono quali intervalli di indirizzi dei processi vengono esaminati. I due adattatori condividono lo stesso codice di carving dei messaggi, correlazione, policy ed esportazione.

All'interno degli intervalli leggibili, lo scanner cerca i marcatori letterali della versione JSON-RPC e individua i candidati oggetti JSON attorno ad essi. Gestisce oggetti annidati, caratteri di escape, parentesi graffe all'interno delle stringhe e messaggi che si estendono su chunk di lettura contigui. Il JSON con chiavi duplicate o identificatori non supportati viene rifiutato anziché essere reinterpretato silenziosamente. La rilevanza MCP è determinata da nomi di metodi noti, forme di risposta e request ID associati; non si tratta di una validazione completa dello schema MCP.

La memoria mancante rimane mancante. Il lettore non riempie le lacune con zeri né unisce byte attraverso VAD/VMA separati. Con --include-partial, i frammenti non analizzati possono essere mostrati separatamente, senza inventare ID o argomenti mancanti. Gli intervalli non mappati di grandi dimensioni possono essere saltati utilizzando le informazioni della page table, e gli intervalli di indirizzi non leggibili rimangono visibili nelle statistiche di scansione.

La correlazione è volutamente conservativa. Un ID numerico come 1 è distinto dall'ID stringa "1", e i messaggi in processi diversi non vengono collegati automaticamente. Le molteplici rappresentazioni distinte associate a un ID vengono contrassegnate come ambigue. Le relazioni candidate non ricostruiscono da sole una sessione, una direzione dei messaggi o una cronologia di esecuzione.

Installazione

Richiede Python 3.10+. L'installazione include la dipendenza del framework con versione fissata, volatility3==2.28.2. Mantieni disponibile la directory plugins/ del repository: il pacchetto Python viene installato con pip, mentre -p plugins carica gli adattatori di Volatility.

git clone https://github.com/Kowntaewook/MCPTrace.git
cd MCPTrace
python -m venv .venv

Attiva l'ambiente per la tua shell:

  • Windows PowerShell: .\.venv\Scripts\Activate.ps1
  • Shell Linux/macOS: source .venv/bin/activate

Poi installa MCPTrace:

python -m pip install .

Utilizzo

Esegui i seguenti esempi dalla radice del repository con l'ambiente virtuale attivo. Sostituisci i percorsi delle immagini e i PID con le tue evidenze e i processi target. I client e i server MCP possono essere eseguiti in processi separati, quindi ispeziona entrambi dove pertinente.

Windows

Verifica che Volatility sia in grado di interpretare l'immagine ed enumerarne i processi prima di eseguire MCPTrace. La preparazione dei simboli di Windows potrebbe richiedere accesso alla rete.

vol -f windows.raw windows.info.Info
vol -f windows.raw windows.pslist.PsList
mkdir output-windows
vol -p plugins -f windows.raw -o output-windows windows.mcptrace.MCPTrace --pid 4242 5252 --dump

Linux

Posiziona i simboli ISF corrispondenti alla build esatta del kernel del dump in symbols/linux/. Se linux.pslist.PsList non riesce a risolvere il proprio kernel o i requisiti del layer, risolvi la configurazione di immagine/simboli prima di interpretare l'output di MCPTrace.

vol -s symbols -f linux.lime linux.pslist.PsList
mkdir output-linux
vol -p plugins -s symbols -f linux.lime -o output-linux linux.mcptrace.MCPTrace --pid 4242 --dump
  • Ometti --pid per analizzare tutti i processi, oppure passa più PID: --pid 4242 5252.
  • --dump esporta file JSONL per processo nella directory specificata da -o.
  • Usa vol -p plugins windows.mcptrace.MCPTrace -h (o l'equivalente Linux) per tutte le opzioni.

Per una resa JSON della tabella completa dei risultati, inserisci l'opzione globale -r json prima del nome del plugin. Questo è separato dalle esportazioni JSONL per processo prodotte da --dump.

vol -p plugins -f windows.raw -r json windows.mcptrace.MCPTrace --pid 4242 > findings.json

Opzioni comuni

OpzioneScopo
--pid 4242 5252Seleziona gli ID di processo; ometti per esaminare tutti i processi enumerati dall'adattatore.
--dumpEsporta gli artefatti visualizzati e i riepiloghi delle scansioni come JSONL usando la directory globale -o.
--include-partialInclude frammenti grezzi non analizzati senza ricostruire i campi mancanti.
--include-rpcVisualizza anche candidati JSON-RPC generici senza pertinenza MCP confermata.
--policy PATHApplica regole locali agli argomenti degli strumenti; vedi gli esempi per Windows e Linux.
--suspicious-onlyMostra le corrispondenze delle policy e i riepiloghi; richiede una policy non vuota.
--max-records NLimita i record candidati per processo prima del filtraggio; predefinito: 10000.
--max-object-bytes NLimita la dimensione di un singolo oggetto JSON completo; predefinito: 65536 byte.
--max-bytes NLimita i byte dell'intervallo di indirizzi tentato per processo; 0 significa illimitato.

I risultati delle policy descrivono le corrispondenze con le regole fornite dall'analista. Una corrispondenza non stabilisce un'attività malevola. Esamina i percorsi, gli host e i nomi degli strumenti di esempio prima di applicarli a un caso diverso.

Lettura dell'output

Un file come mcptrace.pid-4242.jsonl contiene un record di metadati, record di artefatti e un riepilogo finale della scansione. I metadati identificano il processo, il sistema operativo di destinazione e lo spazio di indirizzamento. I record degli artefatti conservano sia il messaggio analizzato sia i byte esatti recuperati.

Scarica lo strumento