Torna agli aggiornamenti
New releaseAug 31, 2026

ship-safe v9.7.5

L'agente di sicurezza indipendente per software scritto dall'IA. Trova i problemi, verifica se sono reali e ti mostra le prove. Nucleo deterministico, nessuna chiave API necessaria, output JSON e SARIF.

Condividi

Ship Safe Logo

L'agente di sicurezza indipendente per il software scritto dall'AI. Trova i problemi, verifica se sono reali e ti mostra le prove.

Sito web · Documentazione · Sicurezza e flusso dei dati · Benchmark · Prezzi · Blog · Contribuisci

npm version npm downloads CI License: MIT GitHub stars Sponsor

Ship Safe CLI

Ship Safe viene eseguito localmente nel tuo repository e funziona su due livelli.

Un motore deterministico trova problemi nel codice dell'applicazione, negli agenti AI, nelle configurazioni MCP, nei prompt, nelle dipendenze, nelle pipeline CI/CD, nei segreti e nella configurazione adiacente al cloud. Veloce, ripetibile e sottoposto a benchmark — questo è il livello sensore.

Un livello di investigazione decide poi quanto valgono i risultati. Traccia il valore che raggiunge un sink, cerca nel progetto i controlli che una regola dichiara mancanti, costruisce catene di attacco attraverso configurazioni che nessun singolo file contiene e — quando glielo chiedi — verifica una chiave compromessa contro il suo provider. Ogni conclusione porta con sé la fase che l'ha raggiunta e le righe che ha letto:

CONFIRMED — traced end to end (10)

    NoSQL Injection via $where [high]
    app/data/allocations-dao.js:78  NOSQL_INJECTION_WHERE
    why: threshold is assigned from the HTTP request and reaches the sink without validation on that path.
    decided by: dataflow
      1. value reaches NOSQL_INJECTION_WHERE here  app/data/allocations-dao.js:78
      2. getByUserIdAndThreshold is called here with threshold  app/routes/allocations.js:23
      3. threshold is assigned here  app/routes/allocations.js:20
    fix: Replace $where with standard MongoDB operators ($eq, $gt, $regex, etc.)

Output reale di ship-safe investigate contro OWASP NodeGoat. Il valore contaminato viene destrutturato in un file di route e passato a un DAO a tre directory di distanza.

Inizia con un solo comando:

npx ship-safe

Nessuna registrazione. Nessuna chiave API richiesta per la scansione. Funziona offline per i controlli principali. Le modalità red-team basate su AI utilizzano il provider configurato quando disponibile.

Usa --no-ai per garantire una scansione completamente locale. La classificazione basata su provider, l'analisi approfondita e GPT-Red inviano un contesto limitato direttamente al provider selezionato dopo un mascheramento best-effort delle credenziali. Vedi Security & Data Flow per i limiti esatti e i confini del contesto.

Ship Safe REPL demo


Avvio Rapido

# Interactive REPL: scan, fix, and ask questions in one session
npx ship-safe

# Full audit: secrets + 30 agents + deps + remediation plan
npx ship-safe audit .

# Investigate: confirmed / likely / unresolved / refuted, with the evidence
npx ship-safe investigate .
npx ship-safe investigate . --all       # also detail unresolved and refuted
npx ship-safe investigate . --verify    # probe leaked keys against their providers

# Before you open an unfamiliar folder with an agent: what runs on open?
npx ship-safe trust ~/Downloads/take-home
npx ship-safe trust . --json

# What can an AI agent working in this repo actually reach?
npx ship-safe capabilities .

# AI agent red-team scenarios for agent-readable content
npx ship-safe red-team . --gpt-red

# Interactive fix agent: plan, diff, approve, verify the path closed
npx ship-safe agent .
npx ship-safe agent . --severity critical   # critical findings only
npx ship-safe agent . --branch --pr         # fix on a branch + open a PR

# Undo the last fix
npx ship-safe undo

# CI/CD mode — fails on any critical finding
npx ship-safe ci . --sarif results.sarif
npx ship-safe ci . --fail-on high              # stricter: critical or high

# Gate on evidence instead of severity: block only what was established
npx ship-safe ci . --fail-on-verdict confirmed
npx ship-safe ci . --ignore-refuted            # do not block on what was argued away

Per le pull request, confronta una scansione di base attendibile con la scansione della head in modo che il debito esistente del repository rimanga visibile senza bloccare modifiche non correlate:

# On the trusted base revision
npx ship-safe ci . --fail-on none --no-deps \
  --write-baseline-report /tmp/ship-safe-base.json

# On the pull request head
npx ship-safe ci . --base-report /tmp/ship-safe-base.json --fail-on high

L'artefatto di base contiene identità di rilevamento con hash, percorsi relativi e metadati delle regole. Non memorizza i segreti grezzi corrispondenti. I risultati delle PR classificano i rilevamenti come introdotti, risolti, invariati o incerti; le corrispondenze ambigue vengono mostrate ma non bloccano la pull request.

Cosa trova Ship Safe

AreaEsempi
Sicurezza AI e LLMPrompt injection, dirottamento di agenti, agenzia eccessiva, avvelenamento della memoria, avvelenamento RAG, chiamate a strumenti non sicure
Configurazioni MCP e agentiPermessi degli strumenti troppo ampi, registri avvelenati, trasporti non attendibili, allowlist pericolose
Sicurezza delle applicazioniSQL/NoSQL injection, XSS, SSRF, bypass dell'autenticazione, path traversal, route API non sicure
Segreti e conformitàChiavi API, token, credenziali, PII, segreti trapelati nella cronologia git
Supply chainTyposquatting, dependency confusion, script di installazione rischiosi, azioni AI non bloccate
CI/CDAvvelenamento della pipeline, GitHub Actions non bloccate, logging di segreti, trigger di workflow non sicuri

Come funziona

Categorie