\\ Home Page : Storico : Software e Sicurezza (inverti l'ordine)
Di seguito gli interventi pubblicati in questa sezione, in ordine cronologico.
Di Alex (del 16/05/2026 @ 17:00:00, in Software e Sicurezza, letto 380 volte)
Interfaccia di Wireshark che mostra pacchetti malevoli evidenziati in rosso, con un occhio che si rifrange in pixel di codice.
Nel dominio delle reti telematiche, la visibilità assoluta è l'illusione prediletta dai sistemisti. Wireshark, lo sniffer open-source per l'analisi dei protocolli, opera commutando le interfacce di rete in "promiscuous mode", catturando l'intero traffico di transito. Ma lo strumento di analisi nasconde una contraddizione fatale: per dissezionare un pacchetto ostile, deve prima eseguirlo parzialmente. LEGGI TUTTO L'ARTICOLO
Bonus Video
L'architettura tecnica di Wireshark
Wireshark rappresenta lo strumento principe per l'analisi dei protocolli di rete, uno sniffer open-source che ha rivoluzionato il modo in cui gli amministratori di rete e i professionisti della sicurezza informatica diagnosticano problemi, analizzano il traffico e conducono indagini forensi. Il suo funzionamento si basa sulla capacità di commutare le interfacce di rete in una modalità operativa speciale chiamata "promiscuous mode", una configurazione che obbliga il sistema operativo a catturare e consegnare all'applicazione non solo i pacchetti destinati alla specifica macchina, ma l'intero traffico di transito visibile sul segmento di rete. In una rete Ethernet tradizionale basata su hub, questa modalità permette di intercettare tutte le comunicazioni tra tutti i dispositivi collegati, mentre in reti switched più moderne richiede tecniche aggiuntive come il port mirroring o gli ARP spoofing per reindirizzare il traffico verso l'interfaccia di analisi. Una volta catturato il flusso crudo di dati, Wireshark procede alla sua dissezione, decodificando i pacchetti binari strato dopo strato attraverso centinaia di parser specializzati chiamati "dissectors". Ogni dissector è un modulo software dedicato a un protocollo specifico, dall'HTTP/2 al SMBv3, dal TLS al DNS, fino ai codec audio-video come iLBC e le famiglie dei protocolli VoIP. Il dissector analizza la struttura binaria del pacchetto, estrae i campi significativi, li converte in rappresentazioni leggibili dall'uomo e costruisce una struttura gerarchica che riflette l'incapsulamento dei protocolli, dallo strato fisico fino al livello applicativo. L'approccio a dissectors modulari ha permesso a Wireshark di supportare centinaia di protocolli diversi, rendendolo lo strumento più completo e versatile per l'analisi di rete, utilizzato da milioni di professionisti in tutto il mondo. La capacità di Wireshark di decodificare in tempo reale il traffico di rete, di filtrare i pacchetti in base a criteri complessi, di ricostruire flussi TCP, di estrarre file trasferiti e di visualizzare statistiche dettagliate lo ha reso indispensabile per l'analisi forense di malware, per l'identificazione di pacchetti malformati potenzialmente pericolosi, e per la rilevazione di comunicazioni Command and Control tra malware e server di comando remoto. Nelle mani di un analista esperto, Wireshark offre una finestra senza precedenti sul traffico di rete, permettendo di vedere nel dettaglio quali dati stanno transitando, da dove provengono, dove sono diretti, e quali protocolli vengono utilizzati.
Le vulnerabilità intrinseche del linguaggio C
L'ispezione spassionata dell'architettura di Wireshark rivela però una contraddizione fatale alla base della sua stessa esistenza, una vulnerabilità sistemica che deriva dalle scelte di implementazione effettuate per garantire le prestazioni necessarie all'analisi di grandi volumi di traffico. Per garantire prestazioni eccellenti nel processare gigabit di traffico al secondo, Wireshark è scritto massicciamente in ANSI C, un linguaggio di programmazione scelto per la sua efficienza e il suo basso overhead, che permette un controllo fine della memoria e delle risorse di sistema. Questo linguaggio, a differenza di Java o C, è intrinsecamente privo di protezioni automatiche contro la corruzione della memoria, come il garbage collection automatico che libera la memoria non più utilizzata, o i controlli automatici sui limiti degli array che impediscono l'accesso a posizioni di memoria non autorizzate. La gestione della memoria in ANSI C è interamente demandata al programmatore, che deve allocare esplicitamente la memoria necessaria, verificare che le operazioni di copia non superino i limiti degli array, e liberare la memoria quando non è più necessaria. Questo controllo granulare permette prestazioni eccellenti, ma espone il software a una classe di vulnerabilità ben note e particolarmente insidiose: i buffer overflow, in cui un attaccante può scrivere dati oltre i limiti di un array sovrascrivendo aree di memoria adiacenti; i double free, in cui la stessa area di memoria viene liberata due volte causando corruzione delle strutture di gestione della memoria; i use-after-free, in cui si accede a memoria già liberata; e i dangling pointers, in cui un puntatore continua a fare riferimento a un'area di memoria non più valida. Queste vulnerabilità, note collettivamente come "memory corruption bugs", sono la causa principale delle falle di sicurezza nei software scritti in linguaggi senza gestione automatica della memoria. Nel caso di Wireshark, il problema è ulteriormente aggravato dalla modalità di esecuzione in promiscuous mode, che espone il software all'intero traffico di rete, compresi pacchetti potenzialmente malevoli costruiti appositamente per sfruttare vulnerabilità nei dissectors. Un attaccante con sufficiente conoscenza della struttura interna di Wireshark può confezionare pacchetti malformati che, quando processati dal dissector corrispondente, innescano una delle vulnerabilità di corruzione della memoria, causando un crash dell'applicazione o, nei casi più gravi, consentendo l'esecuzione di codice arbitrario sulla macchina dell'analista.
Il paradosso dell'osservatore nelle vulnerabilità CVE
Il paradosso fondamentale di Wireshark si palesa in tutta la sua drammatica evidenza quando il dissector è costretto ad assorbire l'oggetto ostile che dovrebbe esaminare, in una versione digitale del problema dell'osservatore in meccanica quantistica applicato alla sicurezza informatica. Per decodificare un pacchetto potenzialmente malevolo, per analizzarne la struttura, per determinarne la pericolosità, Wireshark deve inevitabilmente processarlo, eseguendo parzialmente il codice del dissector sull'input fornito dall'attaccante. Questo requisito funzionale trasforma lo strumento di analisi da scudo protettivo a vettore d'attacco principale, poiché la stessa operazione di ispezione può attivare la vulnerabilità che si sta cercando di identificare. L'analista che utilizza Wireshark per studiare un traffico sospetto si trova nella paradossale situazione di dover aprire il vaso di Pandora per vedere cosa c'è dentro, con il rischio che l'apertura stessa liberi il male che intendeva combattere. Un esempio emblematico e ben documentato di questa fragilità strutturale è la vulnerabilità identificata con il codice CVE-2026-5657, un difetto di tipo "Double Free" situato nel dissector del codec iLBC, utilizzato per la compressione audio nelle comunicazioni Voice over IP e in applicazioni di messaggistica istantanea. La vulnerabilità affligge tutte le versioni di Wireshark dalla 4.4.0 alla 4.6.4, un arco temporale di diversi anni durante i quali milioni di analisti hanno potenzialmente esposto i propri sistemi a questa falla. Un avversario esperto, dotato di conoscenze tecniche adeguate, può confezionare deliberatamente un pacchetto iLBC corrotto, costruito con cura per sfruttare la specifica vulnerabilità del double free, e iniettarlo nella rete che l'analista sta monitorando. Quando l'analista, inconsapevole della minaccia, apre il file di cattura che contiene il pacchetto malevolo o semplicemente monitora il traffico live sulla propria interfaccia di rete, Wireshark tenta la dissezione del pacchetto, incontrando la struttura corrotta e innescando un collasso dell'allocazione di memoria. Il risultato è un fatale arresto anomalo dell'applicazione, un Denial of Service che interrompe l'analisi e può causare la perdita di dati non salvati. In scenari più gravi, vulnerabilità di questo tipo possono consentire l'esecuzione di codice arbitrario, permettendo all'attaccante di prendere il controllo della macchina dell'analista, installare backdoor, rubare dati sensibili o utilizzare il sistema come trampolino per attacchi successivi. L'inganno è totale: il meccanismo di allerta viene sfruttato per assassinare l'osservatore, e lo strumento progettato per proteggere la rete diventa il cavallo di Troia che la compromette. I professionisti della sicurezza informatica tendono a considerare lo sniffer come un pannello di vetro trasparente dietro cui osservare i leoni della rete, dimenticando che in informatica l'atto stesso dell'osservazione esige l'esecuzione parziale del predatore, con tutti i rischi che questa esposizione comporta.
Mantenere permessi di root o esecutivi mentre un software intrinsecamente fragile mastica dati malevoli equivale a spalancare la porta della cittadella per ispezionare le lame del nemico, confidando che l'ispezione non trasformi la lama in una freccia avvelenata. Il paradosso di Wireshark è il paradosso di ogni strumento di analisi che deve eseguire per comprendere: un limite epistemologico della sicurezza informatica, destinato a rimanere irrisolto finché i linguaggi di programmazione sicuri non raggiungeranno le prestazioni dei loro antenati insicuri.
Di Alex (del 04/06/2026 @ 17:00:00, in Software e Sicurezza, letto 945 volte)
Interfaccia di VeraCrypt con volumi crittografati
Bonus Video
Il paradosso della cascata crittografica
Nel complesso e paranoico panorama della sicurezza informatica moderna, il programma gratuito VeraCrypt rappresenta senza ombra di dubbio uno degli standard di fatto per la crittografia dei dischi e dei dati personali a disposizione del grande pubblico. Sviluppato come erede spirituale e successore diretto del defunto e controverso progetto TrueCrypt, questo sofisticato software open-source permette la creazione di volumi virtuali crittografati che appaiono come normali file, oppure consente la cifratura profonda di intere partizioni di sistema operativo e unità di archiviazione esterne. A livello prettamente ingegneristico, VeraCrypt offre all'utente la possibilità di impiegare singolarmente cifrari a blocchi simmetrici di fama internazionale e solida affidabilità matematica. Tra questi spiccano l'algoritmo Advanced Encryption Standard approvato dal governo americano, il sistema Camellia sviluppato in Giappone con sicurezza equiparabile, e il recente algoritmo russo Kuznyechik, tutti operanti nell'avanzata e complessa modalità XTS. Per sedare le paure di quegli utenti che nutrono profonde diffidenze verso un singolo standard crittografico approvato da enti governativi, il software implementa un articolato meccanismo di "cascata". Attraverso questa funzione, è possibile sovrapporre fino a tre algoritmi differenti in serie rigorosa, come ad esempio le catene AES-Twofish-Serpent o Kuznyechik-Serpent-Camellia. In questo formidabile schema teorico, ogni singolo blocco da centoventotto bit di dati viene cifrato in stretta successione dal primo algoritmo, poi il risultato viene ricifrato dal secondo, e infine dal terzo. Ciascun livello impiega chiavi crittografiche a duecentocinquantasei bit completamente distinte, derivate dalla medesima password tramite processi di salatura e iterazione estrema.
Sezionando con freddezza l'architettura psicologica e tecnica di questo approccio, tuttavia, si rende immediatamente palese una profonda fallacia logica, comunemente trascurata dalle menti che si affascinano alla pura teoria dei numeri. La crittografia algoritmica simmetrica di per sé, in assenza di difetti implementativi grossolani, raramente costituisce il punto di rottura strutturale in un moderno sistema difensivo. L'ossessione per l'impiego di pesanti configurazioni a cascata genera un ingannevole e pericoloso senso di invulnerabilità assoluta, ignorando totalmente il costo prestazionale estremo che l'hardware deve sopportare. Solitamente, infatti, solo l'algoritmo AES beneficia dell'accelerazione hardware diretta attraverso il set di istruzioni specializzato AES-NI integrato nella totalità dei processori moderni. Abbinarlo forzatamente ad algoritmi come Serpent o Camellia costringe il processore a eseguire calcoli complessi via software, riducendo drasticamente la larghezza di banda in lettura e scrittura e incidendo negativamente sull'efficienza termica ed energetica dell'intero sistema. Ma il vero fattore di rischio strutturale nascosto, e costantemente rimosso dalle discussioni amatoriali, risiede nel concetto di "modello di minaccia asimmetrico". Nessun avversario reale, che si tratti di un attore statale ben finanziato o di un'organizzazione criminale, impiegherebbe mai risorse termodinamiche, temporali ed energetiche spropositate per tentare di forzare matematicamente a forza bruta una singola chiave AES a duecentocinquantasei bit; le leggi attuali della fisica rendono tale impresa impossibile. L'anello debole è, ed è sempre stato, l'OpSec umana e l'hardware sottostante. Le vere vulnerabilità che distruggono l'integrità del dato risiedono altrove: nella debolezza mnemonica della password scelta dall'utente, in sofisticati attacchi fisici di tipo "cold-boot" sulla memoria RAM della macchina dove risiedono temporaneamente le chiavi in chiaro, o nell'infezione preventiva tramite impianti di keylogging a livello di sistema operativo, che catturano la password nell'esatto momento in cui viene digitata sulla tastiera. VeraCrypt fornisce agli utenti un lucchetto in titanio formidabile e irraggiungibile, ma l'impalcatura generale che regge la porta è spesso in legno umido e marcescente. Concentrarsi testardamente sull'insuperabilità matematica del lucchetto, trascurando i cardini e le pareti della stanza, rappresenta un errore di prospettiva analitica grave, che illude i più sprovveduti di aver raggiunto l'inviolabilità dei propri segreti.
| Modello di Cifratura VeraCrypt | Utilizzo Hardware (CPU) | Livello Sicurezza Teorica vs Brute Force | Impatto Prestazionale |
| AES Singolo (256-bit) | Accelerazione Nativa (AES-NI) | Computazionalmente Infrangibile (oggi) | Eccellente, minima latenza |
| Camellia / Kuznyechik | Emulazione Software Pura | Estremamente Elevato (alternative ad AES) | Minimo, trasparente per l'utente |
| Cascata (es. AES-Twofish) | Accelerazione Parziale | Moltiplicazione esponenziale complessa | Moderato, rallentamento in lettura/scrittura |
| Cascata a 3 Livelli | Elevato carico multi-thread | Ridondanza paranoica e impraticabile | Grave degrado prestazionale su CPU datate |
Conclusione: VeraCrypt è uno strumento eccellente, ma la sua sicurezza reale dipende quasi interamente da fattori esterni all'algoritmo. Una password forte, un ambiente operativo pulito e una consapevolezza dei limiti fisici sono molto più importanti di una cascata di cifrari.




Microsmeta Podcast
Feed Atom 0.3
Visite guidate a Roma








(p)Link
Commenti
Storico
Stampa