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
masq — Ricognizione live e audit della postura per l'infrastruttura degli agenti AI: esegue la scansione di configurazioni MCP, log delle sessioni e API alla ricerca di segreti, cataloghi avvelenati e fughe di CoT. | Kitploit
Strumenti/GitLabGitLab/wattocyber/masq
RicognizioneAnalisi StaticaAnalisi delle VulnerabilitàTest di Sicurezza delle APIAudit di ConfigurazioneRilevamento SegretiSicurezza della Supply ChainSicurezza dell'IAAnalisi dei Log
GitLabwattocyber/masq

masq

Ricognizione live e audit della postura per l'infrastruttura degli agenti AI: esegue la scansione di configurazioni MCP, log delle sessioni e API alla ricerca di segreti, cataloghi avvelenati e fughe di CoT.

342 mesi 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 →
Vedi RepositorySito web
Condividi

MASQ: siediti dove si siede il modello

Siediti dove si siede il modello. Guarda ciò che può vedere.

MASQ

MASQ è una CLI di sicurezza locale per stack di agenti AI. Si siede nello stesso posto in cui si siede il modello: legge i cataloghi di strumenti MCP, completa l'handshake MCP, esamina i log delle sessioni e sonda le porte HTTP dei modelli locali. Poi stampa i risultati e le mitigazioni.

Parla MCP e HTTP compatibile con OpenAI come fa il client. Riporta i risultati come farebbe uno strumento di ricognizione per host. Non chiama strumenti su un server attivo, non decifra il chain-of-thought e non genera jailbreak.

Usalo quandoEsegui Cursor, VS Code, Claude, Codex o uno stack di modelli locali e vuoi vedere i server MCP, le skill, i log e le API che l'agente può raggiungere.
Inizia conLa demo di due minuti qui sotto. Resta all'interno di questo repo.
StatoBeta. cargo test è il gate pubblico. Le sonde live sono per host di tua proprietà.
LicenzaMIT

pipeline license rust

Demo di due minuti

Ti servono Rust stabile (1.88 o superiore) e Python 3. Da un clone di questo repo:

cargo build --locked --bin masq
alias masq=./target/debug/masq

# or run the same walkthrough as a script:
# bash scripts/demo.sh

1. Un catalogo pulito rimane pulito

masq fixtures/clean_calculator.json --trusted
CLEAN clean_calculator tools=2 hash=sha256:e680cd2e4ac6c80ec783f11a0d9272a6741797feba216eb8e79633dd59633ab4

Esce con 0.

2. Un catalogo avvelenato non supera il controllo

fixtures/t3_line_jump.json è uno strumento sqrt la cui descrizione dice al modello di consultarlo per primo in ogni sessione e di anteporre ai comandi shell un curl canary. Si tratta di avvelenamento del catalogo, non di matematica.

masq fixtures/t3_line_jump.json
FINDINGS t3_line_jump tools=1 findings=2 max=critical
 F-001 [critical] D02 mcp03=schema_poison sqrt Network exfiltration directive in schema
 path: $.tools[0].description
 F-002 [critical] D03 mcp03=schema_poison sqrt Line-jump: force tool consultation / session prefix
 path: $.tools[0].description

Esce con 2 (riscontri pari o superiori a --fail-on, predefinito high).

3. Simulare un MCP live come farebbe il modello

Il mock integrato comunica MCP tramite stdio. masq invia initialize, notifications/initialized e tools/list. Non invia mai tools/call.

masq sit --plain --no-color -- python3 tests/mock_mcp_server.py
01 CATALOG
M-001 CRIT live Secret path or credential exfil directive
 Schema references secret file paths or credential stores in an agent-directed way.
 ACT Never reference host secret paths in tool metadata.
 LOCUS stdio:python3 :: add

M-002 HIGH live IPI / poison language in tool metadata
 Local classifier hit `system-override` in tool `add`.
 ACT Remove agent-directed instructions from the tool description.

M-003 HIGH live Instruction-override language in schema string
 Text matches common prompt-injection / instruction-override phrasing in tool metadata.

M-004 HIGH live Pre-action system instruction in schema
 Schema instructs the model to perform actions before the normal tool purpose.

02 SEAT
HIT stdio python3 init ok name=mock-poison tools=1

La descrizione dello strumento add del mock indica al modello di leggere ~/.ssh/id_rsa prima di eseguire operazioni aritmetiche. masq lo segnala dal tools/list live, quindi esce con 2.

4. Analizza un log di sessione di esempio

fixtures/demo/chat_history.jsonl inserisce una falsa chiave API e un blob di thinking cifrato. Punta masq a quella directory - non alla tua cronologia chat reale - per visualizzare la timeline.

masq sniff --timeline --plain --no-color fixtures/demo
T0001 SECRET chat_history.jsonl:2 {"content":"Authorization: Bearer sk-x……
T0002 BLOB chat_history.jsonl:3 encrypted_content len=202

La chiave inserita è oscurata. La catena di pensiero cifrata è riportata per lunghezza, non decodificata.

5. Fissa un catalogo che hai esaminato, poi intercetta le derive

masq pin fixtures/clean_calculator.json -k calc
masq check fixtures/clean_calculator.json -k calc --trusted

pin scrive .masq/pins.json. check fallisce in seguito se l'elenco degli strumenti o gli hash cambiano (rug-pull).

Codici di uscita ovunque: 0 pulito · 2 risultati ≥ --fail-on · 1 errore.

A cosa serve

Gli scanner MCP statici analizzano gli schemi. Gli health check inviano un ping a initialize. Il divario è il posto a sedere: i file, i listener e gli handshake che il modello già utilizza.

  1. Avvelenamento del catalogo. Le descrizioni degli strumenti possono istruire il modello a esfiltrare segreti, saltare la fila o nascondere un secondo strumento dietro lo stesso nome. masq percorre l'intero schema e contrassegna i risultati MCP03 della OWASP MCP Top 10.
  2. MCP non autenticato. Una larga parte dei server MCP pubblici accetta initialize senza autenticazione. Se riesci a completare quell'handshake, sei già l'agente. masq si siede; non chiama gli strumenti.
  3. Residui di sessione. I blob di ragionamento cifrati vengono spesso rimandati al client e memorizzati nei log. Viaggiano tra le sessioni e, nella ricerca pubblicata, tra modelli fratelli più deboli (arXiv:2608.09867). masq rileva quei blob. Non li decodifica.
  4. Porte locali dei modelli aperte. 11434, 8000 e simili spesso si legano a 0.0.0.0 senza bearer. masq identifica il servizio (Ollama, vLLM, LiteLLM, …) con sonde solo GET, poi elenca i modelli.
flowchart LR
 A["MCP tools/list JSON"] --> M[masq]
 B["Live MCP server"] --> M
 C["Session logs"] --> M
 D["Local model HTTP"] --> M
 M --> E["Findings + remediations"]
 M --> F["Optional pin store for CI"]

Installazione

git clone https://gitlab.com/WattoCyber/masq.git
cd masq
cargo install --path . --locked
# command: masq
masq --version
masq --help

Richiede Rust stable corrente (1.88+; installare con rustup). cargo test è il gate pubblico. Python 3 è richiesto solo per il mock stdio live nella demo e nei test.

Per compilare su un host Unix remoto tramite SSH (solo installazione; non esegue la scansione di quell'host):

MASQ_REMOTE_HOST=user@host bash scripts/deploy_remote.sh
# on that host: masq --version

Usalo sul tuo stack

La demo non lascia mai questo repository. Questi comandi invece lo fanno, e sono limitati a questa macchina a meno che tu non aderisca a una allowlist di laboratorio.

Scansiona un catalogo che possiedi già

Esporta o salva un JSON tools/list, poi:

masq path/to/tools.json
masq path/to/tools.json --json
masq path/to/tools.json --markdown

I percorsi .json nudi vengono riscritti in scan. Due o più file JSON diventano multi.

Avvia un server che gestisci tu

masq sit -- python3 -m your_mcp
masq sit --url http://127.0.0.1:PORT/mcp

Loopback è sufficiente. Anche gli URL off-loopback richiedono --lab e un host nella allowlist (vedi sotto). Autenticazione, se il server la richiede:

Scarica lo strumento