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
pkgxray — Sicurezza pre-installazione per agenti AI, pacchetti npm e server MCP. Analisi statica locale zero-dipendenze; le scansioni normali non eseguono mai il codice dei pacchetti. | Kitploit
Strumenti/GitHubGitHub/adamsjack711-ux/pkgxray
Analisi StaticaScanner di VulnerabilitàAnalisi del CodiceDevSecOpsRilevamento SegretiSicurezza della Supply ChainSicurezza dell'IA
GitHubadamsjack711-ux/pkgxray

pkgxray

Sicurezza pre-installazione per agenti AI, pacchetti npm e server MCP. Analisi statica locale zero-dipendenze; le scansioni normali non eseguono mai il codice dei pacchetti.

Vedi Repository
1114414 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 →
Sito web
Condividi
<div align="center">

<img src="https://raw.githubusercontent.com/adamsjack711-ux/pkgxray/main/docs/banner.png" alt="pkgxray — analizza i pacchetti prima di installarli" width="820">

# pkgxray — sicurezza pre-installazione per pacchetti npm, server MCP e agenti AI

Ispeziona un pacchetto npm o un server MCP **prima** di installarlo o di connetterti ad esso, e
ottieni un verdetto deterministico e basato su prove: `SAFE`, `REVIEW`, o `BLOCK`.
Analisi statica locale, a zero dipendenze — le scansioni normali non eseguono mai il codice del pacchetto.

[![npm version](https://img.shields.io/npm/v/pkgxray)](https://www.npmjs.com/package/pkgxray)
[![npm downloads](https://img.shields.io/npm/dm/pkgxray)](https://www.npmjs.com/package/pkgxray)
[![tests](https://github.com/adamsjack711-ux/pkgxray/actions/workflows/pkgxray-test.yml/badge.svg)](https://github.com/adamsjack711-ux/pkgxray/actions/workflows/pkgxray-test.yml)
[![calibration benchmark](https://github.com/adamsjack711-ux/pkgxray/actions/workflows/pkgxray-benchmark.yml/badge.svg)](https://github.com/adamsjack711-ux/pkgxray/actions/workflows/pkgxray-benchmark.yml)
[![license: MIT](https://img.shields.io/npm/l/pkgxray)](LICENSE)

[**Sito web**](https://pkgxray.ca) · [**Documentazione**](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/README.md) · [**Calibrazione**](https://pkgxray.ca/stats) · [**Segnala un bug**](https://github.com/adamsjack711-ux/pkgxray/issues)

<img src="https://assets.kitploit.com/production/public/readmes/43061/49ce4b9fed6753583cc0f87fd2c64c556d14806d31791844eaeefc14f7c4749e.gif" alt="pkgxray guard che approva [email protected] con un verdetto SAFE A+, poi blocca un campione trojanizzato con un verdetto BLOCK F e un rilevamento HIGH di accesso alle credenziali" width="820">

<sub>Esecuzioni reali: <code>guard</code> approva <code>[email protected]</code>, poi blocca un campione modellato sul compromesso del 2024 di <code>@solana/web3.js</code>.</sub>

</div>

## Punti salienti

- **Zero dipendenze runtime** — puro Node, gira interamente sulla tua macchina (passata statica ~25 ms).
- **Le scansioni normali non eseguono mai il codice del pacchetto** — il tarball viene letto come byte in quarantena.
- **Verdetti deterministici e citati** — ogni rilevamento indica il file e le prove; nessun LLM nel percorso del verdetto, quindi il testo iniettato non può influenzarlo.
- **Pensato per l'era degli agenti** — verifica i server MCP prima della connessione, controlla le installazioni eseguite da un agente e ri-audita il traffico MCP in tempo reale.
- **Calibrato e protetto da regressioni** — zero falsi blocchi euristici sui 1000 pacchetti più scaricati, garantito in CI.

> **[1. Avvio rapido](#quick-start)** · [2. Cosa scansiona e rileva](#what-it-scans--detects) · [3. Verdetti](#verdicts) · [4. Utilizzo](#usage) · [5. Integrazioni](#integrations) · [6. Come si confronta](#how-it-compares) · [7. Documentazione](#documentation)

## Perché

Gli assistenti di codifica AI installano pacchetti e si connettono a server MCP a velocità
macchina, spesso senza che un umano legga il codice. Sonatype ha identificato **più di
454.600 nuovi pacchetti open-source dannosi negli ecosistemi monitorati nel
2025**, oltre il 99% dei quali su npm
([Sonatype](https://www.sonatype.com/state-of-the-software-supply-chain/2026/open-source-malware)).
`npm audit` chiede *esiste una CVE nota?*; pkgxray chiede anche *cosa fa
davvero il codice* — prima che qualsiasi cosa venga installata.

## Avvio rapido

**1. Scansiona un pacchetto noto come benigno** (non è necessaria l'installazione di pkgxray):

```bash
npx --yes [email protected] guard npm:[email protected]
```

Prepara il tarball in quarantena ed esegue i controlli statici e di supply chain
— niente `npm install`, niente script di ciclo di vita, nessun codice di pacchetto eseguito.

<details>
<summary>Esempio di output</summary>

```text
Decision: SAFE   Grade: A+ (99/100)
No high- or medium-risk indicators were found in the provided evidence.

Notes:
- INFO npm-vs-github-clean — npm tarball matches the linked GitHub repo at the
  published version. (15/16 files match GitHub @4.21.0)
```

</details>

**2. Leggi il verdetto:**

| Verdetto | Exit | Significato |
|---|---:|---|
| `SAFE` | `0` | Nessun indicatore ad alto o medio rischio; la policy predefinita consente la promozione. |
| `REVIEW` | `3` | Le prove sono incomplete o una capacità privilegiata richiede una revisione umana. |
| `BLOCK` | `2` | Prove citate ad alta gravità — rifiuta o indaga. |

`SAFE` non è la prova che un pacchetto sia innocuo; l'analisi statica non può vedere un
payload scaricato solo a runtime. Vedi il [modello di minaccia](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/threat-model.md).

**3. Vedi un BLOCK sul fixture inerte fornito:**

```bash
npx --yes [email protected] --file examples/onboarding-malicious.json --format markdown
```

Il fixture è testo sorgente inerte che modella una lettura di chiave SSH a stringa spezzata e
l'exfiltrazione — **non viene mai eseguito**. Restituisce `BLOCK` (exit `2`) con il file e le prove citati.

**4. Aggiungilo al tuo flusso di lavoro** — [recheck e CI](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/reference.md#monitoring-pkgxray-recheck), [MCP](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/mcp.md#the-pkgxray-mcp-server), [gate di installazione Hookshot](https://github.com/adamsjack711-ux/pkgxray/blob/main/examples/hookshot).

> **Due modelli di esecuzione.** Le scansioni predefinite `guard` e `audit` sono **statiche** —
> il codice del pacchetto non viene mai eseguito. L'enumerazione di un server MCP può avviarlo e
> `mcp-proxy` lo esegue dietro un gate; l'opzionale
> [`canary`](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/canary-threat-model.md) è l'unica eccezione deliberata che
> *esegue* il pacchetto in una sandbox per confermarne il comportamento — può confermare
> la malizia ma non provare mai che un pacchetto sia sicuro. Confine completo: [SECURITY.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/SECURITY.md#scope).

## Cosa scansiona e rileva

**Scansioni** — `pkgxray guard npm:name@version`, `github:owner/repo`, una
directory locale, interi file di lock (`npm`, `yarn`, `pnpm`), server MCP ed estensioni
per agenti AI.

**Rilevamenti** — furto di credenziali (incl. percorsi a frammenti separati), cloud
raccolta di metadati dell'istanza e di secret store, prompt injection, contrabbando Unicode
payload base64 e loader di stage-2, esfiltrazione, persistenza
(profilo di shell, scheduler del sistema operativo e workflow CI/CD iniettati), dropper
auto-eliminanti, replicazione worm nei registry (`npm publish` durante l'installazione),
esecuzione offuscata di argomenti calcolati, CVE note (via OSV, prima del
download), divergenza degli artefatti npm↔GitHub, aggiornamenti trojanizzati (`recheck`) e abuso
della superficie di capacità MCP.

La matrice di copertura completa — e il noto punto cieco del download successivo — è nel
[modello di minaccia](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/threat-model.md); una tabella di confronto affiancato è sul
[sito web](https://pkgxray.ca/#catches).

## Verdetti

| Verdetto | Cosa fare |
|---|---|
| `SAFE` | Installa. Solo `safe` promuove fuori dalla quarantena per impostazione predefinita. |
| `REVIEW` | Ispeziona la copia in quarantena prima di promuoverla. |
| `BLOCK` | Non installare. Ogni rilevamento indica il file e le prove. |

I codici di uscita sono stabili e adatti alla CI: **`0`** safe/allow · **`2`** block ·
**`3`** review.

## Utilizzo

```bash
pkgxray guard npm:[email protected] [--format json]   # vet a package before install
pkgxray mcp --package npm:[email protected] npx some-mcp-server   # vet an MCP server; --recheck catches the rug-pull
pkgxray audit package-lock.json [--deep]               # also: yarn.lock, pnpm-lock.yaml, package.json
pkgxray recheck package-lock.json                      # scheduled: non-zero only on a regression
```

Un `.pkgxray.json` opzionale (letto da ogni superficie) regola la policy; configurazione zero
significa massima severità. Le CVE non possono mai essere disattivate, ogni allentamento viene
stampato e una scansione che va in errore fallisce in modalità chiusa verso `review`. Schema e invarianti:
[configuration.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/configuration.md) · [`.pkgxray.example.json`](https://github.com/adamsjack711-ux/pkgxray/blob/main/.pkgxray.example.json).

## Integrazioni

Un solo motore dietro ogni punto di ingresso. "Funziona con" significa una guida di configurazione
documentata, non un'integrazione approvata dal fornitore.

| Dove | Cosa fa | Guida |
|---|---|---|
| Agenti di codifica — Codex, Claude Code, Cursor, Windsurf | Controlla le installazioni ed espone gli strumenti di audit all'agente | [coding-agents.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/integrations/coding-agents.md) |
| Client MCP | Verifica un server prima della connessione; esegui pkgxray stesso come server MCP | [mcp.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/mcp.md) |
| GitHub Actions / CI | Fa fallire una build quando una dipendenza viola la policy | [github-actions.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/integrations/github-actions.md) |
| Gate di installazione — Hookshot | Esegue `guard` su ogni pacchetto che un agente tenta di installare | [examples/hookshot/](https://github.com/adamsjack711-ux/pkgxray/blob/main/examples/hookshot) |
| Gate MCP runtime | Funge da proxy per un server MCP live e controlla ogni chiamata di tool | [`mcp-proxy`](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/mcp.md#per-call-runtime-gate-pkgxray-mcp-proxy) |
| Monitoraggio dipendenze | Ri-verifica le dipendenze installate e pre-verifica gli aggiornamenti secondo una pianificazione | [`recheck`](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/reference.md#monitoring-pkgxray-recheck) |

## Come si confronta

Esegui pkgxray *insieme a* `npm audit` / OSV-Scanner, non al posto loro —
rispondono a *"CVE nota?"*. Rispetto agli strumenti della stessa categoria (verifica comportamentale
della supply chain — Socket.dev, OpenSSF Package Analysis, Cisco MCP Scanner), il confronto
completo delle capacità è in [docs/comparison.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/comparison.md) e sul
[sito web](https://pkgxray.ca/#comparison).

## Prove

La **calibrazione a zero falsi blocchi euristici sui 1000 pacchetti più scaricati**
è protetta da regressioni in CI ([ambito e metodologia](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/benchmark.md)),
e le esecuzioni pubblicate sono su [pkgxray.ca/stats](https://pkgxray.ca/stats). Questa
affermazione è limitata all'insieme più installato — non è un'affermazione di zero falsi blocchi su
ogni pacchetto.

## Documentazione

| Documenti | Cosa copre |
|---|---|
| [architecture.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/architecture.md) · [design.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/design.md) | Pipeline, superfici, principi |
| [threat-model.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/threat-model.md) | Ambito, punti ciechi, posizione sulla prompt injection |
| [mcp.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/mcp.md) · [mcp-registry.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/mcp-registry.md) | Verifica MCP, proxy runtime, voce di registry |
| [canary-threat-model.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/canary-threat-model.md) | Il canary comportamentale opzionale (opt-in) |
| [configuration.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/configuration.md) · [reference.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/reference.md) | `.pkgxray.json`, policy di gravità, `recheck`, server cache |
| [benchmark.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/benchmark.md) · [comparison.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/comparison.md) | Calibrazione e confronto |
| [compatibility.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/compatibility.md) · [json-schema.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/json-schema.md) | Contratto 1.0, schema `--format json` |

Inizia dall'[indice della documentazione](https://github.com/adamsjack711-ux/pkgxray/blob/main/docs/README.md).

## Contribuire

```bash
npm test                 # zero-dep node --test suite
npm run benchmark        # calibration corpus: precision/recall + 0-false-block gate
npm run validate:website # regenerate + validate the calibration pages
```

Le pull request sono benvenute — leggi [CONTRIBUTING.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/CONTRIBUTING.md) e il
[Codice di condotta](https://github.com/adamsjack711-ux/pkgxray/blob/main/CODE_OF_CONDUCT.md). Segnala le vulnerabilità privatamente secondo
[SECURITY.md](https://github.com/adamsjack711-ux/pkgxray/blob/main/SECURITY.md). Le release vengono pubblicate su npm con provenienza (attestazione
SLSA), controllate da test, benchmark di calibrazione e dalla guardia di supply chain di
pkgxray stessa.

<div align="center">
<sub>Built by <a href="https://github.com/adamsjack711-ux">Jack Adams-Lovell</a> · <a href="https://github.com/adamsjack711-ux/pkgxray/blob/main/LICENSE">MIT</a> · <a href="https://pkgxray.ca">pkgxray.ca</a></sub>
</div>
Scarica lo strumento