Pubblicità

Scapy

SecDev (Philippe Biondi et les mainteneurs du projet secdev/scapy) Reti Open source

Scapy è una libreria Python libera per creare, inviare, catturare e decodificare pacchetti di rete, per esperti di sicurezza su Linux, macOS e Windows.

Solo link ufficiali, verificati il Ottobre 9, 2026

Indice
  1. A cosa serve Scapy
  2. Per chi è?
  3. Scaricare Scapy in sicurezza
  4. Domande frequenti

Scapy è una libreria Python che costruisce, invia, cattura e decodifica pacchetti di rete, un livello e un campo alla volta. L’ha scritta nel 2003 il ricercatore di sicurezza Philippe Biondi, e oggi la mantiene il gruppo SecDev insieme a una comunità di collaboratori riunita nel repository GitHub secdev/scapy. Il codice è pubblicato con licenza libera GPL v2. Secondo la pagina del progetto su PyPI, la versione 2.8.0 è uscita il 2 ottobre 2026 e richiede almeno Python 3.7.

A cosa serve Scapy

Per capire il senso di Scapy conviene confrontarlo con uno strumento di rete tradizionale, che svolge un compito stabilito in partenza. Ping invia una richiesta ICMP, Nmap cerca porte aperte. Scapy non prende nessuna di queste decisioni al posto vostro. Mette a disposizione classi Python che rappresentano i protocolli, da Ethernet, IP, TCP, UDP, DNS e ARP fino a diverse centinaia di altri, e il pacchetto si assembla impilando questi livelli con l’operatore di divisione. Ogni campo ha un valore predefinito sensato che si può sostituire, così una sola riga produce un pacchetto perfettamente valido oppure, se si vuole, volutamente malformato.

Pubblicità

La documentazione riassume la filosofia del progetto in una frase: Scapy decodifica, non interpreta. Quando arriva una risposta, la libreria restituisce il pacchetto intero e decodificato e lascia all’utente le conclusioni, invece di stampare un verdetto come porta filtrata. Per questo gli autori lo presentano come sostituto di hping, arping o arpspoof e di buona parte di Nmap e tcpdump. Sa inoltre leggere e scrivere file pcap, il che lo rende un compagno naturale di Wireshark.

Nella stessa sezione della nostra raccolta, Ostinato e Masscan rispondono a esigenze diverse. Ostinato è un generatore di traffico grafico fatto per spingere grandi volumi di pacchetti a partire da modelli. Masscan è uno scanner di porte specializzato, scritto in C, il cui unico scopo è percorrere intervalli di indirizzi enormi nel minor tempo possibile. Scapy sta altrove: sacrifica la velocità pura in cambio di flessibilità e precisione, ed è adatto a chi vuole esaminare uno scambio preciso o scrivere un test su misura.

Si usa per verificare che un firewall applichi davvero le sue regole, per riprodurre un difetto in uno stack di rete, per scrivere un piccolo fuzzer che invia varianti dello stesso pacchetto, o per insegnare il funzionamento di TCP osservando ogni segmento. La versione 2.8.0 ha ampliato il raggio d’azione con protocolli automobilistici come SAE J1939 e UDS, moduli Bluetooth, DICOM, PTP e il protocollo classico di MySQL, come spiegano le note di rilascio pubblicate su GitHub.

Per chi è?

Scapy si rivolge prima di tutto ai professionisti della sicurezza, offensiva e difensiva, agli amministratori di rete che inseguono un comportamento anomalo, agli sviluppatori di protocolli e ai docenti. L’unico vero requisito è la dimestichezza con Python, perché il linguaggio fa da interfaccia e da linguaggio di scripting allo stesso tempo.

I limiti sono altrettanto netti. Essendo scritto in Python, Scapy non è fatto per saturare un collegamento né per scansionare milioni di host; per quei compiti Ostinato o Masscan rendono molto di più. L’invio e la cattura di pacchetti grezzi richiedono privilegi di amministratore su ogni piattaforma. Infine non è un analizzatore grafico: per sfogliare con comodità una cattura voluminosa resta Wireshark la scelta giusta.

Scaricare Scapy in sicurezza

La versione ufficiale si trova sull’indice dei pacchetti Python PyPI, e su Linux e macOS basta il comando pip install scapy. Il sito scapy.net rimanda al repository GitHub secdev/scapy, dove sono disponibili il codice sorgente e l’archivio di ogni versione. Debian e Ubuntu offrono anche il pacchetto python3-scapy, e OpenBSD il pacchetto python-scapy, secondo la guida di installazione. Su Windows va installato prima il driver di cattura Npcap, poi Scapy con pip; la documentazione precisa che WinPcap funziona ancora ma non è più supportato.

Pubblicità

Scapy è del tutto gratuito e non ha edizioni a pagamento o professionali. Trattandosi di un pacchetto Python, il rischio principale è un pacchetto dal nome simile caricato su PyPI da uno sconosciuto: controllate che il progetto installato indichi Philippe Biondi come autore e scapy.net come pagina principale. Un installatore eseguibile per Windows proposto da un sito di download di terzi non ha motivo di esistere e va lasciato perdere.

Domande frequenti

Scapy è gratuito?

Sì. Scapy è software libero distribuito con licenza GPL v2, senza versione a pagamento né funzioni bloccate. La documentazione è pubblicata con licenza Creative Commons BY-NC-SA 2.5, cosa che non incide in alcun modo sull’uso del programma.

Servono i privilegi di amministratore per usare Scapy?

Per inviare pacchetti grezzi o ascoltare un’interfaccia sì, su Linux, macOS e Windows allo stesso modo, perché il sistema riserva queste operazioni agli account privilegiati. Leggere un file pcap esistente o costruire pacchetti senza inviarli funziona invece con un account normale.

Scapy funziona su Windows?

Sì, a patto di installare prima il driver Npcap, indispensabile per accedere alla scheda di rete. La documentazione consiglia di disattivare la modalità di compatibilità WinPcap durante l’installazione di Npcap, quindi di installare Scapy con pip e avviarlo dal prompt dei comandi.

La nostra opinione

Ci piace

  • Costruisce qualsiasi pacchetto, livello per livello
  • Si usa come console interattiva o come libreria
  • Centinaia di protocolli decodificati senza aggiunte
  • Software libero e gratuito, aggiornato su GitHub
  • Legge e scrive i file pcap di Wireshark

Ci piace meno

  • Richiede di saper programmare in Python
  • Troppo lento per test di carico o scansioni enormi
  • Servono privilegi di amministratore per inviare
  • Su Windows dipende dal driver Npcap

Scheda tecnica

EditoreSecDev (Philippe Biondi et les mainteneurs du projet secdev/scapy)
LicenzaOpen source
PrezzoGratis
Versione2.8.0
Aggiornato ilOttobre 2, 2026
RequisitiPython 3.7 à 3.14 ; Npcap sous Windows ; droits administrateur pour envoyer et capturer des paquets
PiattaformeLinux, macOS, Windows

Alternative

Ostinato Ostinato (Srivats P) · Reti

Ostinato è un generatore di traffico di rete a pagamento, con interfaccia grafica, per collaudare switch e collegamenti su Windows, macOS e Linux.

Windows · macOS · Linux A pagamento

Masscan Robert David Graham · Reti

Masscan è uno scanner di porte libero e velocissimo per auditor e team di sicurezza, da compilare su Linux, macOS o Windows, solo per reti autorizzate.

Linux · macOS · Windows Open source

Jean Mathieu

Scritto da

Jean Mathieu

Ingegnere e appassionato web writer dal 2018, unisco la mia competenza tecnica all'amore per la scrittura per condividere con la community notizie, consigli e conoscenze pratiche.