Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
psad — psad: Rilevamento delle intrusioni e analisi dei log con iptables | Kitploit
Strumenti/GitHubGitHub/mrash/psad
Analisi delle VulnerabilitàEvasione IDS/IPSInformatica ForenseSicurezza di ReteThreat IntelligenceRilevamento IntrusioniAnalisi dei Log
GitHubmrash/psad

psad

psad: Rilevamento delle intrusioni e analisi dei log con iptables

Vedi Repository
4277717 anni faRevisionato da Kitploit

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
Sito web

psad - Rilevamento di Intrusioni con i Log di iptables

Introduzione

Il Port Scan Attack Detector psad è un demone di sistema leggero scritto in è progettato per funzionare con il codice di firewall Linux iptables/ip6tables/firewalld per rilevare traffico sospetto come scansioni e sweeps di porte, backdoor, comunicazioni di comando e controllo di botnet e altro ancora. Presenta una serie di soglie di pericolo altamente configurabili (con valori predefiniti sensati), messaggi di avviso dettagliati che includono la sorgente, la destinazione, l'intervallo di porte scansionate, gli orari di inizio e fine, i flag TCP e le corrispondenti opzioni nmap, le informazioni DNS inverse, l'invio di avvisi via email e syslog, il blocco automatico degli indirizzi IP offensivi tramite la configurazione dinamica delle regole iptables, l'impronta digitale passiva del sistema operativo e la segnalazione DShield. Inoltre, psad incorpora molte delle firme TCP, UDP e ICMP incluse nel sistema di rilevamento delle intrusioni Snort. per rilevare scansioni altamente sospette per vari programmi backdoor (ad esempio EvilFTP, GirlFriend, SubSeven), strumenti DDoS (Mstream, Shaft) e scansioni di porte avanzate (SYN, FIN, XMAS) che possono essere facilmente sfruttate contro una macchina tramite nmap. psad può anche segnalare le firme Snort che vengono registrate tramite fwsnort, che fa uso dell'estensione string match di iptables per rilevare traffico che corrisponde a firme a livello applicativo. A partire dalla versione 2.4.4, psad può anche rilevare la fase di scansione delle credenziali predefinite IoT del botnet Mirai.

L'elenco completo delle funzionalità è di seguito.

Funzionalità

  • Rilevamento per scansioni TCP SYN, FIN, NULL e XMAS, nonché scansioni UDP.
  • Supporto per i log IPv4 e IPv6 generati rispettivamente da iptables e ip6tables.
  • Rilevamento di molte regole di firma del sistema di rilevamento delle intrusioni Snort.
  • Modalità forense di analisi dei file di log iptables/ip6tables (utile come strumento forense per estrarre informazioni di scansione da vecchi file di log iptables/ip6tables).
  • Impronta digitale passiva del sistema operativo tramite pacchetti SYN TCP. Sono supportate due diverse strategie di fingerprinting; una reimplementazione di p0f che utilizza rigorosamente i messaggi di log iptables/ip6tables (richiede l'opzione da riga di comando --log-tcp-options), e una strategia basata su TOS.
  • Avvisi via email che contengono caratteristiche di scansione TCP/UDP/ICMP, informazioni DNS inverse e whois, corrispondenze di regole Snort, informazioni sulla stima del sistema operativo remoto e altro ancora.
  • Se combinato con fwsnort e l'estensione string match di iptables, psad può generare avvisi per attacchi di buffer overflow a livello applicativo, comandi applicativi sospetti e altro traffico sospetto di livello 7.
  • Validazione dei campi dell'intestazione del tipo e codice ICMP.
  • Soglie di scansione e assegnazioni di livello di pericolo configurabili.
  • Analisi del set di regole iptables per verificare la posizione della politica "default drop".
  • Assegnazione automatica del livello di pericolo IP/rete (può essere utilizzata per ignorare o aumentare automaticamente i livelli di pericolo per determinate reti).
  • Avvisi DShield.
  • Blocco automatico degli indirizzi IP di scansione tramite iptables/ip6tables e/o tcpwrappers in base al livello di pericolo della scansione. (Questa funzionalità NON è abilitata per impostazione predefinita.)
  • Analisi dei messaggi di log iptables/ip6tables e generazione di output CSV che può essere utilizzato come input per AfterGlow. Ciò consente di visualizzare i log iptables/ip6tables. È supportato anche Gnuplot.
  • Modalità stato che mostra un riepilogo delle informazioni correnti sulla scansione con conteggi di pacchetti associati, catene iptables/ip6tables e livelli di pericolo.

Visualizzazione del Traffico Maligno

psad offre l'integrazione con gnuplot e afterglow per produrre grafici del traffico maligno. I due grafici seguenti mostrano il worm Nachi dalla sfida Honeynet Scan30. Prima, un grafico di collegamento prodotto da afterglow dopo l'analisi dei dati di log iptables da parte di psad:

nachi-worm-link-graph "Nachi Worm Link Graph"

Il secondo mostra il traffico del worm Nachi su base oraria dai dati iptables di Scan30:

nachi-worm-hourly-graph "Nachi Worm Hourly Graph"

Informazioni sulla Configurazione

Le informazioni sulle parole chiave di configurazione a cui fa riferimento psad possono essere trovate sia nella pagina man psad(8), sia qui:

http://www.cipherdyne.org/psad/docs/config.html

Metodologia

Tutte le informazioni analizzate da psad sono raccolte dai messaggi di log di iptables. psad, per impostazione predefinita, legge il file /var/log/messages per nuovi messaggi iptables e opzionalmente li scrive in un file dedicato (/var/log/psad/fwdata). psad è quindi responsabile dell'applicazione della soglia di pericolo e della logica delle firme per determinare se una scansione di porte è avvenuta, inviare email di avviso appropriate e (opzionalmente) bloccare gli indirizzi IP offensivi. psad include un gestore di segnale tale che se viene ricevuto un segnale USR1, psad scarica il contenuto della struttura dati hash di scansione corrente in /var/log/psad/scan_hash.$$ dove "$$" rappresenta il pid del demone psad in esecuzione.

NOTA: Poiché psad si basa su iptables per generare messaggi di log appropriati per i pacchetti non autorizzati, psad è valido tanto quanto le regole di log incluse nel set di regole iptables. Quindi, se il tuo firewall non è configurato per registrare i pacchetti, allora psad NON rileverà scansioni di porte o altro. Di solito il modo migliore per configurare il firewall è con regole predefinite "drop and log" alla fine del set di regole, e includere regole sopra questa ultima regola che consentano solo il traffico che dovrebbe essere permesso. Al momento dell'esecuzione, il demone psad tenterà di determinare se esiste una tale regola di default deny, e avviserà l'utente in caso contrario. Vedi il file FW_EXAMPLE_RULES per esempi di set di regole firewall compatibili con psad.

Inoltre, una copertura estesa di psad è inclusa nel libro "Linux Firewalls: Attack Detection and Response" pubblicato da No Starch Press, e uno script di supporto in questo libro è compatibile con psad. Questo script può essere trovato qui:

http://www.cipherdyne.org/LinuxFirewalls/ch01/

Installazione

A seconda della distribuzione Linux, psad potrebbe già essere disponibile nel repository predefinito dei pacchetti. Ad esempio, su sistemi Debian o Ubuntu, l'installazione si esegue con un semplice:

root@kitploit:~
apt-get install psad

Se psad non è disponibile nel repository dei pacchetti, può essere installato con lo script install.pl incluso nei sorgenti di psad. Lo script install.pl gestisce anche gli aggiornamenti se psad è già installato. psad richiede diversi moduli Perl che potrebbero o meno essere già installati sul tuo sistema Linux. Questi moduli sono inclusi nella directory deps/ nei sorgenti di psad e vengono installati automaticamente dallo script install.pl. L'elenco dei moduli è:

  • Bit::Vector
  • Date::Calc
  • IPTables::ChainMgr
  • IPTables::Parse
  • NetAddr::IP
  • Storable
  • Unix::Syslog

psad include anche un client whois scritto da Marco d'Itri (vedi la directory deps/whois). Questo client è migliore di altri nel raccogliere le informazioni whois corrette per un dato indirizzo IP.

Configurazione del Firewall

Il requisito principale per una configurazione iptables compatibile con psad è semplicemente che iptables registri i pacchetti. Questo viene comunemente realizzato aggiungendo regole alle catene INPUT e FORWARD in questo modo:

root@kitploit:~
iptables -A INPUT -j LOG
iptables -A FORWARD -j LOG

Le regole sopra dovrebbero essere aggiunte alla fine delle catene INPUT e FORWARD dopo tutte le regole ACCEPT per il traffico legittimo e appena prima di una corrispondente regola DROP per il traffico che non deve essere permesso attraverso la policy. Nota che le policy iptables possono essere piuttosto complesse con restrizioni di protocollo, rete, porta e interfaccia, catene definite dall'utente, regole di connection tracking e molto altro. Ci sono molti software come Shorewall e Firewall Builder, che costruiscono policy iptables e sfruttano le avanzate capacità di filtraggio e logging offerte da iptables. Generalmente le policy costruite da tali software sono compatibili con psad poiché aggiungono specificamente regole che istruiscono iptables a registrare i pacchetti che non fanno parte del traffico legittimo. Psad può essere configurato per analizzare solo quei messaggi iptables che contengono prefissi di log specifici (aggiunti tramite l'opzione --log-prefix), ma l'impostazione predefinita è che psad analizzi tutti i messaggi di log iptables per prove di scansioni di porte, sonde per programmi backdoor e altro traffico sospetto.

Piattaforme

psad generalmente funziona su sistemi Linux ed è disponibile nei repository dei pacchetti di molte distribuzioni Linux principali. Se ci sono problemi operativi con psad, apri un problema su github

Licenza

psad è rilasciato come software open source secondo i termini della GNU General Public License (GPL v2+). L'ultima versione può essere trovata su https://github.com/mrash/psad/releases

psad utilizza molte delle firme TCP, UDP e ICMP disponibili in Snort (scritto da Marty Roesch, vedi http://www.snort.org). Snort è un marchio registrato di Sourcefire, Inc.

Contatti

Tutte le richieste di funzionalità e le correzioni di bug sono gestite tramite il sistema di tracciamento delle issues di github. Tuttavia, puoi inviarmi un'email (michael.rash_AT_gmail.com) o contattarmi tramite Twitter (@michaelrash)

Scarica lo strumento