Antenna ALFA AWUS036ACH su Kali Linux (Raspberry Pi)

Procedura per installare antenna ALFA AWUS036ACH su Kali Linux (Raspberry Pi)

sudo su
lsusb
apt update
apt upgrade -y

lsusb: verifica che l’antenna sia riconosciuta e visibile come dispositivo USB collegato.

apt install dkms
apt install realtek-rtl88xxau-dkms

dkms: assicura il supporto per i driver del kernel in modo dinamico.

realtek-rtl88xxau-dkms: fornisce i driver base per il chipset Realtek.

git clone https://github.com/aircrack-ng/rtl8812au.git

Nota: Per una versione specifica del driver (es. v5.6.4.2), usa:

git clone -b v5.6.4.2 https://github.com/aircrack-ng/rtl8812au.git

cd rtl8812au
make
make install
apt-get install kalipi-kernel-headers

Questo passaggio è essenziale per assicurare la compatibilità del driver con il kernel Kali per Raspberry Pi.

kismet -c wlan0

kismet: avvia il monitoraggio e verifica che l’antenna funzioni correttamente. In questo caso ho specificato di utilizzare la wlan0.

Business logic vulnerabilities

PortSwigger Academy – Business logic vulnerabilities

Continua il percorso di apprendimento suggerito da “PortSwigger Academy”.

In questa sezione introdurremo il concetto di vulnerabilità della logica aziendale e spiegheremo come possono verificarsi a causa di presupposti errati sul comportamento degli utenti. Discuteremo il potenziale impatto dei difetti logici e come sfruttarli. Infine, forniremo alcune best practice generali per aiutarti a prevenire questo tipo di difetti logici che si verificano nelle tue applicazioni.

Quali sono le vulnerabilità della logica aziendale?

Le vulnerabilità della logica aziendale sono difetti nella progettazione e nell’implementazione di un’applicazione che consentono a un utente malintenzionato di provocare comportamenti non desiderati. Ciò consente potenzialmente agli aggressori di manipolare funzionalità legittime per raggiungere un obiettivo dannoso. Questi difetti sono generalmente il risultato dell’incapacità di anticipare gli stati insoliti dell’applicazione che potrebbero verificarsi e, di conseguenza, dell’incapacità di gestirli in modo sicuro.

Nota

In questo contesto, il termine “logica di business” si riferisce semplicemente all’insieme di regole che definiscono il funzionamento dell’applicazione. Poiché queste regole non sono sempre direttamente correlate a un’azienda, le vulnerabilità associate sono note anche come “vulnerabilità della logica dell’applicazione” o semplicemente “difetti logici”.

I difetti logici sono spesso invisibili alle persone che non li cercano esplicitamente poiché in genere non vengono scoperti dal normale utilizzo dell’applicazione. Tuttavia, un utente malintenzionato potrebbe essere in grado di sfruttare peculiarità comportamentali interagendo con l’applicazione in modi che gli sviluppatori non avrebbero mai previsto.

Uno degli scopi principali della logica aziendale è applicare le regole e i vincoli definiti durante la progettazione dell’applicazione o della funzionalità. In generale, le regole aziendali stabiliscono come l’applicazione dovrebbe reagire quando si verifica un determinato scenario. Ciò include impedire agli utenti di fare cose che avranno un impatto negativo sull’azienda o che semplicemente non hanno senso.

Difetti nella logica possono consentire agli aggressori di aggirare queste regole. Ad esempio, potrebbero essere in grado di completare una transazione senza passare attraverso il flusso di lavoro di acquisto previsto. In altri casi, la convalida interrotta o inesistente dei dati forniti dall’utente potrebbe consentire agli utenti di apportare modifiche arbitrarie ai valori critici della transazione o di inviare input senza senso. Passando valori imprevisti nella logica lato server, un utente malintenzionato può potenzialmente indurre l’applicazione a fare qualcosa che non dovrebbe fare.

Le vulnerabilità basate sulla logica possono essere estremamente diverse e spesso sono esclusive dell’applicazione e della sua funzionalità specifica. Identificarli spesso richiede una certa dose di conoscenza umana, come la comprensione del dominio aziendale o degli obiettivi che un utente malintenzionato potrebbe avere in un determinato contesto. Ciò li rende difficili da rilevare utilizzando scanner di vulnerabilità automatizzati. Di conseguenza, i difetti logici sono un ottimo obiettivo per i cacciatori di bug e i tester manuali in generale.

Come nascono le vulnerabilità della logica aziendale?

Le vulnerabilità della logica aziendale spesso sorgono perché i team di progettazione e sviluppo formulano ipotesi errate sul modo in cui gli utenti interagiranno con l’applicazione. Questi presupposti errati possono portare a una convalida inadeguata dell’input dell’utente. Ad esempio, se gli sviluppatori presuppongono che gli utenti passeranno i dati esclusivamente tramite un browser Web, l’applicazione potrebbe fare affidamento interamente su deboli controlli lato client per convalidare l’input. Questi vengono facilmente aggirati da un utente malintenzionato utilizzando un proxy di intercettazione.

In definitiva, ciò significa che quando un utente malintenzionato si discosta dal comportamento previsto dall’utente, l’applicazione non riesce ad adottare le misure appropriate per prevenirlo e, di conseguenza, non riesce a gestire la situazione in modo sicuro.

I difetti logici sono particolarmente comuni nei sistemi eccessivamente complicati che nemmeno lo stesso team di sviluppo comprende appieno. Per evitare difetti logici, gli sviluppatori devono comprendere l’applicazione nel suo insieme. Ciò include la consapevolezza di come diverse funzioni possano essere combinate in modi inaspettati. Gli sviluppatori che lavorano su codebase di grandi dimensioni potrebbero non avere una conoscenza approfondita del funzionamento di tutte le aree dell’applicazione. Qualcuno che lavora su un componente potrebbe formulare ipotesi errate sul funzionamento di un altro componente e, di conseguenza, introdurre inavvertitamente gravi difetti logici. Se gli sviluppatori non documentano esplicitamente le ipotesi fatte, è facile che questo tipo di vulnerabilità si insinuino in un’applicazione.

Qual è l’impatto delle vulnerabilità della logica aziendale?

L’impatto delle vulnerabilità della logica aziendale può, a volte, essere piuttosto banale. Si tratta di una categoria ampia e l’impatto è molto variabile. Tuttavia, qualsiasi comportamento involontario può potenzialmente portare ad attacchi di elevata gravità se un utente malintenzionato è in grado di manipolare l’applicazione nel modo giusto. Per questo motivo, la logica bizzarra dovrebbe idealmente essere corretta anche se non riesci a capire come sfruttarla da solo. C’è sempre il rischio che qualcun altro possa farlo.

Fondamentalmente, l’impatto di qualsiasi difetto logico dipende dalla funzionalità a cui è correlato. Se il difetto risiede, ad esempio, nel meccanismo di autenticazione, ciò potrebbe avere un grave impatto sulla sicurezza complessiva. Gli aggressori potrebbero potenzialmente sfruttarlo per aumentare i privilegi o aggirare completamente l’autenticazione, ottenendo l’accesso a dati e funzionalità sensibili. Ciò espone anche una maggiore superficie di attacco per altri exploit.

Una logica errata nelle transazioni finanziarie può ovviamente portare a ingenti perdite per l’azienda attraverso il furto di fondi, frodi e così via.

È inoltre necessario tenere presente che, anche se i difetti logici potrebbero non consentire a un utente malintenzionato di trarne un vantaggio diretto, potrebbero comunque consentire a un malintenzionato di danneggiare in qualche modo l’azienda.

Quali sono alcuni esempi di vulnerabilità della logica aziendale?

Il modo migliore per comprendere le vulnerabilità della logica aziendale è esaminare casi reali e imparare dagli errori commessi. Abbiamo fornito esempi concreti di una serie di difetti logici comuni, nonché di alcuni siti Web deliberatamente vulnerabili, in modo che tu possa esercitarti a sfruttare queste vulnerabilità da solo.

Come prevenire le vulnerabilità della logica aziendale

In breve, le chiavi per prevenire le vulnerabilità della logica aziendale sono:

  • assicurati che sviluppatori e tester comprendano il dominio servito dall’applicazione
  • evitare di fare supposizioni implicite sul comportamento dell’utente o sul comportamento di altre parti dell’applicazione

Dovresti identificare quali presupposti hai fatto riguardo allo stato lato server e implementare la logica necessaria per verificare che tali presupposti siano soddisfatti. Ciò include assicurarsi che il valore di qualsiasi input sia ragionevole prima di procedere.

È anche importante assicurarsi che sia gli sviluppatori che i tester siano in grado di comprendere appieno questi presupposti e il modo in cui l’applicazione dovrebbe reagire in diversi scenari. Ciò può aiutare il team a individuare i difetti logici il prima possibile. Per facilitare ciò, il team di sviluppo dovrebbe aderire, ove possibile, alle seguenti migliori pratiche:

  • mantieni documenti di progettazione e flussi di dati chiari per tutte le transazioni e i flussi di lavoro, annotando eventuali ipotesi formulate in ogni fase.
  • scrivi il codice nel modo più chiaro possibile. Se è difficile capire cosa dovrebbe succedere, sarà difficile individuare eventuali difetti logici. Idealmente, un codice ben scritto non dovrebbe aver bisogno di documentazione per capirlo. In casi inevitabilmente complessi, produrre una documentazione chiara è fondamentale per garantire che altri sviluppatori e tester sappiano quali ipotesi vengono fatte e qual è esattamente il comportamento previsto.
  • prendere nota di eventuali riferimenti ad altro codice che utilizza ciascun componente. Pensa agli eventuali effetti collaterali di queste dipendenze se un malintenzionato dovesse manipolarle in un modo insolito.

A causa della natura relativamente unica di molti difetti logici, è facile liquidarli come un errore occasionale dovuto a un errore umano e andare avanti. Tuttavia, come abbiamo dimostrato, questi difetti sono spesso il risultato di cattive pratiche nelle fasi iniziali della creazione dell’applicazione. Analizzare il motivo per cui esisteva un difetto logico e come il team non lo ha notato può aiutarti a individuare i punti deboli nei tuoi processi. Apportando piccole modifiche, è possibile aumentare la probabilità che difetti simili vengano eliminati alla fonte o rilevati nelle prime fasi del processo di sviluppo.

Esempi di vulnerabilità della logica aziendale

Le vulnerabilità della logica aziendale sono relativamente specifiche per il contesto in cui si verificano. Tuttavia, sebbene i singoli casi di difetti logici differiscano enormemente, possono condividere molti temi comuni. In particolare, possono essere raggruppati in modo approssimativo in base agli errori iniziali che hanno inizialmente introdotto la vulnerabilità.

In questa sezione esamineremo esempi di alcuni errori tipici commessi dai team di progettazione e sviluppo e mostreremo come possano portare direttamente a difetti nella logica aziendale. Sia che tu stia sviluppando le tue applicazioni o verificando quelle esistenti, puoi prendere le lezioni apprese da questi esempi e applicare lo stesso pensiero critico ad altre applicazioni che incontri.

Esempi di difetti logici includono:

  • fiducia eccessiva nei controlli lato client;
  • impossibile gestire input non convenzionali;
  • fare ipotesi errate sul comportamento degli utenti;
  • difetti specifici del dominio;
  • fornire un oracolo di crittografia;
  • discrepanze del parser dell’indirizzo e-mail .

Fiducia eccessiva nei controlli lato client

Un presupposto fondamentalmente errato è che gli utenti interagiranno con l’applicazione solo tramite l’interfaccia web fornita. Ciò è particolarmente pericoloso perché porta all’ulteriore presupposto che la convalida lato client impedirà agli utenti di fornire input dannosi. Tuttavia, un utente malintenzionato può semplicemente utilizzare strumenti come Burp Proxy per manomettere i dati dopo che sono stati inviati dal browser ma prima che vengano passati alla logica lato server. Ciò rende effettivamente inutili i controlli lato client.

Accettare i dati per oro colato, senza eseguire adeguati controlli di integrità e convalida lato server, può consentire a un utente malintenzionato di causare tutti i tipi di danni con uno sforzo relativamente minimo. Ciò che esattamente sono in grado di ottenere dipende dalla funzionalità e da cosa sta facendo con i dati controllabili. Nel giusto contesto, questo tipo di difetto può avere conseguenze devastanti sia per la funzionalità aziendale che per la sicurezza del sito web stesso.

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-excessive-trust-in-client-side-controls

Lab: https://portswigger.net/web-security/authentication/multi-factor/lab-2fa-broken-logic

Non riuscire a gestire input non convenzionali

Uno degli obiettivi della logica dell’applicazione è limitare l’input dell’utente a valori che aderiscono alle regole aziendali. Ad esempio, l’applicazione può essere progettata per accettare valori arbitrari di un determinato tipo di dati, ma la logica determina se questo valore è accettabile o meno dal punto di vista dell’azienda. Molte applicazioni incorporano limiti numerici nella loro logica. Ciò potrebbe includere limiti progettati per gestire l’inventario, applicare restrizioni di budget, attivare fasi della catena di fornitura e così via.

Prendiamo il semplice esempio di un negozio online. Quando ordinano i prodotti, gli utenti in genere specificano la quantità che desiderano ordinare. Sebbene in teoria qualsiasi numero intero sia un input valido, la logica aziendale potrebbe impedire agli utenti di ordinare più unità di quelle attualmente disponibili in magazzino.

Per implementare regole come questa, gli sviluppatori devono anticipare tutti i possibili scenari e incorporare modi per gestirli nella logica dell’applicazione. In altre parole, devono dire all’applicazione se deve consentire un determinato input e come dovrebbe reagire in base alle varie condizioni. Se non esiste una logica esplicita per gestire un determinato caso, ciò può portare a comportamenti imprevisti e potenzialmente sfruttabili.

Ad esempio, un tipo di dati numerico potrebbe accettare valori negativi. A seconda della funzionalità correlata, potrebbe non avere senso che la logica aziendale lo consenta. Tuttavia, se l’applicazione non esegue un’adeguata convalida lato server e rifiuta questo input, un utente malintenzionato potrebbe essere in grado di passare un valore negativo e indurre un comportamento indesiderato.

Consideriamo un trasferimento di fondi tra due conti bancari. Questa funzionalità controllerà quasi sicuramente se il mittente dispone di fondi sufficienti prima di completare il trasferimento:

$transferAmount = $_POST[’amount’];
$currentBalance = $user->getBalance();

if ($transferAmount <= $currentBalance) {
	// Complete the transfer
} else {
	// Block the transfer: insufficient funds
}

Ma se la logica non impedisce sufficientemente agli utenti di fornire un valore negativo nel parametro dell’importo, un utente malintenzionato potrebbe sfruttarlo per aggirare il controllo del saldo e trasferire fondi nella direzione “sbagliata”. Se l’aggressore ha inviato -$1000 sul conto della vittima, ciò potrebbe comportare la ricezione di $1000 dalla vittima. La logica valuterebbe sempre che -1000 è inferiore al saldo corrente e approverebbe il trasferimento.

Semplici difetti logici come questo possono essere devastanti se si verificano nella giusta funzionalità. È anche facile non notarli durante lo sviluppo e il test, soprattutto perché tali input potrebbero essere bloccati dai controlli lato client sull’interfaccia web.

Quando controlli un’applicazione, dovresti utilizzare strumenti come Burp Proxy e Repeater per provare a inviare valori non convenzionali. In particolare, prova a inserire intervalli in cui difficilmente gli utenti legittimi entreranno mai. Ciò include input numerici eccezionalmente alti o eccezionalmente bassi e stringhe anormalmente lunghe per campi basati su testo. Puoi anche provare tipi di dati inaspettati. Osservando la risposta dell’applicazione, dovresti provare a rispondere alle seguenti domande:

  • Ci sono dei limiti imposti ai dati?
  • Cosa succede quando raggiungi questi limiti?
  • È stata eseguita qualche trasformazione o normalizzazione sul tuo input?

Ciò potrebbe esporre a una convalida dell’input debole che consente di manipolare l’applicazione in modi insoliti. Tieni presente che se trovi un modulo sul sito Web di destinazione che non riesce a gestire in modo sicuro input non convenzionali, è probabile che altri moduli presentino gli stessi problemi.

Lab: https://portswigger.net/web-security/logic-flaws/examples#failing-to-handle-unconventional-input

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-low-level

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-inconsistent-handling-of-exceptional-input

Fare ipotesi errate sul comportamento degli utenti

Una delle cause principali più comuni delle vulnerabilità logiche è la formulazione di ipotesi errate sul comportamento degli utenti. Ciò può portare a un’ampia gamma di problemi in cui gli sviluppatori non hanno considerato scenari potenzialmente pericolosi che violano questi presupposti. In questa sezione forniremo alcuni esempi cautelativi di presupposti comuni che dovrebbero essere evitati e dimostreremo come possano portare a pericolosi difetti logici.

Gli utenti fidati non rimarranno sempre affidabili

Le applicazioni possono sembrare sicure perché implementano misure apparentemente robuste per far rispettare le regole aziendali. Sfortunatamente, alcune applicazioni commettono l’errore di presumere che, dopo aver superato inizialmente questi severi controlli, si possa fidarsi dell’utente e dei suoi dati a tempo indeterminato. Ciò può comportare un’applicazione relativamente lassista degli stessi controlli da quel momento in poi.

Se le regole aziendali e le misure di sicurezza non vengono applicate in modo coerente in tutta l’applicazione, ciò può portare a lacune potenzialmente pericolose che possono essere sfruttate da un utente malintenzionato.

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-inconsistent-security-controls

Gli utenti non forniranno sempre input obbligatori

Un malinteso è che gli utenti forniranno sempre valori per i campi di input obbligatori. I browser possono impedire agli utenti comuni di inviare un modulo senza un input richiesto ma, come sappiamo, gli aggressori possono manomettere i parametri in transito. Ciò si estende anche alla rimozione completa dei parametri.

Questo è un problema particolare nei casi in cui più funzioni sono implementate all’interno dello stesso script lato server. In questo caso, la presenza o l’assenza di un particolare parametro può determinare quale codice verrà eseguito. La rimozione dei valori dei parametri può consentire a un utente malintenzionato di accedere a percorsi di codice che dovrebbero essere fuori portata.

Quando cerchi difetti logici, dovresti provare a rimuovere ciascun parametro a turno e osservare quale effetto questo ha sulla risposta. Dovresti assicurarti di:

  • rimuovere solo un parametro alla volta per garantire che vengano raggiunti tutti i percorsi del codice rilevanti;
  • provare a eliminare il nome del parametro e il valore. Il server in genere gestirà entrambi i casi in modo diverso;
  • seguire i processi in più fasi fino al completamento. A volte la manomissione di un parametro in un passaggio avrà un effetto su un altro passaggio più avanti nel flusso di lavoro.

Questo vale sia per i parametri URL che per quelli POST, ma non dimenticare di controllare anche i cookie. Questo semplice processo può rivelare alcuni comportamenti bizzarri dell’applicazione che potrebbero essere sfruttabili.

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-weak-isolation-on-dual-use-endpoint

Lab: https://portswigger.net/web-security/authentication/other-mechanisms/lab-password-reset-broken-logic

Gli utenti non seguiranno sempre la sequenza prevista

Molte transazioni si basano su flussi di lavoro predefiniti costituiti da una sequenza di passaggi. L’interfaccia web in genere guida gli utenti attraverso questo processo, portandoli alla fase successiva del flusso di lavoro ogni volta che completano quello corrente. Tuttavia, gli aggressori non necessariamente aderiranno a questa sequenza prevista. Non tenere conto di questa possibilità può portare a difetti pericolosi che possono essere relativamente semplici da sfruttare.

Ad esempio, molti siti Web che implementano l’autenticazione a due fattori (2FA) richiedono agli utenti di accedere su una pagina prima di inserire un codice di verifica su una pagina separata. Supponendo che gli utenti seguano sempre questo processo fino al completamento e, di conseguenza, non verificando che lo facciano, potrebbe consentire agli aggressori di ignorare completamente il passaggio 2FA.

Lab: https://portswigger.net/web-security/authentication/multi-factor/lab-2fa-simple-bypass

Fare ipotesi sulla sequenza degli eventi può portare a un’ampia gamma di problemi anche all’interno dello stesso flusso di lavoro o funzionalità. Utilizzando strumenti come Burp Proxy e Repeater, una volta che un utente malintenzionato ha visto una richiesta, può riprodurla a piacimento e utilizzare la navigazione forzata per eseguire qualsiasi interazione con il server nell’ordine desiderato. Ciò consente loro di completare diverse azioni mentre l’applicazione si trova in uno stato imprevisto.

Per identificare questo tipo di difetti, dovresti utilizzare la navigazione forzata per inviare richieste in una sequenza non prevista. Ad esempio, potresti saltare determinati passaggi, accedere a un singolo passaggio più di una volta, tornare ai passaggi precedenti e così via. Prendere nota di come si accede ai diversi passaggi. Sebbene spesso invii semplicemente una richiesta GET o POST a un URL specifico, a volte puoi accedere ai passaggi inviando diversi set di parametri allo stesso URL. Come per tutti i difetti logici, prova a identificare quali ipotesi hanno fatto gli sviluppatori e dove si trova la superficie di attacco. È quindi possibile cercare modi per violare questi presupposti.

Tieni presente che questo tipo di test causerà spesso eccezioni perché le variabili previste hanno valori nulli o non inizializzati. Anche l’arrivo in un luogo in uno stato parzialmente definito o incoerente potrebbe causare un reclamo da parte dell’applicazione. In questo caso, assicurati di prestare molta attenzione a eventuali messaggi di errore o informazioni di debug che incontri. Questi possono essere una preziosa fonte di divulgazione di informazioni, che può aiutarti a mettere a punto il tuo attacco e comprendere i dettagli chiave sul comportamento di back-end.

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-insufficient-workflow-validation

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-authentication-bypass-via-flawed-state-machine

Difetti specifici del dominio

In molti casi, incontrerai difetti logici specifici del dominio aziendale o dello scopo del sito.

La funzionalità di sconto dei negozi online è una classica superficie di attacco quando si va a caccia di difetti logici. Questa può essere una potenziale miniera d’oro per un utente malintenzionato, con tutti i tipi di difetti logici di base che si verificano nel modo in cui vengono applicati gli sconti.

Ad esempio, considera un negozio online che offre uno sconto del 10% sugli ordini superiori a $ 1000. Ciò potrebbe essere vulnerabile ad abusi se la logica aziendale non riesce a verificare se l’ordine è stato modificato dopo l’applicazione dello sconto. In questo caso, un utente malintenzionato potrebbe semplicemente aggiungere articoli al carrello fino a raggiungere la soglia di $ 1000, quindi rimuovere gli articoli che non desidera prima di effettuare l’ordine. Riceverebbero quindi lo sconto sul loro ordine anche se non soddisfa più i criteri previsti.

Dovresti prestare particolare attenzione a qualsiasi situazione in cui i prezzi o altri valori sensibili vengono modificati in base a criteri determinati dalle azioni dell’utente. Cerca di capire quali algoritmi utilizza l’applicazione per apportare queste modifiche e in quale punto vengono apportate queste modifiche. Ciò spesso comporta la manipolazione dell’applicazione in modo che si trovi in ​​uno stato in cui le modifiche applicate non corrispondono ai criteri originali previsti dagli sviluppatori.

Per identificare queste vulnerabilità, è necessario riflettere attentamente su quali obiettivi potrebbe avere un utente malintenzionato e provare a trovare diversi modi per raggiungerlo utilizzando la funzionalità fornita. Ciò potrebbe richiedere un certo livello di conoscenza specifica del dominio per capire cosa potrebbe essere vantaggioso in un dato contesto. Per usare un semplice esempio, è necessario comprendere i social media per comprendere i vantaggi di costringere un gran numero di utenti a seguirti.

Senza questa conoscenza del dominio, potresti respingere un comportamento pericoloso semplicemente perché non sei consapevole dei suoi potenziali effetti a catena. Allo stesso modo, potresti avere difficoltà a unire i punti e notare come due funzioni possano essere combinate in modo dannoso. Per semplicità, gli esempi utilizzati in questo argomento sono specifici per un dominio con cui tutti gli utenti avranno già familiarità, vale a dire un negozio online. Tuttavia, che tu stia cercando bug, pentesting o anche solo uno sviluppatore che cerca di scrivere codice più sicuro, a un certo punto potresti imbatterti in applicazioni provenienti da domini meno familiari. In questo caso, dovresti leggere quanta più documentazione possibile e, ove disponibile, parlare con esperti in materia del settore per ottenere informazioni. Potrebbe sembrare un lavoro impegnativo, ma più il dominio è “oscuro”, più è probabile che gli altri tester non abbiano notato molti bug.

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-flawed-enforcement-of-business-rules

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-infinite-money

Fornire un “oracolo di crittografia”

Possono verificarsi scenari pericolosi quando l’input controllabile dall’utente viene crittografato e il testo cifrato risultante viene quindi reso disponibile all’utente in qualche modo. Questo tipo di input è talvolta noto come “oracolo di crittografia”. Un utente malintenzionato può utilizzare questo input per crittografare dati arbitrari utilizzando l’algoritmo corretto e la chiave asimmetrica.

Ciò diventa pericoloso quando nell’applicazione sono presenti altri input controllabili dall’utente che prevedono dati crittografati con lo stesso algoritmo. In questo caso, un utente malintenzionato potrebbe potenzialmente utilizzare l’oracolo di crittografia per generare input validi e crittografati e quindi trasmetterli ad altre funzioni sensibili.

Questo problema può essere aggravato se sul sito è presente un altro input controllabile dall’utente che fornisce la funzione inversa. Ciò consentirebbe all’aggressore di decrittografare altri dati per identificare la struttura prevista. Ciò risparmia loro parte del lavoro necessario per creare dati dannosi, ma non è necessariamente necessario per creare un exploit di successo.

La gravità di un oracolo di crittografia dipende da quale funzionalità utilizza anche lo stesso algoritmo dell’oracolo.

Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-authentication-bypass-via-encryption-oracle

Discrepanze nel parser degli indirizzi e-mail

Alcuni siti Web analizzano gli indirizzi e-mail per estrarre il dominio e determinare a quale organizzazione appartiene il proprietario dell’e-mail. Anche se inizialmente questo processo può sembrare semplice, in realtà è molto complesso, anche per indirizzi validi conformi a RFC.

Le discrepanze nel modo in cui vengono analizzati gli indirizzi e-mail possono compromettere questa logica. Queste discrepanze si verificano quando diverse parti dell’applicazione gestiscono gli indirizzi e-mail in modo diverso.

Un utente malintenzionato può sfruttare queste discrepanze utilizzando tecniche di codifica per mascherare parti dell’indirizzo e-mail. Ciò consente all’aggressore di creare indirizzi e-mail che superano i controlli di convalida iniziali ma vengono interpretati in modo diverso dalla logica di analisi del server.

L’impatto principale delle discrepanze del parser degli indirizzi e-mail è l’accesso non autorizzato. Gli aggressori possono registrare account utilizzando indirizzi e-mail apparentemente validi provenienti da domini limitati. Ciò consente loro di accedere ad aree sensibili dell’applicazione, come pannelli di amministrazione o funzioni utente riservate.

Maggiori informazioni

Per informazioni dettagliate sulle discrepanze nell’analisi delle e-mail, incluso il modo in cui possono essere sfruttate, consultare il white paper Splitting the Email Atom: Exploiting Parser to Bypass Access Controls di Gareth Heyes del team di ricerca di PortSwigger.
Lab: https://portswigger.net/web-security/logic-flaws/examples/lab-logic-flaws-bypassing-access-controls-using-email-address-parsing-discrepancies

Il diritto all’oblio nella società digitale: “right to be forgotten” nell’Internet che non dimentica

In questo articolo si discute il ruolo della memoria e dell’oblio nella costruzione dell’identità personale e sociale, confrontando l’era pre-digitale con l’attuale epoca digitale. Nell’era pre-digitale, la diffusione delle informazioni era limitata e controllata principalmente dai media tradizionali. Tuttavia, l’avvento di Internet ha radicalmente cambiato questa situazione, consentendo un’ampia diffusione e accessibilità delle informazioni, con la possibilità di conservare il passato in un “quasi eterno presente”. Questo aumento esponenziale delle informazioni online presenta rischi per l’individuo, come la perdita della dimensione cronologica delle notizie e il potenziale deterioramento dell’immagine personale a causa dell’accesso alle informazioni passate. Viene, inoltre, proposto il “diritto all’oblio” come uno strumento di tutela per impedire che eventi passati influenzino negativamente l’immagine attuale di una persona. L’attenzione viene posta, altresì, all’evolversi del concetto di oblio nel tempo, l’impatto della transizione al mondo digitale su questo diritto e le norme europee, in particolare il Regolamento UE 2016/676, che riguardano la protezione dei dati personali e contribuiscono alla definizione del diritto all’oblio.

Il dibattito sulla regolamentazione di Internet e sul suo impatto sulla libertà di espressione e sulla privacy individuale è un argomento complesso e sfaccettato. L’avanzamento tecnologico nell’ambito delle Tecnologie dell’Informazione e della Comunicazione (ICT) ha portato a una rivoluzione nelle modalità di comunicazione e nell’esercizio dei diritti fondamentali, in particolare la libertà di espressione, garantita dalla Costituzione all’articolo 21. Questa trasformazione ha sollevato questioni importanti riguardo alla privacy e alla protezione dei dati personali, culminando nel concetto di “diritto all’oblio”, che permette alle persone di richiedere la rimozione di informazioni obsolete o irrilevanti su di loro da Internet.

Le sfide legislative nel bilanciare i diritti alla libertà di informazione e alla privacy sono notevoli, in particolare in un contesto globalizzato dove la diffusione delle informazioni è praticamente illimitata. Il tentativo di regolamentare Internet ha spesso suscitato controversie, percepite da alcuni come tentativi di limitare la libertà di espressione. Tuttavia, la mancanza di regolamentazione adeguata può portare a un’atmosfera di anarchia online, dove la responsabilità personale è facilmente elusa.

La decisione del CERN di rendere pubblica la tecnologia del World Wide Web nel 1993, ha segnato l’inizio di una nuova era di accessibilità all’informazione, ma ha anche introdotto il dilemma di come gestire una rete globale senza regole chiare. Questo ha portato all’emergere di “nuovi diritti” legati alla digitalizzazione della società, tra cui il diritto alla riservatezza e il diritto all’oblio, interpretati come estensioni dei diritti costituzionali esistenti. Questi diritti mirano a proteggere la dignità e la privacy degli individui nell’era digitale, consentendo loro di controllare come le loro informazioni personali vengono condivise e ricordate online.

In conclusione, la necessità di proteggere l’identità digitale delle persone e di garantire la loro privacy online è diventata una priorità nell’attuale società dell’informazione. Il diritto all’oblio emerge come uno strumento fondamentale per salvaguardare la reputazione e l’identità personale degli individui, affrontando le sfide poste dalla permanenza e dalla pervasività delle informazioni personali su Internet.

L’ implementazione del diritto all’oblio presenta sfide significative che richiedono un equilibrio attento tra la privacy individuale e la libertà di informazione. In un mondo sempre più interconnesso e digitale, il diritto all’oblio continua a essere un argomento di grande rilevanza e dibattito.

Nel panorama giuridico europeo, la protezione dei dati personali si è affermata come un diritto fondamentale, rispondendo alla necessità di bilanciare la privacy individuale con le libertà di informazione ed espressione in un contesto sempre più dominato dalla presenza digitale. La distinzione tra il diritto alla protezione dei dati personali e il diritto al rispetto della vita privata, come delineato nella Carta dei diritti fondamentali dell’Unione europea, segnala un’evoluzione da una concezione statica e negativa della privacy verso una tutela dinamica e proattiva dei dati, implicando un potere di intervento e controllo non solo da parte degli individui ma anche attraverso la supervisione di autorità indipendenti.

Questo cambiamento trova conferma nell’evoluzione legislativa, partendo dalla direttiva 95/46/CE, attraverso l’introduzione del Codice in materia di protezione dei dati personali in Italia (d.lgs. 196/2003), fino all’adozione del Regolamento (UE) 2016/679 (GDPR – General Data Protection Regulation), che ha introdotto un quadro giuridico uniforme e direttamente applicabile in tutti gli Stati membri dell’Unione Europea. L’intento è quello di assicurare che il trattamento dei dati personali avvenga nel rispetto dei diritti e delle libertà fondamentali degli individui.

Tuttavia, il dibattito sul diritto all’oblio, specialmente in relazione al ruolo dei motori di ricerca e alla gestione delle informazioni online, ha sollevato questioni complesse sul bilanciamento dei diritti in gioco. La sentenza della Corte di Giustizia dell’Unione Europea nel caso Google Spain ha segnato un punto di svolta, riconoscendo la responsabilità dei motori di ricerca nel trattamento dei dati personali e affermando il diritto degli individui di richiedere la rimozione di informazioni obsolete o irrilevanti dalla lista dei risultati di ricerca, ponendo le basi per una tutela più efficace della privacy digitale.

In contrapposizione, la Corte Europea dei Diritti dell’Uomo ha adottato un approccio differente, privilegiando la libertà di espressione e il diritto del pubblico all’informazione rispetto al diritto all’oblio, suggerendo una soluzione meno drastica attraverso l’aggiunta di precisazioni o aggiornamenti alle informazioni già pubblicate, piuttosto che la loro rimozione completa.

Queste dinamiche riflettono le tensioni intrinseche nel bilanciamento tra privacy e trasparenza nell’era digitale, evidenziando l’importanza di un dialogo continuo e di un approccio multilivello alla regolamentazione dei diritti in rete, che tenga conto della complessità e della fluidità del contesto digitale globale. La sfida per legislatori e giudici rimane quella di trovare equilibri dinamici che possano tutelare efficacemente i diritti degli individui senza soffocare le libertà fondamentali che sono alla base di una società democratica e informata.

Il “diritto all’oblio”, inteso come la prerogativa di essere dimenticati dalla collettività, si afferma nel contesto giuridico come una dimensione fondamentale della tutela della privacy e dell’identità personale nell’era digitale. Questo diritto consente agli individui di richiedere la deindicizzazione e, in alcuni casi, la cancellazione di dati personali dai motori di ricerca quando tali informazioni, un tempo pertinenti o di interesse pubblico, diventano obsolete o irrilevanti, evitando così una perpetua esposizione mediatica che potrebbe danneggiare la reputazione personale.

Viene in tal modo introdotta la possibilità per ogni individuo di richiedere la cancellazione di informazioni che, con il trascorrere del tempo, hanno perso rilevanza o interesse pubblico. L’attuazione di tale diritto si basa sulla valutazione della persistente rilevanza delle informazioni, tenendo conto dell’evoluzione del contesto sociale e informativo.

La giurisprudenza civile stabilisce criteri specifici per la pubblicazione di notizie che potrebbero compromettere l’onore e la reputazione, richiedendo la verità oggettiva della notizia, l’interesse pubblico alla conoscenza del fatto e la correttezza formale dell’esposizione. Con il tempo, è emersa una nuova sensibilità giuridica che limita il diritto di cronaca alla luce dell’attualità delle notizie, precludendo la diffusione di informazioni non più rilevanti socialmente o d’interesse pubblico.

Il diritto all’oblio si distingue per la sua funzione di tutela dell’identità personale di fronte all’impatto potenzialmente illimitato e duraturo delle informazioni digitali. La giurisprudenza civile enfatizza la necessità di proteggere la proiezione sociale dell’identità dell’individuo, assicurando che dati personali obsoleti o non più pertinenti non siano ulteriormente diffusi, in considerazione dell’evoluzione della reputazione e dell’identità personale nel tempo.

Questa concezione del diritto all’oblio viene riconosciuta anche dalla Corte Costituzionale, che ha stabilito la possibilità di cancellare dal casellario giudiziale le iscrizioni di responsabili di illeciti minori dopo un periodo adeguato senza ulteriori reati, riaffermando l’importanza del bilanciamento tra il diritto all’oblio e altre esigenze di carattere pubblico.

La Suprema Corte ribadisce che il diritto all’oblio non si riduce alla mera cancellazione di notizie dannose per la reputazione, ma implica la capacità di aggiornare o rimuovere informazioni che, con il passare del tempo, diventano lesive per l’identità personale dell’interessato. Questo diritto si estende alla protezione contro la diffusione non necessaria di notizie passate che non presentano più un interesse pubblico o una rilevanza sociale, stabilendo un equilibrio tra il diritto di cronaca e la libertà di espressione, da un lato, e la tutela della privacy e dell’identità personale, dall’altro.

L’approfondimento mira a delineare come questi diritti contribuiscano a consolidare il principio di autodeterminazione informativa, permettendo all’individuo un controllo più stringente sulle proprie informazioni personali.

Il diritto alla cancellazione, articolato nell’articolo 17 del GDPR, offre all’interessato la facoltà di richiedere la rimozione dei dati personali che lo riguardano, sotto specifiche condizioni. Queste includono scenari in cui i dati non sono più necessari rispetto alle finalità per le quali sono stati raccolti, il ritiro del consenso su cui si basa il trattamento, o il rilevamento di trattamento illecito dei dati. La normativa chiarisce che tale diritto non è assoluto ma condizionato dalla presenza di determinate circostanze che legittimano la richiesta di cancellazione, al fine di bilanciare altri interessi fondamentali, come la libertà di espressione e il diritto all’informazione. La cancellazione dei dati non può avvenire automaticamente se prevale un interesse pubblico legittimo o se i dati sono necessari per l’accertamento, l’esercizio o la difesa di un diritto in sede giudiziaria.

Oltre alla distruzione fisica dei dati, il regolamento contempla alternative quali l’anonimizzazione, intendendo qualsiasi processo che renda i dati non riconducibili all’identità del soggetto interessato. Tale approccio differisce dalla pseudonimizzazione, in quanto quest’ultima non preclude la possibilità di futura reidentificazione. Pertanto, l’efficacia del diritto alla cancellazione si manifesta attraverso la irreversibilità della separazione tra i dati e l’identità dell’individuo, un aspetto fondamentale per la tutela della privacy. La normativa impone al titolare del trattamento di valutare le richieste di cancellazione nel rispetto del principio di proporzionalità, tenendo conto dei costi, delle tecnologie disponibili e della propria organizzazione. Qualora i dati oggetto della richiesta di cancellazione siano stati condivisi con terzi, il titolare è tenuto a informare tali entità della necessità di adottare misure analoghe a quelle intraprese direttamente. 

Nel complesso giurisprudenziale e normativo vanno ricordate:

  • Sentenza della Corte (Grande Sezione) del 13 maggio 2014. Google Spain SL e Google Inc. contro Agencia Española de Protección de Datos (AEPD) e Mario Costeja González. Causa C131/12. “Il gestore di un motore di ricerca su Internet è responsabile del trattamento da esso effettuato dei dati personali che appaiono su pagine web pubblicate da terzi. Così, nel caso in cui, a seguito di una ricerca effettuata a partire dal nome di una persona, l’elenco di risultati mostra un link verso una pagina web che contiene informazioni sulla persona in questione, questa può rivolgersi direttamente al gestore oppure, qualora questi non dia seguito alla sua domanda, adire le autorità competenti per ottenere, in presenza di determinate.” La Corte di Giustizia dell’Unione Europea nel caso Google Spain ha posto le basi per il riconoscimento del diritto all’oblio nel contesto dei motori di ricerca. La Corte ha stabilito che i motori di ricerca hanno la responsabilità di rimuovere i link a informazioni obsolete o non più rilevanti, equilibrando il diritto alla privacy degli individui con il diritto del pubblico all’accesso alle informazioni. Questa decisione ha evidenziato il ruolo dei motori di ricerca nella gestione delle informazioni personali e ha sottolineato la necessità di valutare attentamente le richieste di deindicizzazione in base all’interesse pubblico e alla rilevanza delle informazioni.
  • Sentenza della Corte di giustizia nella causa C-136/17 (24 settembre 2019)
    GC e a./Commission nationale de l’informatique et des libertés (CNIL). “Il divieto di trattare determinate categorie di dati personali sensibili si applica anche ai gestori di motori di ricerca. Nell’ambito di una domanda di deindicizzazione, dev’essere effettuato un bilanciamento tra i diritti fondamentali del richiedente la deindicizzazione e quelli degli utenti di Internet potenzialmente interessati a tali informazioni”.
  • Sentenza nella causa C-507/17 (24 settembre 2019). Google LLC, succeduta alla Google Inc./ Commission nationale de l’informatique et des libertés (CNIL)“Il gestore di un motore di ricerca non è tenuto a effettuare la deindicizzazione in tutte le versioni del suo motore di ricerca. È tuttavia tenuto ad effettuarla nelle versioni di tale motore di ricerca corrispondenti a tutti gli Stati membri e ad attuare misure che scoraggino gli utenti di Internet dall’avere accesso, a partire da uno degli Stati membri, ai link di cui trattasi contenuti nelle versioni extra UE di detto motore”.
  • La sentenza della Corte di giustizia dell’Unione Europea nella causa C-460/20, relativa al caso Google (Deindicizzazione di contenuti asseritamente inesatti), rappresenta un importante punto di riferimento nell’ambito del diritto alla protezione dei dati personali, in particolare per quanto concerne il “diritto all’oblio”). Il contesto della sentenza riguarda la richiesta da parte di due dirigenti di un gruppo di società di investimenti affinché Google deindicizzasse risultati di ricerca collegati a loro nomi, i quali contenevano link verso articoli criticando il loro modello di investimento con affermazioni ritenute inesatte, e l’eliminazione delle loro fotografie sotto forma di miniature da risultati di ricerca di immagini. La Corte di giustizia sottolinea che il diritto alla protezione dei dati personali non è assoluto ma deve essere bilanciato con altri diritti fondamentali, come la libertà di informazione, seguendo il principio di proporzionalità. La normativa europea prevede eccezioni al diritto alla cancellazione quando il trattamento dei dati è necessario per l’esercizio del diritto alla libertà di informazione. Nella sua decisione, la Corte stabilisce che i diritti alla protezione della vita privata e dei dati personali prevalgono generalmente sull’interesse degli utenti di Internet all’accesso alle informazioni, ma questo equilibrio può variare a seconda delle circostanze del caso, incluse la natura e la sensibilità delle informazioni e l’interesse pubblico ad esse associato. Tuttavia, quando le informazioni indicizzate si rivelano manifestamente inesatte, o almeno una parte di esse di non minore importanza, il diritto alla libertà d’espressione e di informazione non può essere considerato per giustificare il loro mantenimento nell’indice del motore di ricerca. Per quanto riguarda l’obbligo di prova in capo a chi richiede la deindicizzazione, la Corte precisa che spetta a questa persona dimostrare l’inesattezza manifesta delle informazioni, fornendo prove ragionevolmente ricercabili, senza che ciò comporti un onere eccessivo. Non è necessario, almeno nella fase precontenziosa, fornire una decisione giudiziaria contro l’editore del sito. Il gestore del motore di ricerca, ricevuta una richiesta di deindicizzazione supportata da elementi di prova pertinenti e sufficienti, è tenuto ad accoglierla, soprattutto se esiste una decisione giudiziaria che attesta l’inesattezza delle informazioni. In assenza di manifesta inesattezza evidente dagli elementi forniti, e senza una decisione giudiziaria che lo confermi, il gestore del motore di ricerca non è obbligato ad accogliere la richiesta, ma il richiedente può rivolgersi alle autorità competenti per ulteriori verifiche. Questa sentenza impone ai gestori dei motori di ricerca di adottare un approccio più attento e ponderato nell’esaminare le richieste di deindicizzazione, tenendo conto dei diritti fondamentali coinvolti e delle prove fornite dai richiedenti.
  • In particolare riferimento al nostro Paese, va evidenziato il d.lgs. 150 del 2022, noto come Riforma Cartabia, che ha introdotto nell’ordinamento giuridico italiano l’articolo 64-ter riguardante il “diritto all’oblio degli imputati e delle persone sottoposte a indagini” nelle disposizioni di attuazione del codice di procedura penale. Questa novità normativa mira a bilanciare il rapporto tra processo penale, media, e diritto all’oblio, fornendo strumenti legali per limitare la diffusione di informazioni che possano ledere la reputazione di individui già prosciolti o assolti. L’articolo 64-ter dispone che le persone a cui è stata pronunciata una sentenza di proscioglimento, non luogo a procedere, o un decreto di archiviazione, hanno il diritto di richiedere la deindicizzazione (rimozione da risultati di ricerca internet) o la preclusione dell’indicizzazione dei dati personali citati nei provvedimenti giudiziari. Questo è un passo avanti significativo nel riconoscere e tutelare il diritto all’oblio digitale di individui ingiustamente coinvolti in procedimenti penali, offrendo un rimedio legale contro la permanente disponibilità e accessibilità di informazioni potenzialmente dannose su internet. L’introduzione di questo articolo risponde all’esigenza di proteggere la dignità e la reputazione delle persone nell’era digitale, dove le informazioni su internet hanno una longevità e una diffusione senza precedenti. La normativa cerca di armonizzare le disposizioni italiane con i principi del diritto all’oblio sanciti a livello europeo, in particolare con il regolamento GDPR che prevede il diritto alla cancellazione dei dati personali. Nonostante l’innovazione legislativa, emergono alcune criticità nella sua applicazione pratica, come la definizione dei criteri per l’accoglimento delle richieste di deindicizzazione e la modalità con cui tali richieste sono esaminate e attuate dai motori di ricerca. Inoltre, vi sono dubbi sull’effettiva capacità della norma di assicurare una tutela efficace dell’oblio digitale, considerando le sfide tecniche e giuridiche legate alla gestione delle informazioni online e le implicazioni per la libertà di espressione e il diritto all’informazione. L’articolo 64-ter rappresenta un tentativo significativo di adeguare il diritto italiano alle sfide poste dalla digitalizzazione della società e dall’interazione tra privacy, reputazione online e diritti delle persone coinvolte in procedimenti giudiziari. Tuttavia, la sua efficacia pratica dipenderà dalla capacità di risolvere le questioni operative e interpretative che ne derivano, necessitando possibilmente di futuri aggiustamenti legislativi o interpretativi per garantire una protezione effettiva del diritto all’oblio.

Nel contesto dell’era digitale, la questione dell’oblio e della memoria collettiva assume connotazioni inedite e complesse. La riflessione si apre con l’interrogativo su quale forma assuma la vita in un’epoca dove “Google ricorda sempre”, evidenziando i pericoli emergenti legati alla rete, un dominio che funge da deposito per un’implacabile memoria collettiva. La digitalizzazione ha portato a una situazione dove ogni aspetto della vita umana viene raccolto, cristallizzato e reso eternamente accessibile nell’ “inconscio digitale”, trasformando la memoria, un tempo intesa come un accumulo di esperienze, in un peso da cui liberarsi.

Il desiderio di oblio, quindi, non nasce tanto dalla volontà di eludere uno sguardo indesiderato, quanto dalla necessità di ritirarsi in una zona d’ombra digitale, dove le tracce personali possono essere “cancellate”. Questo bisogno si è intensificato con l’avvento di Internet e delle nuove tecnologie, che hanno reso ogni traccia della vita umana permanentemente accessibile, ponendo le basi per il diritto all’oblio. Questo diritto, emergente tra gli anni ‘80 e ‘90, oscilla tra il rispetto dell’identità della persona e il diritto alla riservatezza, assumendo una configurazione autonoma grazie all’espansione dei cosiddetti diritti della personalità.

L’evoluzione giuridica di tale diritto, è stato riconosciuto e definito attraverso un processo di reinterpretazione dell’art. 2 della Costituzione italiana, che considera la tutela della personalità umana in tutte le sue espressioni, anche quelle non ancora normativamente tipizzate. Questo approccio ha portato al riconoscimento giuridico di situazioni esistenziali quali il diritto alla riservatezza e il diritto all’identità personale, distinguendoli per la prima volta e ponendo le basi per l’emergere del diritto all’oblio.

Il diritto all’oblio, pertanto, è stato inizialmente inteso come la pretesa di non vedere rievocati fatti già resi di pubblico dominio, con l’obiettivo di proteggere l’individuo da una nuova notorietà indesiderata. La giurisprudenza di legittimità ha successivamente qualificato l’oblio come l’interesse a non restare indefinitamente esposto ai danni ulteriori arrecati alla reputazione dall’incessante pubblicazione di notizie passate.

Nel bilanciamento tra diritto all’oblio e diritto di cronaca, emerge la complessità di armonizzare l’interesse pubblico all’informazione con il diritto individuale alla dimenticanza. La prevalenza di uno sull’altro dipende dalla rilevanza attuale della notizia e dall’esistenza di un interesse pubblico nella sua rievocazione.

Nell’era della digitalizzazione, la nozione di privacy subisce una trasformazione radicale, evidenziando come la dimensione virtuale influenzi profondamente il concetto di spazio personale. È evidente come la rivoluzione elettronica e tecnologica abbia espanso lo schermo della vita personale oltre il personal computer, immergendola nell’intero spazio della rete. Questo cambio di paradigma solleva interrogativi significativi sulla possibile perdita di diritti in un contesto dove la privacy tradizionale, intesa come “diritto a essere lasciato solo”, non sembra più adeguata a tutelare l’individuo contro intrusioni non desiderate.

La trasformazione della “sfera privata” in un luogo di scambio e condivisione di dati personali richiede un’evoluzione verso la “protezione dei dati”, concetto elaborato nell’ambito europeo per rispondere alla necessità di una disciplina uniforme che regoli i nuovi spazi sconfinati e mobili della rete. Il contesto digitale, caratterizzato da un pluralismo di fonti e una molteplicità di giurisdizioni, presenta sfide significative nella risoluzione delle controversie e nel bilanciamento tra diritti personali e la libertà di informazione. La peculiarità dei diritti in rete, che non ammettono una gerarchizzazione a causa della natura intrinsecamente egualitaria della rete, richiede un approccio “multilevel” per la loro regolamentazione.

In questo scenario, il diritto all’oblio emerge come una necessità di governare la propria memoria digitale, offrendo a ciascuno la possibilità di reinventarsi e costruire una nuova identità personale, liberandosi dalle “gabbie” imposte da una memoria onnipresente e totalizzante. Tuttavia, la regolamentazione dei diritti in un dominio apparentemente anarchico come il web solleva interrogativi fondamentali sui meccanismi di governance, sul ruolo degli Stati e sulla capacità delle leggi di adattarsi a una realtà in continuo mutamento.

Il dibattito sulla regolamentazione del ciberspazio, evidenziato dalla Dichiarazione d’indipendenza del ciberspazio, mostra la tensione tra la necessità di tutelare i diritti umani in un contesto digitale e la resistenza a un controllo centralizzato. Le questioni su chi debba essere il legislatore e quale giudice debba applicare i diritti proclamati riflettono le sfide poste dalla nascita di nuovi diritti umani nell’era digitale, sottolineando l’urgenza di trovare soluzioni innovative per garantire la protezione della privacy e altri diritti fondamentali nell’ambito virtuale. La risposta a queste sfide passa attraverso un dialogo inclusivo tra diversi attori a vari livelli, che possano concorrere alla creazione di un quadro normativo adatto a regolare la complessità del ciberspazio, come dimostrato dagli sforzi dell’Unione Europea in materia di protezione dei dati.

L’articolo 17 del GDPR segna un punto di svolta nella protezione dei dati personali nell’Unione Europea, introducendo il “diritto alla cancellazione” dei dati personali, comunemente noto come “diritto all’oblio”. Questo diritto permette agli individui di richiedere la cancellazione dei propri dati personali dal titolare del trattamento senza ingiustificato ritardo, e impone al titolare del trattamento l’obbligo di cancellare tali dati quando sussistono specifiche condizioni.

Nonostante il termine “diritto all’oblio” non sia esplicitamente definito nel GDPR, l’articolo 17 stabilisce chiaramente i presupposti per l’esercizio di questo diritto, tra cui la non necessità dei dati per le finalità originali di raccolta o trattamento, la revoca del consenso da parte dell’interessato, e il trattamento illecito dei dati. Tuttavia, il regolamento ammette eccezioni al diritto alla cancellazione, ad esempio quando il trattamento è necessario per l’esercizio della libertà di espressione e di informazione, per l’adempimento di un obbligo legale, o per motivi di interesse pubblico.

La giurisprudenza e la dottrina hanno sollevato criticità riguardo all’assenza di una definizione precisa del diritto all’oblio e alla discrezionalità affidata alle corti e alle autorità nazionali nel bilanciamento tra i diritti dell’interessato e gli altri interessi in gioco. Inoltre, l’articolo 17 viene interpretato come uno tra i possibili rimedi per realizzare l’oblio, evidenziando come esistano diverse declinazioni di questo diritto, come la deindicizzazione, l’anonimizzazione dei dati, e la contestualizzazione delle informazioni non più attuali.

La giurisprudenza italiana ha affrontato questioni legate al diritto all’oblio, bilanciando il diritto di cronaca e il diritto alla privacy. Due casi significativi riguardano un noto cantautore italiano e una vicenda di uxoricidio, entrambi esemplificativi del dibattito sul diritto all’oblio rispetto alla libertà di espressione e al diritto di cronaca. La Suprema Corte di Cassazione ha delineato criteri per il bilanciamento tra questi diritti, sottolineando che la pubblicazione di informazioni relative a persone a distanza di tempo dai fatti deve rispettare specifici presupposti per non violare il diritto all’oblio.

La decisione delle Sezioni Unite del 2019 rappresenta un momento storico nella giurisprudenza italiana, identificando tre differenti declinazioni del diritto all’oblio e stabilendo che la rievocazione di fatti storici deve avvenire in forma anonima, a meno che non si tratti di figure pubbliche. Questa sentenza evidenzia l’importanza del diritto all’oblio nel contesto digitale, riconoscendo il diritto degli individui a non essere eternamente legati a informazioni del passato, favorendo così la possibilità di reinserimento sociale e la protezione della dignità personale.

La decisione del settembre 2019 della Corte di Giustizia dell’Unione Europea sul caso Google rappresenta un importante punto di riferimento nell’interpretazione e applicazione del diritto alla protezione dei dati personali, in particolare in relazione all’articolo 17 del GDPR. Questa sentenza ha affrontato questioni chiave riguardanti l’ammissibilità dell’esercizio del diritto alla deindicizzazione e la sua possibile estensione territoriale oltre i confini dell’Unione Europea.

La Corte è stata chiamata a risolvere due questioni principali: da un lato, il bilanciamento tra il diritto alla protezione dei dati personali e il diritto all’informazione dell’utente di Internet; dall’altro, la determinazione della portata territoriale del diritto alla deindicizzazione. Con particolare attenzione alla prima questione, è stato riconosciuto che, mentre l’Internet agisce come veicolo per la cura e l’aggiornamento dei dati personali attraverso i siti sorgente e la loro successiva indicizzazione e memorizzazione da parte dei motori di ricerca, l’articolo 17 del GDPR stabilisce le condizioni per cui un individuo può richiedere la cancellazione dei propri dati personali. In questo contesto, è emersa l’importanza non solo del diritto a essere informati ma anche del diritto di informare, sottolineando la necessità di proteggere l’informazione in tutte le sue forme per assicurare il pluralismo informativo e il diritto di ogni utente ad essere adeguatamente informato.

Riguardo alla seconda questione, relativa alla portata territoriale del diritto all’oblio, la Corte ha stabilito che il gestore di un motore di ricerca è tenuto a rimuovere i link dalle versioni del motore di ricerca corrispondenti a tutti gli Stati membri dell’UE, limitando così l’obbligo di deindicizzazione ai confini territoriali dell’Unione. Questa decisione riflette la complessità di estendere la protezione dei dati personali e il diritto alla cancellazione a livello globale, dato che molti paesi al di fuori dell’UE non riconoscono il diritto alla protezione dei dati personali o non lo regolano in modo simile. La sentenza del 2019 chiarisce dunque che la deindicizzazione, sebbene rappresenti un importante strumento di tutela dei diritti degli individui nell’ambito digitale, ha un ambito di applicazione geograficamente limitato all’UE. Questo implica che, nonostante le rigorose protezioni offerte all’interno dell’Unione, la capacità di garantire il diritto alla cancellazione dei dati su scala globale rimane una sfida significativa. La decisione sottolinea l’importanza di sviluppare meccanismi e strategie, come il blocco geografico, che permettano di adempiere efficacemente agli obblighi di deindicizzazione nel rispetto dei principi stabiliti dal GDPR, pur riconoscendo le limitazioni imposte dal contesto normativo e giuridico internazionale.

Negli ultimi anni si stanno sviluppando tuttavia altre forme di tutela, le quali demandano l’intera attività di raccolta di informazioni, nonché la fase decisionale, direttamente ai provider o ai soggetti che gestiscono il motore di ricerca. Nei paragrafi successivi saranno analizzati tali strumenti. Sarà altresì preso in considerazione il social network Facebook, il quale, secondo gli analisti anche alla luce della relativa diffusione nel medio e lungo periodo avrebbe l’intenzione di contrapporsi ai motori di ricerca (http://search.fb.com/), integrando un motore di ricerca interno e sfruttando i contenuti dei propri utenti ed avvalendosi di una standardizzazione dei dati particolarmente elevata. Facebook appare certamente così appartenere alla zona grigia della sentenza C-131, in quanto allo stato attuale appare difficile che esso sia considerato come un vero e proprio motore di ricerca, ma inizia già ora a svolgere, in tutto o in parte, la funzione tecnologica di ricerca delle informazioni, seppure in una rete ristretta.

La tematica della deindicizzazione e del diritto all’oblio su internet ha acquisito rilevanza crescente nell’era digitale, particolarmente con l’introduzione di meccanismi che permettono agli individui di richiedere la rimozione di contenuti dai motori di ricerca come Google. Questo fenomeno, evidenziato dalla rapida escalation delle richieste di rimozione subito dopo la disponibilità di un modulo online dedicato, mette in luce le sfide e le complessità intrinseche alla gestione del diritto alla privacy nell’ambiente online.

Google law: un form per l’esercizio dell’oblio

    Google, in risposta alle esigenze normative e sociali, ha introdotto un modulo web[1] che consente agli individui di esercitare il diritto all’oblio, chiedendo la rimozione di specifici contenuti dalle pagine dei risultati di ricerca (SERP[2]). L’iter procedurale, nonostante la sua apparente semplicità, nasconde diverse complessità sia operative che etiche. La necessità di allegare una scansione di un documento d’identità, pur consentendo l’anonimizzazione di alcune parti, solleva questioni relative alla sicurezza dei dati personali e alla loro gestione da parte di un ente privato come Google.

    La gestione delle richieste, affidata inizialmente al personale junior e poi, in casi più complessi, a consulenti senior e avvocati, denota un processo decisionale strutturato e mirato a valutare l’appropriatezza delle richieste di rimozione. Questo processo si articola in diverse fasi che includono la verifica dell’identità del richiedente, il collegamento con un Paese europeo, la pertinenza delle informazioni con il nome del richiedente e l’interesse pubblico delle informazioni richieste per la deindicizzazione.

    Una delle criticità maggiori del sistema di deindicizzazione risiede nella sua applicabilità e conformità alle normative sui diritti alla privacy, in particolare rispetto al contesto europeo. La procedura di Google, pur essendo un passo verso il riconoscimento del diritto all’oblio, sembra limitare la sua applicazione ai cittadini o residenti europei, non allineandosi completamente alle disposizioni del codice della privacy italiano che estende la tutela dei dati personali a chiunque, indipendentemente dalla cittadinanza, purché il trattamento dei dati avvenga sul territorio italiano.

    Inoltre, l’efficacia della deindicizzazione si limita alla rimozione dei contenuti basati su specifiche parole chiave, come il nome dell’interessato, senza impedire la reperibilità delle informazioni attraverso altre vie di ricerca. Questo limita sostanzialmente il diritto all’oblio, riducendolo a una mera deindicizzazione nominativa che non cancella la presenza online delle informazioni, ma ne riduce solo parzialmente l’accessibilità.

    La gestione del diritto all’oblio da parte di Google pone in evidenza la necessità di un approccio più olistico e conforme alle diverse normative nazionali ed europee. Un sistema efficace di deindicizzazione dovrebbe non solo considerare le specificità legali di ogni Paese ma anche garantire una reale protezione del diritto alla privacy, estendendo la possibilità di rimozione a tutte le informazioni irrilevanti o obsolete, indipendentemente dalle parole chiave utilizzate nella ricerca.

    In conclusione, mentre la procedura attuale rappresenta un importante passo avanti nella tutela della privacy online, rimangono significative sfide e opportunità per migliorare l’efficacia e la conformità del diritto all’oblio con le diverse normative sulla protezione dei dati. Sarà fondamentale continuare a monitorare e valutare l’evoluzione di queste pratiche per garantire un equilibrio tra il diritto alla privacy degli individui e l’interesse pubblico all’accesso alle informazioni.

    Bing

    Bing, il motore di ricerca di Microsoft Corporation, ha reso disponibile un proprio form[3] articolato in 4 parti, per richiedere la deindicizzazione dei contenuti.

    Il modo in cui Bing gestisce le richieste di deindicizzazione offre spunti peculiari per un’analisi approfondita, soprattutto se confrontato con Google. Il form di richiesta di deindicizzazione proposto da Bing si distingue per il suo approccio analitico, richiedendo agli utenti di specificare non solo il contenuto da rimuovere ma anche il contesto e la posizione dell’interessato nella propria comunità. Questo dettaglio assume particolare rilevanza in quanto sottolinea l’importanza dell’impatto sociale e comunitario nell’analisi delle richieste, offrendo una tutela più affine alle dinamiche sociali reali.

    Differenze significative emergono anche nella territorialità applicata alla procedura di deindicizzazione, con Google che estende la protezione non solo ai residenti ma anche agli individui domiciliati in Europa. Questa estensione rappresenta una sensibilità più ampia verso il diritto alla privacy, andando oltre le mere distinzioni legali tra residenza e domicilio.

    Una peculiarità di Bing è la considerazione dello pseudonimo, allineandosi così alle tutele previste dal codice della privacy e dal diritto civile italiano. Questo aspetto è fondamentale in quanto riconosce l’importanza dell’identità digitale e la necessità di proteggerla con le stesse garanzie dell’identità anagrafica.

    Per quanto riguarda i minori, Bing adotta una posizione progressista permettendo loro di inviare autonomamente il modulo di richiesta di deindicizzazione. Sebbene questa scelta rispecchi un riconoscimento del diritto al libero sviluppo della personalità del minore, solleva questioni delicate relative alla capacità dei minori di comprendere appieno le implicazioni del consenso al trattamento dei dati e dell’esercizio del diritto alla privacy. La decisione di Bing di consentire tale autonomia merita quindi un’analisi critica, considerando le diverse interpretazioni e le possibili implicazioni legali e sociali.

    Inoltre, Bing esige che le richieste di deindicizzazione siano accompagnate da una descrizione dettagliata del contenuto e dalle motivazioni che sottendono alla richiesta. Tale processo riflette un tentativo di bilanciare il diritto all’oblio con la libertà di espressione e l’interesse pubblico all’accesso alle informazioni. Tuttavia, la categorizzazione delle ragioni per la richiesta di rimozione (informazioni inesatte, false, incomplete, inadeguate, non aggiornate, non pertinenti, eccessive o improprie) potrebbe introdurre ambiguità, in quanto confonde il diritto all’oblio con il diritto all’aggiornamento dei dati personali.

    Yahoo!

    Yahoo! ha predisposto un apposito form “Richieste di Blocco dei risultati della ricerca in Yahoo Ricerca:Risorse per i Residenti in Europa[4]. In particolare il motore di ricerca specifica che la Corte di giustizia dell’Unione europea ha decretato che gli utenti residenti in Europa possono richiedere che URL specifici vengano deindicizzati rispetto a ricerche specifiche del loro nome, nel caso in cui la pagina contenga dati personali imprecisi, inadeguati, non più pertinenti o eccessivi, relativamente ai fini per i quali erano stati raccolti o elaborati. Gli utenti di Yahoo residenti in Europa possono utilizzare questo modulo per richiedere che un URL venga bloccato per una pagina, associata al loro nome, che rispetti questi criteri. Si ricorda che qualsiasi blocco verrà garantito solamente riguardo alla ricerca del nome specifico dell’utente in questione.

    Libero search (Arianna) e gli altri motori italiani

    Nel panorama dei motori di ricerca italiani, Arianna (Libero.it) emerge come un caso emblematico. Originariamente lanciato nel 1996 da ricercatori dell’Università di Pisa, Arianna ha modificato la sua strategia nel 2008 adottando i risultati di ricerca forniti da Google Inc., come indicato dalla dicitura “enhanced by Google” sul proprio box di ricerca. Questa scelta rispecchia un adattamento alle branding guidelines di Google, ma solleva questioni riguardanti l’autonomia e la gestione dei dati personali.

    Una caratteristica distintiva di Arianna è l’offerta limitata alle funzioni di “ricerca correlata” ed “avanzata”, che mirano a migliorare l’esperienza dell’utente senza stravolgere la SERP (Search Engine Results Page) fornita da Google. Ciò solleva interrogativi sull’esercizio del diritto all’oblio da parte degli utenti italiani, dato che non sono presenti moduli specifici per la deindicizzazione dei contenuti o indicazioni chiare su come la rimozione dei dati da Google possa influire sui risultati di Arianna.

    Contrastando con queste realtà, Istella[5] rappresenta un’iniziativa nata dalla collaborazione tra Tiscali, l’Università degli Studi di Pisa e il CNR. Lanciato il 19 marzo 2013, Istella si propone non come un diretto concorrente dei giganti della ricerca online, ma come un’alternativa focalizzata su fonti non indicizzate da altri motori. Nonostante l’approccio innovativo e la non conservazione dei dati degli utenti, anche Istella non fornisce indicazioni chiare sull’esercizio del diritto all’oblio. Rimane presente unicamente una informativa privacy[6] che non contiene alcuna informazione in merito all’esercizio di questo specifico diritto.

    La questione del diritto all’oblio nei motori di ricerca italiani riflette la complessità delle interazioni tra normative sulla privacy, gestione dei dati personali e le tecnologie sottostanti. Mentre Arianna e Excite Italia mostrano le sfide poste dall’integrazione con tecnologie esterne, Istella offre una visione alternativa che tuttavia non chiarisce pienamente come viene gestito il diritto all’oblio. Questo panorama sottolinea la necessità di un quadro normativo e di pratiche aziendali che garantiscano trasparenza e controllo effettivo agli utenti sui loro dati personali nel contesto digitale.

    Facebook (Meta) e gli altri social network

    L’intersezione tra il diritto all’oblio e le piattaforme di social media, come Facebook, Twitter e LinkedIn, pone sfide uniche e complesse, che riflettono le tensioni tra privacy individuale, libertà di espressione e i confini della regolamentazione legale. La gestione dei dati personali e l’applicabilità del diritto all’oblio su queste piattaforme diventa particolarmente problematica alla luce delle diverse interpretazioni normative e delle politiche aziendali.

    Le piattaforme social come Facebook, Twitter e LinkedIn hanno trasformato il modo in cui interagiamo, comunicando e condividendo informazioni su scala globale. Tuttavia, la persistenza digitale delle informazioni condivise online solleva questioni rilevanti riguardo al diritto all’oblio, un principio che mira a consentire agli individui di richiedere la rimozione di informazioni obsolete o irrilevanti su di loro da risultati di ricerca o database online.

    Facebook, in particolare, ha affrontato critiche e sfide legali in Europa per il suo approccio alla privacy e alla gestione dei dati personali. Il conflitto con il Garante della privacy tedesco riguardante l’estensione del diritto all’oblio ai contenuti presenti sul social network sottolinea la difficoltà di definire i confini di applicabilità di questo diritto alle piattaforme di social media. La posizione di Facebook, basata sulla conformità alla normativa irlandese, riflette una strategia di minimizzazione delle responsabilità legali, ma solleva interrogativi sulla sua adeguazione alle esigenze di privacy degli utenti europei.

    La legislazione italiana, attraverso l’intervento del Garante Privacy, ha tuttavia evidenziato come la presenza di una struttura organizzativa stabile all’interno del paese (Facebook Italy s.r.l.) imponga l’applicazione del diritto nazionale in materia di protezione dei dati, confermando così l’applicabilità del diritto all’oblio anche ai giganti del web con base in altri paesi dell’UE.

    Analogamente, Twitter e LinkedIn presentano le loro politiche in materia di gestione dei dati personali, ma con una meno evidente attenzione al diritto all’oblio. Twitter, ad esempio, ha adottato misure per impedire l’eliminazione dei tweet di figure pubbliche, sottolineando la tensione tra il diritto alla privacy e l’interesse pubblico; tuttavia, il diritto all’oblio su Twitter è meno evidente poiché la piattaforma è più orientata verso il presente e la condivisione immediata di informazioni. LinkedIn, d’altra parte, offre un’informativa sulla privacy[7] dettagliata ma non fornisce indicazioni chiare sulla possibilità di esercitare il diritto all’oblio.

    La questione del diritto all’oblio nei confronti dei social network evidenzia la complessità di applicare principi giuridici stabiliti a realtà tecnologiche e sociali in continua evoluzione. Mentre le piattaforme social si sforzano di bilanciare la protezione della privacy con la libertà di espressione e le esigenze commerciali, la definizione e l’attuazione del diritto all’oblio rimangono una sfida significativa.

    Queste dinamiche richiedono un dialogo continuo tra legislatori, piattaforme social e società civile per sviluppare approcci che rispettino i diritti degli individui alla privacy e all’oblio digitale, pur garantendo il libero flusso di informazioni e la trasparenza. In ultima analisi, il diritto all’oblio nei social media solleva questioni fondamentali sulla nostra identità digitale e su come vogliamo che il nostro passato online influenzi il nostro futuro.

    In ogni caso, Facebook assicura la possibilità di rimuovere contenuti che non rispettano la dichiarazione dei diritti e delle responsabilità di Facebook[8][9] e rinvia alla normativa sull’utilizzo dei dati[10]. È prevista la possibilità di eliminare l’account[11] in qualsiasi momento o, alternativamente, di disattivare l’account in maniera temporanea; questa opzione attribuisce la possibilità di non essere più visibile a sé stessi ed a terzi, ma di poter disporre nuovamente dell’intero complesso di informazioni, che saranno comunque nuovamente accessibili[12]. È previsto uno specifico modulo mediante il quale è possibile segnalare possibili violazioni della propria privacy[13].

    Su Facebook, il diritto all’oblio si applica principalmente alle informazioni pubblicate dagli utenti stessi o da terze parti che possono influire sulla loro reputazione, vita personale o professionale. Questo può includere foto, post, commenti o altre informazioni che potrebbero non essere più rilevanti o che possono arrecare danno alla persona nel tempo[14].       

    … ma in pratica?

    Da un punto di vista pratico, bisogna evidenziare che le iniziative proposte dai principali motori di ricerca si sono rilevate nel tempo solo soluzioni di mera facciata più che di sostanza, in quanto:

    • de-indicizzazione” non significa “cancellazione”, cioè Google non potrà mai cancellare la pagina incriminata, ma farà solo in modo (o meglio, promette di fare in modo) di eliminare la possibilità che tale pagina figuri tra i risultati delle ricerche. In pratica, Google de-indicizzando il contenuto fa sì che lo stesso non possa essere “pescato” da chi scrive il nome e cognome dell’interessato sul motore (ma coi limiti, peraltro, che a breve vedremo). È ovvio, invece, che solo la totale cancellazione della pagina può garantire la certezza che l’informazione non venga mai più letta. Il fatto che la stessa continui a esistere nel web non esclude, infatti, la possibilità che essa venga trovata in modi alternativi rispetto alla ricerca su Google: per esempio, attraverso un link presente su un social network o su un’altra pagina di un diverso sito contenente notizia affine e mai de-indicizzata; una ricerca diretta all’interno dell’archivio del giornale online (per esempio, ricercando nel “motore di ricerca interno” al Corriere, Repubblica, ecc.);
    • vi è una possibilità di “ripescaggio” della pagina al variare nel tempo degli algoritmi di indicizzazione. Nella causa davanti alla Corte di Giustizia, Google aveva fatto notare la possibilità che, una volta deindicizzata la pagina incriminata, la stessa potrebbe, in teoria, essere sempre ripescata in un momento successivo, dallo stesso “crawler” automatico di Google. Anche in questo caso, se la pagina continua a esistere, nulla toglie che, in futuro, possa rispuntare grazie all’algoritmo di BigG che, ogni giorno, scandaglia le notizie presenti in Rete;
    • la sentenza era vincolante di fatto solo nei confronti di Google. Pertanto, ammesso che la notizia venga cancellata da Google, la stessa sarà agevolmente reperibile attraverso altri motori di ricerca (Bing, Yahoo, Virgilio, Tiscali, ecc.);
    • l’attuazione della “de-indicizzazione” è subordinata non tanto alla volontà del Giudice, quanto a quella di un soggetto privato (es. Google), ossia a una company che il più delle volte non è assoggettata alla legislazione europea e che fa della circolazione dei contenuti il proprio core business. Tale situazione determina di fatto un’arbitrarietà della scelta da parte dei provider e che quindi funge da deus ex machina nel bilanciamento tra l’interesse legittimo del privato cittadino e le altre motivazioni contrapposte: il diritto di cronaca, l’interesse pubblico alla diffusione della notizia (valutata sulla base dell’indice di lettura della pagina), ecc. ;
    • Google ha già fatto sapere tutta una serie di casi nei quali, comunque, non procederà mai alla de-indicizzazione della notizia. Si tratta dei casi in cui la notizia riguarda:
      1. frodi finanziarie (per es.: l’amministratore di una società colpevole di bancarotta fraudolenta, oppure che ha nascosto gli utili agli azionisti; casi di insider trading, ecc.);
      2. negligenza professionale (per es.: un medico processato per una morte sospetta; un avvocato che ha perso una causa per un errore grave; un ingegnere che ha costruito un palazzo poi crollato, ecc.);
      3. condotta pubblica di funzionari statali (per es.: un caso di concussione o di corruzione);
      4. condanne penali. È proprio questo il punto più dolente: parlare di “condanne penali” (concetto che racchiude già tutti i casi appena elencati) è così generico da ricomprendere quasi tutte le richieste di diritto all’oblio (quasi sempre legate a processi di carattere penale, indagini della magistratura, ecc.). Va da sé che se Google escluderà, a priori, proprio queste istanze, il “modulo automatico” è praticamente inutile.
    • la sentenza della Corte di Giustizia si applica solo in Europa e non nel resto del mondo, dove Google potrà continuerà a rendere indicizzato il contenuto. Così, chi comunque faccia la ricerca su Google.com anziché su Google.it o su Google.fr troverà ugualmente la “pagina incriminata”. È anche questa l’ennesima (negativa) conseguenza del fatto che il contenuto incriminato non è stato cancellato ma solo rimosso dalle ricerche;
    • l’applicazione del diritto all’oblio in un contesto globale: prendendo ad esempio Facebook sono evidenti le molteplici sfide legate alla natura transnazionale della piattaforma e alla vastità della sua rete utenti, ad esempio:
      1. diversità di leggi sulla privacy: Facebook opera in numerosi paesi, ognuno con la propria legislazione in materia di protezione dei dati e privacy. Mentre in Europa il GDPR (Regolamento Generale sulla Protezione dei Dati) fornisce una cornice abbastanza omogenea che include il diritto all’oblio, in altre regioni del mondo tale diritto potrebbe non essere riconosciuto o potrebbe essere interpretato in modi diversi. Questo pone la sfida di come applicare coerentemente una politica di privacy su scala globale;
      2. implementazione tecnica: la struttura tecnologica di Facebook è complessa e altamente distribuita, con server e centri dati dislocati in diverse parti del mondo. Quando un utente richiede la rimozione di contenuti basandosi sul diritto all’oblio, Facebook deve essere in grado di identificare e rimuovere efficacemente tali contenuti in tutte le sue infrastrutture, il che può essere tecnologicamente impegnativo;
      3. ambito di applicazione territoriale: c’è stata una notevole discussione sui confini territoriali dell’applicazione del diritto all’oblio. Ad esempio, se un utente in Francia chiede la rimozione di un contenuto, Facebook deve rimuovere quel contenuto solo per gli utenti nell’UE o globalmente? Le interpretazioni e le sentenze dei tribunali europei hanno variato nel tempo, aumentando la complessità della conformità.

    Marketing

    Il GDPR amplia il diritto all’oblio, comunemente associato al diritto di interrompere la diffusione di private informazioni, alla sfera dei dati con finalità di marketing. Come già affrontato fin qui, la cancellazione di dati personali è solitamente volta ad impedire l’espansione di informazioni obsolete e nocive per la propria nomea.

    Allargando tale concetto al contesto di marketing, anche qui il GDPR attribuisce all’utente, la facoltà di cancellazione dei propri dati sensibili, qualora questi non siano stati cancellati autonomamente alla cessazione dei termini per cui essi sono stati acquisiti. Qualora infatti dati acquisiti con finalità di marketing, fossero ancora presenti al termine del loro reale scopo per cui sono stati acquisiti, l’interessato potrà fare richiesta di cancellazione degli stessi senza la necessità di fornire valide motivazioni. Ulteriormente, tale diritto si applica anche qualora i dati siano stati acquisiti in modo illecito senza il consenso dell’interessato. Pertanto allorché quest’ultimo ne venisse a conoscenza, può far valere il diritto all’oblio e i propri dati dovranno essere eliminati, onde evitare sanzioni da parte dell’autorità garante, in quanto il loro trattamento non è conforme al GDPR.

    Ma allora: è possibile un diritto all’oblio in ambito digitale?

    La riflessione sulla natura e l’applicazione del diritto all’oblio nel contesto digitale apre un dibattito complesso e articolato che interroga direttamente i limiti delle tecnologie attuali e le loro implicazioni etiche e giuridiche. La questione centrale riguarda la possibilità di controllare e, in certi casi, limitare la persistenza delle informazioni personali nell’ecosistema digitale, in particolare nei motori di ricerca e nelle SERP (Search Engine Results Pages).

    Il diritto all’oblio è stato interpretato come la capacità di influenzare l’accessibilità delle informazioni digitali, volto a rendere più difficile il recupero di specifici dati personali, con l’obiettivo ultimo di preservare l’autonomia dell’individuo sulla propria identità digitale. Tale concetto si scontra però con la natura intrinsecamente transattiva e distribuita della memoria digitale, che fonde insieme capacità computazionali e interazioni umane in un processo di memorizzazione unificato e di difficile regolamentazione.

    Una possibile via d’uscita potrebbe consistere nell’adottare una concezione di “pseudo-deindicizzazione”, analogamente alla distinzione tra pseudo-anonimizzazione e anonimizzazione, che contempli diritti come la rettifica, l’aggiornamento e la cancellazione dei dati in modo più specifico e operativo.

    L’idea di un diritto all’Habeas SERP, ossia il controllo individuale sui risultati di ricerca legati al proprio nome, solleva questioni critiche relative alla libertà di espressione e al diritto di cronaca, ponendo l’identità digitale in una posizione potenzialmente predominante rispetto ad altri diritti fondamentali.

    La proposta di rendere pubblici gli algoritmi di ricerca potrebbe democratizzare l’accesso a tecniche di ottimizzazione SEO, ma comporterebbe al contempo rischi di manipolazione informativa e alterazioni degli equilibri di mercato, soprattutto per quanto riguarda i motori di ricerca dominanti. In definitiva, qualsiasi tentativo di normare il diritto all’oblio digitale richiederebbe un accordo internazionale, per evitare disparità di trattamento e digital divide. Tuttavia, l’adeguamento sociale e tecnologico all’evoluzione della memoria digitale potrebbe offrire un terreno fertile per nuove soluzioni che bilancino privacy, diritto all’informazione e libertà di espressione.

    Già dagli anni 2000, il Garante italiano per la protezione dei dati personali ha affrontato la questione della “gogna elettronica”, sottolineando la necessità di un diritto all’oblio che consentisse agli individui di richiedere la rimozione di notizie online non più attuali o rilevanti. Questa preoccupazione ha portato alla richiesta ai motori di ricerca di aggiornare periodicamente i dati online per riflettere situazioni attuali, sottolineando l’importanza dell’accuratezza e della pertinenza delle informazioni disponibili sul web.

    Con provvedimenti successivi, l’Autorità Garante ha ribadito l’importanza dell’aggiornamento degli archivi giornalistici online, offrendo la possibilità di aggiungere note o link che forniscano contesto aggiuntivo, garantendo così una rappresentazione completa e aggiornata delle notizie riguardanti individui specifici.

    L’intervento del Garante nel 2019, in relazione a una richiesta di cancellazione di articoli giudiziari, ha sottolineato il delicato bilanciamento tra il diritto alla privacy e la libertà di cronaca. L’Autorità ha riconosciuto la legittimità del trattamento dei dati personali per finalità giornalistiche, anche senza il consenso degli interessati, a condizione che tale trattamento rispetti la libertà e la dignità dell’individuo e si basi su fatti di rilevanza pubblica. In questo caso, l’interesse pubblico prevaleva sulla richiesta di esercizio del diritto all’oblio, data la rilevanza della vicenda giudiziaria e il ruolo pubblico di uno dei soggetti coinvolti.

    La “riforma Cartabia” del 2021 rappresenta un ulteriore passo avanti, delegando il governo a regolamentare la deindicizzazione di dati personali in caso di archiviazione o assoluzione in procedimenti giudiziari, rafforzando così il diritto all’oblio degli individui coinvolti in indagini o processi. Questa legislazione stabilisce criteri specifici per garantire la rimozione efficace di informazioni obsolete o non più rilevanti dai motori di ricerca, sottolineando l’importanza di una pronta reazione in caso di mancato adempimento.

    Queste evoluzioni normative e giurisprudenziali evidenziano la crescente consapevolezza della necessità di bilanciare la libertà dell’informazione con i diritti fondamentali degli individui nell’era digitale. Tuttavia, la rapidità dell’innovazione tecnologica e la sua influenza sulla diffusione delle informazioni sollevano questioni complesse relative alla regolamentazione dell’informazione online. La definizione di una “etica del cybernauta” e l’elaborazione di principi per una “cittadinanza digitale” responsabile sono fondamentali per garantire che la libertà di espressione non diventi un veicolo per l’offesa o la diffamazione, sottolineando la necessità di un equilibrio tra i diritti individuali e l’accesso pubblico all’informazione in un contesto sempre più dominato da realtà virtuali e piattaforme digitali.

    Nel contesto della “società digitale”, dove le informazioni sono facilmente registrate, archiviate e accessibili online, il diritto all’oblio è diventato un tema centrale nei dibattiti sulla privacy e sulla gestione delle informazioni personali. Le persone possono essere danneggiate o discriminate a causa di informazioni obsolete o imprecise che rimangono online e il diritto all’oblio può offrire una forma di protezione in questi casi.

    Tuttavia, implementare effettivamente il diritto all’oblio è complicato, poiché coinvolge un delicato equilibrio tra la protezione della privacy individuale e la libertà di informazione. Le piattaforme online devono trovare modi per rispettare le richieste di rimozione delle informazioni senza compromettere la disponibilità di informazioni legittime e importanti.

    In definitiva, il diritto all’oblio rappresenta una sfida importante per la società digitale, poiché cerca di trovare un equilibrio tra la protezione della privacy individuale e la libertà di informazione in un ambiente online in continua evoluzione.

    La complessa relazione tra la tutela del diritto all’oblio nell’era digitale e la natura globale della rete Internet solleva questioni significative circa l’efficacia e l’applicabilità della legislazione in materia di protezione dei dati personali, come dimostrato dal GDPR e dalla giurisprudenza relativa. Il caso Google del 2019 presso la Corte di giustizia dell’Unione Europea ha messo in evidenza i limiti territoriali del diritto all’oblio, stabilendo che la deindicizzazione dei dati personali richiesta in base all’articolo 17 del GDPR debba essere attuata solo all’interno dell’Unione Europea, senza imporre obblighi di cancellazione globale ai gestori dei motori di ricerca.

    Questa decisione sottolinea l’inadeguatezza di un quadro normativo che non contempla un’effettiva tutela dell’oblio su scala mondiale, evidenziando le difficoltà nell’armonizzare la protezione dei dati personali con il carattere intrinsecamente senza confini della rete. Sebbene il GDPR rappresenti un avanzamento significativo nella protezione dei diritti degli individui nell’ambito digitale, la sua portata limitata territorialmente lascia aperte questioni relative alla gestione dei dati personali su piattaforme accessibili globalmente. In conclusione, la tutela dell’oblio in Internet rimane un ambito di notevole complessità, dove le normative esistenti si scontrano con la natura decentralizzata e globale della rete. La ricerca di un equilibrio tra la dignità della persona e la libertà di espressione si manifesta come una sfida continua, resa ancora più ardua dai rapidi sviluppi tecnologici. Il dibattito sull’adeguatezza delle normative in questo contesto è aperto, richiedendo agli interpreti un costante sforzo ermeneutico per navigare tra le incertezze disciplinari e le dinamiche in evoluzione del mondo digitale. In questo scenario, l’imperativo di trovare soluzioni che riflettano i valori fondamentali della società nell’era dell’informazione si affianca alla consapevolezza che soluzioni universalmente applicabili possono essere difficili, se non impossibili, da realizzare in un ambiente caratterizzato da un “algoritmo sovrano” che continua a ridefinire le modalità di interazione e di espressione nell’ambito virtuale.


    [1] https://reportcontent.google.com/forms/rtbf

    [2]  La locuzione inglese Search Engine Results Page, più semplicemente “SERP”, indica comunemente la pagina dei risultati di un motore di ricerca.

    [3] https://www.bing.com/webmaster/tools/eu-privacy-request

    [4] https://io.help.yahoo.com/contact/index?page=contactform&locale=it_IT&token=Zh%2FBBVqXzLHlIbokbUqVWTUbuuQeXGkGzJ%2FxkLsJP07Zgk%2B%2B1eFwBr5d5R9oF0htO%2BBvaT6%2BQLZMo4%2BSEICbjKW0zsv%2BqoEY6hjokP5ca3%2FIpyH1fp5qSukQCRifkLYrh8vWbODAAU3Jgf9Mu86t7Q%3D%3D&selectedChannel=email-icon&yid=

    [5] www.istella.it

    [6] https://www.istella.it/it/privacy

    [7] https://www.linkedin.com/help/linkedin/topic/a65?trk=hc-hp-recommendedTopics

    [8] https://it-it.facebook.com/legal/terms/previous

    [9] https://www.facebook.com/legal/terms/update?ref=old_policy

    [10] https://www.facebook.com/privacy/policy/?entry_point=data_policy_redirect&entry=0

    [11] https://www.facebook.com/help/125338004213029

    [12] In caso di eliminazione permanente dell’account, Facebook. garantisce l’eliminazione di tutti i contenuti, anche quelli memorizzati sui propri sistemi di backup, entro novanta giorni successivi alla relativa richiesta, ad eccezione di alcuni contenuti al cui presenza sia reputata necessaria per motivi tecnici. Alcune informazioni rimarranno tuttavia ancora presenti nei sistemi di Facebook Inc. nonostante l’eliminazione.

    [13] https://www.facebook.com/help/contact/144059062408922

    [14] https://www.facebook.com/help/contact/319149701968527

    Bibliografia

    ASSONIME – Associazione fra le società italiane per azioni. “Diritto all’oblio e deindicizzazione dai motori di ricerca: la giurisprudenza della Corte di giustizia”. Note e Studi 1/2020.

    Direzione della Comunicazione Unità Stampa e informazione. Comunicato stampa n. 197/22. Lussemburgo, 8 dicembre 2022. Sentenza della Corte nella causa C-460/20 | Google (Deindicizzazione di contenuti asseritamente inesatti). “Diritto alla cancellazione («diritto all’oblio»): il gestore di un motore di ricerca deve deindicizzare le informazioni incluse nel contenuto indicizzato quando il richiedente dimostri che sono manifestamente inesatte”.

    EDPB – European Data Protection Board. “Linee guida 5/2019 sui criteri per l’esercizio del diritto all’oblio nel caso dei motori di ricerca, ai sensi del RGPD” (parte 1 – versione 2.0, adottate il 7 luglio 2020.

    GPDP – Garante per la Protezione dei Dati Personali. “Diritto all’oblio”. https://www.garanteprivacy.it/i-miei-diritti/diritti/oblio.

    Agostini A., De Nardis A., La tua reputazione su Google ei social media: prevenire, monitorare, curare, Hoepli, Milano, 2013.

    Alpa G., Resta G., “Le persone e la famiglia. Le persone fisiche e i diritti della personalità”, in Trattato di diritto civile, 2006

    Ambrose M. L., Ausloos J., “The right to be forgotten across the pond”, in Journal of Information Policy, 2013.

    Arieta G., “Una nuova impostazione dei rapporti tra informazione e tutela della vita privata?”, in Temi.

    Ausloos J., “The Right to be Forgotten – Worth remembering?”, in Computer Law and Security Review, 2012.

    Barchiesi A., “La tentazione dell’oblio. Vuoi subire o costruire la tua identità digitale?”, Franco Angeli, Milano, 2016.

    Bartolini C., Siry L., “The right to be forgotten in the light of the consent of the data subject”, in Computer Law and Security Review, 2016.

    Bassoli E., “Come difendersi dalla violazione dei dati su Internet. Diritti e responsabilità”, Maggioli Editore, Rimini, 2012.

    Bitetto A., “Cronaca, oblio e memoria: prospettive comparate tra riservatezza e identità”. Dipartimento Jonico in Sistemi Giuridici ed Economici del Mediterraneo: Società, Ambiente, Culture. Quaderni del Dipartimento Jonico, 21/2023.

    Ciani Sciolla J., “Diritto all’oblio e cooperazione internazionale: problemi e prospettive”, Rivista Italiana di Informatica e Diritto. Periodico Internazionale e del CNR-IGSG, fascicolo 1-2022.

    Di Ciommo F., “Diritto all’oblio. Quello che il diritto non dice. Internet e oblio”. Da Opinioni Libere professioni. Danno e responsabilità.

    Di Ciommo F., “Il diritto all’oblio (oblito) nel regolamento Ue 2016/679 sul trattamento dei dati personali”. Il Foro Italiano, V 6 fasc. 9/2017.

    Finocchiaro G., “Il diritto all’oblio nel quadro dei diritti della personalità”. Il diritto dell’informazione e dell’informatica, Anno XXIX Fasc.4-5 – 2014.

    Leucci S., “Diritto all’oblio, verità, design tecnologico: una prospettiva di ricerca Right to Be Forgotten, Truth and Technological Design”, Media Laws – Rivista di diritto dei media, Saggi – Sezione Monografica “fake news, pluralismo informativo e responsabilità in rete” Articles – Fake News, Pluralism and ISP Liability.

    Ligresti A., “Il diritto all’oblio nella “rete” senza regole”, Amministrazione In Cammino, Rivista elettronica di diritto pubblico, di diritto dell’economia e di sicurezza e di scienza dell’amministrazione, 2022.

    Martinelli S., “Diritto all’oblio e motori di ricerca. Memoria e privacy nell’era digitale”. Informatica Giuridica – Collana diretta da Giovanni Ziccardi e Pierluigi Perri. Estratto_024198827.

    Messina D., “Le prospettive del diritto all’oblio nella società dell’informazione e della comunicazione”. Informatica e diritto, XXXV annata, Vol. XVIII, 2009.

    Pardolesi R., “L’ombra del tempo e (il diritto al)l’oblio”. Obiettivo 1. Il diritto di crono. Questione Giustizia 1/2017.

    Pisapia M, Cherchi C., “Diritto all’oblio. Prime riflessioni sull’introduzione dell’art. 64-ter disp. att. c.p.p.”. Media Laws – Rivista di diritto dei media, cronache 02/2023.

    Tullio L., “Tracce evolutive del «right to be forgotten» tra esigenze di anonimato e richieste di deindicizzazione”, Ianus Rivista di Studi Giuridici n.22 – dicembre 2020.

    Vesto A. “La tutela dell’oblio tra intimità e condivisione senza filtri”, Media Laws – Rivista di diritto dei media. 2/2018. Zanichelli M. “Il diritto all’oblio tra privacy e identità digitale”. Informatica e diritto, XLII annata, Vol. XXV, 2016.

    Introduzione alla cybersecurity e alle vulnerabilità del software


    Nel mondo odierno, dove la dipendenza dalla tecnologia è crescente, la cybersecurity è diventata un pilastro fondamentale. La sicurezza informatica non riguarda solo la protezione di dati e risorse, ma anche la gestione delle vulnerabilità che emergono nei sistemi e nelle applicazioni software. Uno degli errori comuni è la fiducia cieca nella fonte da cui si ottiene il software: installare programmi da fonti non verificate può esporre a gravi rischi, poiché software dannosi come trojan e virus sono spesso distribuiti tramite siti web malevoli o email fraudolente. In questi casi, la vulnerabilità risiede non solo nel software ma anche negli utenti, i quali, se non adeguatamente formati, possono commettere errori nella valutazione delle fonti e dei rischi associati.

    Affidarsi solo all’affidabilità della fonte di download non è sufficiente. Anche quando scarichiamo software da siti web legittimi, potremmo comunque trovarci esposti a minacce come attacchi “man in the middle” che compromettono il file durante il trasferimento. Inoltre, errori logici interni al software o input inattesi (non è detto che l’input sia fidato, ovvero “soddisfi le precondizioni”), possono compromettere l’intero sistema. Pertanto, la correttezza del software, intesa come aderenza ai requisiti funzionali e prevenzione degli errori, diventa un aspetto cruciale.

    Quando una vulnerabilità viene scoperta, l’utente deve segnalarla a un team di risposta agli incidenti informatici, come i CERT (Computer Emergency Response Team) o i CSIRT (Computer Security Incident Response Team). Questi enti, spesso supportati da università o enti governativi, verificano la presenza della vulnerabilità e avvisano i produttori del software, prima di pubblicare un avviso di sicurezza. Tuttavia, esiste anche un mercato illecito per queste vulnerabilità, detto mercato degli “zero-day”, dove le falle sconosciute e non documentate possono essere vendute e sfruttate dai criminali.

    L’economia del crimine informatico non si limita alle vulnerabilità zero-day. Esistono veri e propri mercati per exploit, malware, botnet e credenziali rubate, spesso venduti come servizi “as-a-service”. Questi mercati prosperano nel dark web, sfruttando reti anonime come TOR per garantire la segretezza e l’intracciabilità delle transazioni. Ad esempio, i dati delle carte di credito o gli account compromessi possono essere venduti a prezzi che variano a seconda del livello di compromissione e del valore dell’account.

    Per catalogare e analizzare le vulnerabilità, sono stati sviluppati database come il National Vulnerability Database (NVD) e il Common Vulnerabilities and Exposures (CVE), che documentano le vulnerabilità note e forniscono indicazioni su come mitigare i rischi. Le vulnerabilità vengono inoltre classificate tramite il Common Vulnerability Scoring System (CVSS), un sistema di valutazione che attribuisce un punteggio alla gravità del rischio, guidando le aziende nelle priorità di intervento.

    Il Common Weakness Enumeration (CWE) è un elenco standardizzato delle debolezze più comuni nella sicurezza del software, sviluppato per facilitare l’identificazione e la prevenzione di vulnerabilità. A differenza del CVE, che si concentra su vulnerabilità specifiche e istanze particolari in software o sistemi, il CWE descrive debolezze generali che possono essere sfruttate in una vasta gamma di contesti. Tra le debolezze più rilevanti troviamo problemi come il “buffer overflow”, che può portare a corruzione della memoria e attacchi di esecuzione arbitraria di codice, la “SQL Injection”, dove l’immissione di comandi non validati può compromettere database e sistemi, e l’“out-of-bounds write”, dove l’accesso a memoria al di fuori dei limiti previsti può causare crash o vulnerabilità critiche. Il CWE non solo funge da linguaggio comune per discutere di questi problemi, ma fornisce anche una base per sviluppare strumenti di testing e pratiche di sicurezza, aiutando gli sviluppatori a progettare sistemi più robusti e resilienti fin dalle fasi iniziali di sviluppo.

    Uno dei miti più diffusi è che un software sia “sicuro” se funziona come previsto. Tuttavia, affidabilità e sicurezza non sono sinonimi: un software può soddisfare i requisiti funzionali ma essere comunque vulnerabile ad abusi e attacchi. Inoltre, la sicurezza non dipende solo dalle caratteristiche visibili come la crittografia o il controllo degli accessi, ma anche dall’integrazione sicura di ogni funzione. Le minacce derivano anche dall’imprevedibilità dell’uso del software: moderni sistemi connessi e complessi sono difficili da proteggere completamente.

    Alcuni “falsi miti” e la realtà

    • Funziona in modo affidabile, soddisfacendo tutti i requisiti funzionali.
      –Affidabilità non vuol dire sicurezza: Il software affidabile fa quello che deve fare. Il software sicuro fa quello che deve fare e nient’altro” (Ivan Arce). Non si tratta solo di come il software deve essere usato, ma anche di come può essere abusato: in quanto i requisiti funzionali sono guidati dai casi d’uso, mentre i requisiti di sicurezza sono guidati da casi di abuso.
    • Dispone di tutte le caratteristiche di sicurezza appropriate.
      –Funzionalità di sicurezza non vuol dire funzionalità sicure: le funzionalità di sicurezza sono– caratteristiche direttamente collegate agli obiettivi di sicurezza, come l’uso della crittografia, la gestione delle password, il controllo degli accessi, ecc. Devono essere implementate con attenzione, ma lo sviluppo non può concentrarsi solo sulle caratteristiche di sicurezza (Seven Pernicious Kingdoms). Le funzionalità sicure sono qualsiasi funzionalità, anche se non direttamente correlate a un requisito di sicurezza, che possono mettere a rischio la sicurezza.
    • I possibili utilizzi sono ben noti e sotto controllo.
      –Non è possibile prevedere tutti i possibili usi di un sistema software. Il software moderno è soggetto alla The Trinity of Trouble (ToT) (Trinità dei problemi) :
    1. Connettività: i sistemi software sono connessi.
    2. –Complessità: la loro organizzazione può essere intricata e complessa.
    3. –Estensibilità: si evolvono e possono essere estesi in modo imprevedibile.

    Tutti questi aspetti sono naturalmente correlati tra loro.

    1. – Principio n. 1: il difensore deve difendere tutti i punti; l’attaccante può scegliere il punto più debole.
    2. – Principio n. 2: il difensore può difendersi solo da attacchi noti; l’attaccante può sondare le vulnerabilità sconosciute.
    3. – Principio n. 3:  il difensore deve essere costantemente vigile; l’attaccante può colpire a piacimento. –
    4. Principio n. 4: il difensore deve rispettare le regole; l’attaccante può giocare sporco.
    • Il codice è “chiuso” e le versioni binarie sono offuscate. Anche i nostri meccanismi di crittografia sono segreti.
      –Security by design vs security by obscurity: security by obscurity si basa sulla segretezza come metodo generale per la sicurezza. Funziona come deterrente, aumenta il lavoro dell’attaccante, ma i segreti sono difficili da mantenere a lungo (ad es. considerare le fughe di notizie, le tecniche di reverse engineering). – In generale, ricordiamo i principi dei vantaggi dell’attaccante. Security by design si basa su 10 principi generali di sicurezza:
    1. Semplicità
    2. Design Open
    3. Suddivisione
    4. Esposizione minima
    5. Minimo privilegio
    6. Minima fiducia e massima affidabilità
    7. Difetti sicuri e a prova di errore
    8. Mediazione completa
    9. Nessun singolo punto di errore
    10. Tracciabilità
    • Per quanto riguarda la sicurezza, conduciamo un pentest approfondito alla fine del ciclo di sviluppo del software.
      –Software development life cycle (SDLC) e il “modello touchpoint. Il Software Development Life Cycle (SDLC) è un processo strutturato per lo sviluppo di software di alta qualità. Include una serie di fasi che gli sviluppatori seguono per pianificare, progettare, costruire, testare e distribuire un software. L’SDLC fornisce una mappa per il team di sviluppo e garantisce che il prodotto finale soddisfi i requisiti e sia affidabile. Le fasi tipiche dell’SDLC sono:
    1. Pianificazione e analisi dei requisiti: si identificano le esigenze del cliente e si definiscono i requisiti che il software deve soddisfare. Si stabiliscono obiettivi, risorse e tempistiche.
    2. Progettazione: si pianifica l’architettura del software, definendo l’organizzazione del sistema, l’interfaccia utente e il flusso di dati.
    3. Implementazione e codifica: in questa fase si scrive il codice del software. Gli sviluppatori traducono il progetto in codice funzionante, seguendo standard e pratiche di programmazione.
    4. Test: si eseguono vari tipi di test (unit testing, integration testing, system testing, ecc.) per verificare che il software funzioni correttamente e soddisfi i requisiti.
    5. Deployment (distribuzione): una volta che il software è stato testato e considerato pronto, viene distribuito agli utenti finali.
    6. Manutenzione e supporto: dopo il rilascio, il software entra in una fase di manutenzione in cui si correggono bug, si ottimizza il funzionamento e si gestiscono aggiornamenti.

    Il modello Touchpoint, sviluppato da Gary McGraw, è una metodologia per incorporare la sicurezza in ogni fase dell’SDLC. A differenza di un approccio “a cascata”, dove la sicurezza è spesso trattata come una fase separata o come un controllo finale, il modello touchpoint incoraggia la sicurezza come parte integrante di tutte le fasi dello sviluppo. I “touchpoint sono punti strategici dell’SDLC in cui vengono applicate pratiche di sicurezza specifiche. Le principali attività di sicurezza nel modello touchpoint includono:

    1. Code review (revisione del codice): effettuare revisioni del codice manuali o automatiche per identificare vulnerabilità, come SQL injection o buffer overflow. Questo consente di correggere errori di sicurezza direttamente nel codice.
    2. Design review (revisione del progetto): rivedere l’architettura e la progettazione del software per assicurarsi che le decisioni di design non introducano vulnerabilità. Questo può includere un’analisi dei controlli di accesso, della crittografia e delle interazioni con altri sistemi.
    3. Testing di sicurezza: durante i test funzionali, è essenziale includere anche test di sicurezza, come penetration testing o test di fuzzing, per verificare che il software non sia vulnerabile a exploit.
    4. Gestione delle minacce (threat modeling): in questa fase si identificano e valutano le potenziali minacce al sistema, pianificando contromisure e strategie di mitigazione. Il threat modeling può avvenire in diverse fasi, ma è tipicamente più efficace nella fase di progettazione.
    5. Configurazione sicura (security configuration): assicurarsi che i componenti del software, così come i server e le reti, siano configurati in modo sicuro, riducendo al minimo le superfici di attacco.
    6. Incident response planning (piano di risposta agli incidenti): peparare un piano di risposta agli incidenti per gestire eventuali attacchi e violazioni. Avere questo piano in atto sin dalle prime fasi consente di ridurre l’impatto di eventuali exploit.
    7. Formazione sulla sicurezza per gli sviluppatori: assicurarsi che il team di sviluppo sia informato sulle migliori pratiche di sicurezza, per evitare errori comuni durante la scrittura del codice.
    • Abbiamo appena rilasciato una patch che ha risolto tutti i problemi di sicurezza ed è protetta contro ogni exploit conosciuto.
      –Finestra di vulnerabilità, exploit zero-day. La finestra di vulnerabilità è un concetto utilizzato in sicurezza informatica per descrivere l’intervallo di tempo in cui una vulnerabilità è nota ma non ancora corretta. Durante questo periodo, i sistemi e le applicazioni che presentano la vulnerabilità sono a rischio di attacco, poiché i difetti possono essere sfruttati dagli attaccanti prima che i proprietari del sistema o i fornitori del software rilascino una patch o una correzione.
    Ciclo di vita delle vulnerabilità di sicurezza – Fonte OWASP

    Caratteristiche della finestra di vulnerabilità

    1. Inizio della finestra: la finestra di vulnerabilità inizia nel momento in cui una falla di sicurezza è scoperta e viene resa pubblica o comunque conosciuta dagli attaccanti.
    2. Fine della finestra: la finestra termina quando viene distribuita e applicata una patch di sicurezza che corregge la vulnerabilità su tutti i sistemi interessati.
    3. Durata variabile: la durata della finestra di vulnerabilità può variare. In alcuni casi, i fornitori rilasciano rapidamente una patch, riducendo il tempo di esposizione. In altri casi, la correzione può richiedere più tempo, prolungando la finestra e aumentando il rischio.

    Un exploit zero-day (o attacco zero-day) è una tipologia di attacco che sfrutta una vulnerabilità nel software non ancora conosciuta dai produttori o dal pubblico. In altre parole, si tratta di una vulnerabilità “a giorno zero” perché non è stata ancora scoperta o affrontata con un aggiornamento di sicurezza, lasciando il sistema completamente esposto.

    Caratteristiche degli Exploit Zero-Day

    1. Ignoranza del fornitore: un exploit zero-day sfrutta una vulnerabilità di cui il fornitore non è ancora a conoscenza. Questo significa che non esiste alcuna patch o correzione disponibile al momento dell’attacco.
    2. Alta efficacia: gli exploit zero-day sono particolarmente pericolosi perché possono bypassare le misure di sicurezza esistenti, proprio perché non sono ancora stati catalogati né gestiti.
    3. Difficoltà di rilevamento: questi exploit sono difficili da rilevare e mitigare, poiché le soluzioni di sicurezza non hanno ancora aggiornamenti o regole specifiche per bloccare l’attacco.

    Relazione tra finestra di vulnerabilità ed exploit zero-day. Quando viene scoperta una vulnerabilità zero-day, si apre immediatamente una finestra di vulnerabilità. Finché la falla non è nota pubblicamente, il rischio è limitato a un numero ristretto di attaccanti che conoscono l’exploit. Tuttavia, quando l’exploit diventa di dominio pubblico, la finestra di vulnerabilità può aumentare considerevolmente in termini di esposizione.

    Mitigazione della finestra di vulnerabilità e degli exploit zero-day. Per gestire la finestra di vulnerabilità e ridurre il rischio associato agli exploit zero-day, è possibile adottare le seguenti misure:

    1. Patch management: implementare un sistema di gestione delle patch efficace per applicare rapidamente gli aggiornamenti di sicurezza appena disponibili.
    2. Threat intelligence: utilizzare fonti di threat intelligence per rimanere aggiornati sulle nuove minacce e sugli exploit zero-day che potrebbero colpire i sistemi.
    3. Implementazione di sicurezza multi-livello: avere sistemi di sicurezza su più livelli, come firewall, sistemi di rilevamento e prevenzione delle intrusioni (IDS/IPS) e controlli di accesso rigorosi, può ridurre l’impatto di un exploit zero-day.
    4. Analisi del comportamento e anomaly detection: tecniche di rilevamento basate sull’analisi del comportamento aiutano a identificare attività anomale anche se un attacco zero-day cerca di eludere i controlli di sicurezza convenzionali.
    5. Segmentazione della rete: segmentare la rete può limitare i danni che un attaccante può causare in caso di sfruttamento di una vulnerabilità zero-day.

    È quindi necessario sviluppare software secondo i principi della “security by design”, in contrasto alla “security by obscurity”. I principi di sicurezza da incorporare includono semplicità, suddivisione dei privilegi, esposizione minima, tracciabilità e l’assenza di punti di errore singoli. A differenza del classico test di sicurezza svolto a fine sviluppo, un ciclo di vita dello sviluppo del software (SDLC) ben pianificato include la sicurezza in ogni fase, minimizzando le vulnerabilità di design.

    In sintesi, la cybersecurity non è un obiettivo raggiungibile con un unico intervento. Essa richiede un approccio integrato, che combini formazione, adozione di tecniche sicure nello sviluppo e costante monitoraggio delle minacce emergenti. Una comprensione profonda delle vulnerabilità e l’implementazione di una sicurezza “by design” rappresentano i fondamenti per proteggere i sistemi in un panorama digitale in continua evoluzione.

    Seven Pernicious Kingdoms

    Una tassonomia creata per aiutare gli sviluppatori a comprendere gli errori di programmazione più comuni che influiscono sulla sicurezza.

    Il modello del Seven Pernicious Kingdoms è un framework utilizzato per classificare le principali categorie di vulnerabilità nel codice, in particolare in ambito di sicurezza applicativa. Sviluppato dai ricercatori di Cigital (in particolare Gary McGraw), il modello è un modo per raggruppare le vulnerabilità in base alla loro natura e impatto. I “Sette Regni” rappresentano tipi distinti di difetti nel codice, che possono essere utilizzati per strutturare e migliorare la sicurezza del software.

    Ecco i sette “regni” di vulnerabilità:

    1. Input validation and representation: si riferisce ai difetti che derivano da una gestione impropria dei dati di input o dalla rappresentazione inadeguata dei dati, portando a vulnerabilità come SQL injection, command injection e cross-site scripting (XSS).
    2. API abuse: riguarda l’uso improprio delle API, spesso dovuto a una mancata comprensione dei limiti o delle modalità d’uso corrette delle stesse, che può consentire exploit a livello di API.
    3. Security features: include difetti legati all’implementazione errata delle caratteristiche di sicurezza, come l’autenticazione, la gestione delle sessioni, e il controllo degli accessi. Difetti in questo “regno” possono portare a problemi come session hijacking o bypass delle restrizioni di accesso.
    4. Time and state: questo “regno” riguarda vulnerabilità legate alla gestione del tempo e degli stati. Problemi come race conditions (condizioni di corsa) o gestione inadeguata delle risorse possono far sì che un utente malintenzionato prenda il controllo di una risorsa o esegua azioni dannose.
    5. Errors: si riferisce alla gestione errata degli errori, come la visualizzazione di messaggi d’errore dettagliati che rivelano informazioni sensibili o la mancanza di controllo su errori imprevisti, che possono facilitare l’enumerazione o l’accesso a dettagli interni.
    6. Code quality: questo “regno” comprende le vulnerabilità derivanti da una scarsa qualità del codice, come buffer overflow, pointer dereferencing e altri errori che possono portare a comportamenti imprevisti o a falle di sicurezza.
    7. Encapsulation: si riferisce a difetti nella separazione dei dati e nella gestione dell’accesso. Problemi di incapsulamento possono portare a fughe di informazioni o all’alterazione di dati interni che dovrebbero essere inaccessibili all’utente.

    (torna su)

    Mobile analysis per la rilevazione di virus e malware su Android e iOS

    La sicurezza dei dispositivi mobile è diventata una preoccupazione critica nell’era digitale. Con oltre 6 miliardi di utenti di smartphone in tutto il mondo, questi dispositivi sono diventati un obiettivo primario per i criminali informatici. Gli smartphone contengono una vasta quantità di dati personali e aziendali sensibili, rendendo l’analisi malware su questi dispositivi un aspetto fondamentale della cybersecurity moderna.

    Android e iOS presentano approcci diversi in termini di architettura e sicurezza. Android, essendo un sistema più aperto, consente maggiore flessibilità agli utenti ma anche una maggiore esposizione alle minacce. Al contrario, iOS adotta un modello più chiuso, con rigidi controlli su app e accessi, il che rende più difficile compromettere il sistema, ma non lo esclude.

    L’analisi malware su smartphone è il processo di esaminare un dispositivo mobile per rilevare, identificare e comprendere software malevoli che potrebbero comprometterne la sicurezza. Questa pratica è essenziale per:

    • proteggere le informazioni personali degli utenti;
    • salvaguardare i dati aziendali su dispositivi BYOD (Bring Your Own Device)[1];
    • mantenere l’integrità delle reti mobili;
    • prevenire frodi finanziarie e furti di identità.

    I malware per smartphone si sono evoluti in diverse forme, ciascuna con obiettivi e metodi di attacco specifici:

    • Spyware: raccoglie informazioni sull’utente senza il suo consenso;
    • Ransomware: estorce denaro bloccando l’accesso ai dati o al dispositivo crittografando i file;
    • Adware: genera ricavi attraverso pubblicità invasive, mostra annunci non richiesti, reindirizza a siti web malevoli;
    • Trojan: si nasconde come app legittima per eseguire azioni malevole in background;
    • Rootkit: ottiene l’accesso privilegiato al sistema operativo modificando il kernel del sistema per nascondere la propria presenza.

    I malware possono infettare gli smartphone attraverso vari vettori:

    • download di app da fonti non ufficiali;
    • phishing attraverso SMS, email o messaggi sui social media con link malevoli;
    • exploit di vulnerabilità del sistema operativo sfruttando bug o falle di sicurezza non corrette nel sistema operativo;
    • connessioni Wi-Fi non sicure: intercettazione dei dati su reti pubbliche non protette.

    L’analisi del malware per smartphone richiede un approccio multifaceted che combina diverse tecniche per ottenere una comprensione completa della minaccia. In tal senso, personale specializzato di questa articolazione Anticrimine ha implementato procedure e tecniche informatiche orientate all’analisi:

    • del traffico di rete: una delle tecniche principali per identificare la presenza di malware su un dispositivo mobile è l’analisi del traffico di rete. Il comportamento delle app e dei processi in background può rivelare informazioni cruciali riguardanti attività malevole. Attraverso tecniche di sniffing del traffico, è possibile catturare il flusso di pacchetti di rete, analizzare la destinazione e il contenuto dei dati scambiati, nonché rilevare anomalie nei pattern di traffico[2];
    • del comportamento delle applicazioni: le applicazioni malevole spesso richiedono più autorizzazioni di quelle strettamente necessarie al loro funzionamento;
    • attraverso scansione antivirus: la scansione antivirus è una tecnica fondamentale e ampiamente utilizzata per l’analisi preliminare e la rilevazione di malware su smartphone. Questa metodologia si basa principalmente su un approccio di riconoscimento delle firme[3], integrato con tecniche euristiche e di rilevamento comportamentale[4];
    • delle tracce di compromissione: è particolarmente utile analizzare tracce di compromissione (Indicators of Compromise, IoC), come quelle identificate tramite lo “Structured Threat Information Expression” (STIX)[5], che possono rivelare la presenza di malware o altre attività dannose. L’utilizzo di STIX nell’analisi di malware su smartphone rappresenta un approccio avanzato che combina standardizzazione, condivisione di intelligence e analisi strutturata. Mentre richiede un certo expertise, offre benefici significativi in termini di comprensione approfondita delle minacce e integrazione con l’ecosistema più ampio della cybersecurity.

    [1] Espressione usata per riferirsi alle politiche aziendali che permettono di portare i propri dispositivi personali nel posto di lavoro e usarli per avere gli accessi privilegiati alle informazioni aziendali e alle loro applicazioni.

    [2] L’analisi dei pattern di comunicazione, come connessioni frequenti a server esterni sconosciuti o trasferimenti di grandi quantità di dati senza autorizzazione dell’utente, può suggerire la presenza di malware.

    [3] Gli antivirus confrontano i file presenti nel sistema con un database di firme di malware conosciuti. Ogni virus o malware ha una propria “firma”, una sorta di impronta digitale unica che lo identifica. Se l’antivirus rileva una corrispondenza, segnala il file come dannoso.

    [4] Questa tecnica si basa sull’analisi del comportamento dei file e delle applicazioni. Piuttosto che cercare solo firme conosciute, il rilevamento euristico osserva i comportamenti anomali, come l’accesso non autorizzato ai dati sensibili o l’invio di pacchetti di dati a server remoti. Ciò permette all’antivirus di identificare anche malware sconosciuti, basandosi sulle azioni che essi tentano di compiere.

    [5] Lo Structured Threat Information Expression (STIX) è un linguaggio standardizzato per la rappresentazione di informazioni sulle minacce informatiche. Nel contesto dell’analisi di malware su smartphone, STIX fornisce un framework strutturato per identificare, catalogare e analizzare le tracce di compromissione (Indicators of Compromise, IoC).

    Wireshark

    Una breve guida introduttiva a Wireshark: “The world’s most popular network protocol analyzer”.

    Wireshark è il più celebre e diffuso analizzatore di pacchetti di rete, utilizzato ampiamente sia nel mondo accademico che professionale. Originariamente lanciato nel 1998 sotto il nome di “Ethereal”, Wireshark ha guadagnato una reputazione solida per la sua efficacia e versatilità nella diagnosi di problemi di rete e nella comprensione approfondita dei protocolli di rete, tanto da essere utilizzato da:

    • sistemisti: usano Wireshark per diagnosticare e risolvere problemi di prestazioni della rete;
    • studenti: trovano in Wireshark uno strumento prezioso per apprendere e visualizzare il funzionamento dei protocolli di rete;
    • analisti di sicurezza: verificano con Wireshark la presenza di dati non autorizzati o sospetti nella rete.
    • licenza GPL: Wireshark è distribuito con una licenza GPL, rendendolo un software libero e gratuito disponibile per Windows, macOS e GNU/Linux. Sul sito ufficiale è possibile trovare i file per l’installazione oltre a una vasta documentazione di riferimento;
    • formati di file: Il formato nativo per il salvataggio dei dati è il .PCAP (Packet Capture), ma Wireshark supporta e può aprire molti altri formati di file di cattura e permette l’esportazione in vari formati;
    • riconoscimento dei protocolli: Wireshark è in grado di riconoscere automaticamente una vasta gamma di protocolli di rete, consentendo agli utenti di leggere tutti i dettagli relativi ai pacchetti catturati;
    • filtraggio e ricerca: Il software permette di filtrare i dati catturati e di svolgere ricerche selettive utilizzando una sintassi comprensiva ma accessibile.

    Quando si avvia Wireshark, la prima cosa che si nota sarà l’elenco delle interfacce di rete rilevate dal proprio sistema. Questo permette di visualizzare facilmente quali interfacce sono attive e di iniziare immediatamente la cattura del traffico con un semplice doppio clic su un’interfaccia specifica. Accanto alle interfacce attive, apparirà anche un piccolo grafico che indica l’attività di rete in tempo reale.

    Funzionalità chiave dell’area di lavoro di Wireshark:

    • cattura e analisi di traffico preesistente: oltre a catturare traffico in tempo reale (v. Appendice “Wireshark – uso dei filtri di cattura”), Wireshark permette di aprire e analizzare file di cattura .PCAP esistenti, facilitando l’analisi di dati raccolti in precedenza;
    • visualizzazione dei dati catturati: una volta avviata la cattura, i dati vengono visualizzati in tempo reale nell’area centrale della finestra di Wireshark, nota come “elenco pacchetti”. Qui è possibile interrompere la cattura cliccando sull’icona a forma di quadrato situata nella barra degli strumenti principale, sopra l’elenco pacchetti.

    Figura 1 – L’interfaccia di Wireshark

    Suddivisione dell’area di lavoro (Figura 1):

    • elenco dei pacchetti: questa è la parte principale dell’interfaccia di Wireshark (lettera A), dove tutti i pacchetti di dati catturati o caricati vengono elencati. Ogni riga rappresenta un pacchetto individuale con informazioni di base come il numero di sequenza, il protocollo utilizzato, la lunghezza del pacchetto e altro;
      • dettagli del pacchetto: selezionando un pacchetto dall’elenco, i dettagli specifici del pacchetto saranno mostrati in questa area (lettera B). I dettagli sono organizzati in un formato ad albero, che riflette l’incapsulamento dei protocolli all’interno del pacchetto. Questo aiuta a comprendere come i dati sono strutturati e quali informazioni trasportano;
      • dati contenuti nel pacchetto: in questa parte dell’interfaccia, il contenuto del pacchetto selezionato viene visualizzato in forma originale, sia in esadecimale che in ASCII (lettera C). Questo è particolarmente utile per l’analisi a basso livello dei dati e per l’individuazione di specifici pattern o informazioni all’interno del payload del pacchetto.

    Barre degli strumenti e utilità:

    • barra degli strumenti principale: le icone che permettono di avviare e fermare la cattura, salvare i dati, configurare le opzioni di cattura e accedere ad altre funzioni comuni;
      • barra degli strumenti di filtraggio: posta sotto la barra degli strumenti principale, questa barra permette di inserire filtri per raffinare la visualizzazione dei pacchetti. Supporta l’evidenziazione sintattica per aiutarti a scrivere correttamente le espressioni di filtro;
      • barra di stato: situata in fondo alla finestra, mostra il numero di pacchetti catturati e fornisce accesso rapido alle proprietà del file di cattura e altre informazioni rilevanti.

    L’elenco dei pacchetti è il cuore del flusso di lavoro per l’analisi di una cattura dati in Wireshark. Una volta avviata la cattura, i dati vengono decodificati e ordinati in una tabella, permettendo di seguire la sequenza di cattura dal primo all’ultimo pacchetto.

    Informazioni chiave per ciascun pacchetto:

    • No.: numero progressivo del pacchetto, iniziando da 1.
    • Time: istante in cui il pacchetto è stato catturato.
    • Source: indirizzo IP sorgente.
    • Destination: indirizzo IP di destinazione.
    • Protocol: protocollo di più alto livello contenuto nel pacchetto.
    • Length: dimensione del pacchetto in byte.
    • Packet Info: estratto delle informazioni più rilevanti contenute nel pacchetto.

    Wireshark, inoltre, utilizza diverse colorazioni per aiutare a identificare rapidamente i tipi di pacchetti.

    La barra del menu contiene moltissime funzioni e strumenti utili per gestire e analizzare le catture di rete:

    • File: importazione ed esportazione dei dati in diversi formati.
    • Modifica: ricerca e selezione dei pacchetti, modifica del profilo di configurazione e accesso alle preferenze generali.
    • Visualizza: gestione delle barre, formato di visualizzazione del tempo di cattura, regole di colorazione.
    • Vai: navigazione e ricerca nell’elenco pacchetti.
    • Cattura: opzioni e comandi per la cattura dei dati.
    • Analizza: costruzione di filtri di visualizzazione e altre funzioni di analisi dei dati.
    • Statistiche: contiene statistiche pronte per l’analisi del traffico, grafici e proprietà del file di cattura.
    • Telefonia: strumenti per l’analisi e decodifica di flussi VoIP.
    • Wireless: dedicato al traffico Bluetooth e WiFi.
    • Strumenti: funzione per la creazione di regole per i firewall.
    • Aiuto: accesso alla guida web, wiki, FAQ, catture di esempio e altre risorse utili. Include anche informazioni sulla versione di Wireshark e sulle combinazioni di tasti.

    Tra le diverse funzionalità di analisi fornite da Wireshark vi è il menu statistiche, una risorsa potente per effettuare una prima analisi generale dei dati catturati. Questo menu offre una varietà di strumenti che permettono di visualizzare informazioni dettagliate sul traffico di rete, gli host coinvolti, le connessioni stabilite e i protocolli utilizzati. Ecco una panoramica delle voci più utili disponibili nel menu Statistiche:

    • proprietà del file di cattura: questa opzione fornisce una visione generale dei metadati del file di cattura, come la dimensione in byte, la data e l’ora di cattura, il nome del file e altre informazioni simili. È utile per ottenere un riepilogo rapido delle caratteristiche principali della sessione di cattura;
    • terminatori (Endpoints): la voce “Endpoint” elenca tutti gli host coinvolti nel traffico di rete catturato. Per ciascun host, Wireshark mostra dettagli come gli indirizzi IP, gli indirizzi MAC, e le porte utilizzate per le connessioni TCP e UDP. Questo strumento è essenziale per identificare rapidamente gli attori chiave nella rete e per comprendere meglio la distribuzione del traffico;
    • conversazioni: simile alla voce “Endpoint”, “Conversazioni” mostra tutte le connessioni presenti nella cattura. Per ogni connessione, vengono dettagliati gli host coinvolti, i loro indirizzi IP, e le porte di connessione. Particolarmente utile per seguire il flusso di comunicazione tra specifici host e per identificare possibili pattern di traffico o connessioni sospette;
    • gerarchia dei protocolli: elenca tutti i protocolli di rete presenti nella cattura, organizzati per incapsulamento. Mostra chiaramente come i vari protocolli si stratificano e interagiscono tra loro nel flusso di dati, fornendo una visione comprensiva della struttura del traffico;
    • altre statistiche utili: il menu Statistiche contiene molte altre voci che forniscono dati specifici per protocollo e analisi più dettagliate, possono includere elementi come flussi di rete, utilizzi di banda, errori di trasmissione;
    • filtraggio automatico: una funzionalità particolarmente utile di ciascuna voce del menu Statistiche è la possibilità di costruire automaticamente filtri di visualizzazione basati sui dati analizzati.

    I filtri di visualizzazione sono uno strumento essenziale in Wireshark per isolare specifiche parti del traffico di rete in base alle necessità di analisi. Questi filtri consentono di affinare la visualizzazione dei dati catturati, rendendo più efficiente l’analisi di grandi quantità di traffico (v. Appendice “Analizzare una cattura usando i filtri di visualizzazione”).

    Identificati i pacchetti di interesse in Wireshark, il passo successivo è l’analisi approfondita dei dati che contengono. Wireshark offre un riquadro dedicato chiamato dettagli dei pacchetti, che consente di esplorare in dettaglio l’incapsulamento dei protocolli e i dati trasportati da ciascun pacchetto. I dettagli dei pacchetti sono organizzati gerarchicamente, rispecchiando l’incapsulamento dei protocolli all’interno del pacchetto. Questo permette di visualizzare ogni livello di dati, dal più esterno al più interno. Ecco un esempio tipico di come potrebbero essere strutturati i dettagli per un pacchetto contenente dati HTTP:

    Figura 2 – Pacchetto frame
    • Frame: mostra il pacchetto dati catturato completo di tutti i metadati associati, come l’ora di cattura, la lunghezza del frame, e altre informazioni utili (Figura 2);
    Figura 3 – Trama Ethernet II
    • Ethernet II: mostra la trama Ethernet, il primo livello di incapsulamento, che include dettagli come l’indirizzo MAC sorgente e destinazione e il tipo di protocollo, tipicamente IP (Figura 3);
    Figura 4 – Pacchetto IPv4
    • IP Version 4:il pacchetto IP incapsulato dentro la trama Ethernet. Mostra i dettagli come l’indirizzo IP sorgente e destinazione, la versione del protocollo, il tipo di servizio, e altri parametri relativi al protocollo IP (Figura 4);
    Figura 5 – Segmento TCP
    • TCP: il segmento TCP incapsulato dentro il pacchetto IP, include informazioni come le porte sorgente e destinazione, i numeri di sequenza e di conferma, e altri dettagli relativi alla gestione della connessione TCP (Figura 5);
    Figura 6 – HTTP
    • HTTP: l’unità di dati HTTP trasportata nel segmento TCP. Qui vengono visualizzate informazioni specifiche dell’HTTP, come il metodo di richiesta (GET, POST, ecc.), l’URL richiesto e gli header HTTP (Figura 6).

    Nel vasto e complesso mondo delle reti, la capacità di monitorare e analizzare il traffico di rete è fondamentale per garantire la sicurezza, la stabilità e l’efficienza delle comunicazioni digitali. Wireshark offre gli strumenti necessari per esaminare dettagliatamente il flusso dei dati attraverso una rete, è in grado di catturare e visualizzare il contenuto dei pacchetti di rete in tempo reale, permettendo una profonda analisi di vari protocolli essenziali. Tra questi troviamo:

    • ARP risolve il problema di mappare un indirizzo IP, utilizzato nei pacchetti di rete, all’indirizzo MAC fisico della scheda di rete. L’analisi del traffico ARP è cruciale per (v. Appendice “Analizzare il traffico ARP utilizzando Wireshark”):

    identificare problemi di rete: come conflitti di indirizzi IP o problemi di risoluzione degli indirizzi;

    rilevare attività sospette: come attacchi di ARP spoofing o ARP poisoning, dove un malintenzionato potrebbe tentare di intercettare o alterare il traffico modificando le risposte ARP.

    • ICMP è fondamentale per la gestione e il debug delle reti IP. Viene spesso utilizzato per testare la connettività e tracciare il percorso dei pacchetti attraverso la rete ad esempio mediante i comandi come ping e traceroute (v. Appendice “Come analizzare i messaggi ICMP in Wireshark”)
    • TCP, UDP e porte associate. Quando si analizza il traffico di rete con Wireshark, è possibile vedere l’indirizzo IP e il numero di porta per i protocolli TCP e UDP in ogni pacchetto. Questo aiuta a identificare non solo l’origine e la destinazione dei dati a livello di rete, ma anche l’applicazione specifica a cui i dati sono destinati. L’identificazione delle porte utilizzate può fornire indizi vitali in scenari di troubleshooting di rete, sicurezza informatica e conformità di configurazione di rete (v. Appendice “Analisi di TCP e UDP in Wireshark”).
    • Domain Name System (DNS). Traduce i nomi di dominio facilmente memorizzabili in indirizzi IP numerici che le macchine possono comprendere e a cui possono connettersi (v. Appendice “Analisi del traffico DNS in Wireshark”):

    – la maggior parte delle comunicazioni DNS avviene tramite UDP su porta 53, per la sua efficienza in termini di velocità e utilizzo ridotto delle risorse, ideale per le brevi query DNS;

    – il DNS usa anche TCP, soprattutto per operazioni che richiedono affidabilità o per risposte che superano il limite di dimensione del pacchetto UDP (512 byte), come nei trasferimenti di zona tra server DNS.

    richiesta (Request): il client web invia una richiesta al server per ottenere dati o per inviare informazioni. Le richieste più comuni includono il metodo GET per richiedere dati e POST per inviare dati al server;

    risposta (Response): il server elabora la richiesta e invia una risposta al client. La risposta include uno status code che indica il successo o il fallimento della richiesta, dati (se richiesti), e header che forniscono informazioni aggiuntive.

    • HTTPS (HTTP Secure). Utilizza il protocollo Transport Layer Security (TLS) per cifrare le comunicazioni tra il client e il server, garantendo così privacy e sicurezza dei dati trasmessi. Wireshark può essere usato per analizzare il traffico TLS/SSL, sebbene il contenuto specifico delle comunicazioni sia cifrato e non direttamente leggibile (v. Appendice “Analisi del Traffico HTTPS e Decodifica di TLS in Wireshark”). La decodifica del traffico TLS in Wireshark richiede l’accesso alle chiavi di sessione, che non sono trasmesse in rete ma generate localmente da client e server durante l’handshake TLS. Per analizzare i dati HTTPS (nascosti dentro il livello TLS) è necessario esportare queste chiavi mentre il browser web stabilisce una connessione TLS (v. Appendice “Decodifica del traffico TLS in Wireshark utilizzando le chiavi di sessione”). Ogni protocollo ha un ruolo unico e critico nella facilitazione e nella sicurezza delle comunicazioni su Internet e l’analisi di questi protocolli attraverso Wireshark è cruciale per diagnosticare problemi di rete, ottimizzarne le prestazioni nonché a mitigare gli attacchi informatici.

    La decodifica del traffico TLS in Wireshark richiede l’accesso alle chiavi di sessione, che non sono trasmesse in rete ma generate localmente da client e server durante l’handshake TLS. Per analizzare i dati HTTPS (nascosti dentro il livello TLS) è necessario esportare queste chiavi mentre il browser web stabilisce una connessione TLS. Ogni protocollo ha un ruolo unico e critico nella facilitazione e nella sicurezza delle comunicazioni su Internet e l’analisi di questi protocolli attraverso Wireshark è cruciale per diagnosticare problemi di rete, ottimizzarne le prestazioni nonché a mitigare gli attacchi informatici.

    Oltre a Wireshark (v. Appendice “Wireshark – personalizzazione dell’area di lavoro” e Appendice “Wireshark – predisposizione dell’area di lavoro”), esistono diversi altri strumenti utili per l’analisi di file PCAP. Questi strumenti offrono funzionalità specializzate che possono completare o estendere le analisi effettuate con Wireshark, particolarmente utili per identificare minacce, analizzare malware, e visualizzare le connessioni di rete:

    A-Packets, permette:

    • analisi generale: caricando un file PCAP su A-Packets, si ottiene un report dettagliato che include l’analisi dei protocolli di rete e i file presenti nel traffico;
    • estrazione di credenziali: il sito offre funzionalità per estrarre le credenziali che possono essere trasmesse nel traffico di rete;
    • visualizzazione di rete: mostra una rappresentazione grafica degli host e delle loro interconnessioni, facilitando la comprensione delle relazioni di rete.

    Note: I file caricati su A-Packets diventano pubblicamente accessibili, quindi è importante considerare la sensibilità dei dati prima di utilizzare questo servizio.

    Hybrid Analysis, permette:

    • analisi malware: focalizzata sulla verifica della presenza di malware nei file PCAP;
    • sandbox: offre una sandbox per l’analisi di sicurezza, che può essere utile per esaminare i file estratti dai PCAP in un ambiente controllato.

    Note: i risultati sono generalmente molto sintetici e orientati esclusivamente all’identificazione di malware.

    VirusTotal, permette:

    • analisi malware: VirusTotal analizza i file PCAP per la presenza di malware e fornisce risultati dettagliati;
    • analisi IDS: include un’analisi Intrusion Detection System (IDS) che può rilevare attività sospette o malevole;
    • Community: se il malware è noto, la sezione Community può fornire ulteriori informazioni utili condivise da altri utenti.

    PacketTotal, permette:

    • analisi di rete: non si concentra sull’analisi di malware, ma offre strumenti per esaminare le connessioni di rete dentro il PCAP;
    • strumenti integrati: include funzionalità per il whois e la geolocalizzazione;
    • grafici del traffico: fornisce una rappresentazione grafica dello stream di dati, simile a quella di Wireshark, aiutando a visualizzare il flusso di traffico in maniera intuitiva.

    Network Miner è un potente strumento forense che si specializza nell’estrarre e visualizzare informazioni dai file PCAP. È particolarmente utile per gli analisti che necessitano di un’analisi rapida e diretta delle comunicazioni di rete. Questo strumento è spesso usato in complemento a Wireshark per offrire una vista più orientata ai dati estratti piuttosto che alla pura analisi del traffico:

    • Hosts: mostra un elenco di host coinvolti nel traffico di rete;
    • Files: elenca i file trasferiti attraverso la rete, che possono essere esaminati o scaricati direttamente dall’interfaccia;
    • Sessions: fornisce una panoramica delle sessioni di comunicazione tra i dispositivi;
    • Credentials: rivela credenziali che potrebbero essere state trasmesse in chiaro.

    ANY.RUN è un servizio di analisi malware basato su sandbox che permette agli utenti di eseguire file sospetti in un ambiente controllato e sicuro, garantisce:

    • ambiente isolato: utilizza una macchina virtuale (VM) Windows 7 per isolare il malware dal sistema operativo principale e dalla rete locale;
    • interattività: fornisce un ambiente interattivo, consentendo agli utenti di interagire direttamente con il sistema operativo della VM durante l’analisi;
    • monitoraggio in tempo reale: durante l’esecuzione del malware, ANY.RUN visualizza in tempo reale le connessioni di rete e l’albero dei processi generati dall’eseguibile;
    • community e database: gli utenti possono accedere a un database di analisi precedenti, che include i dettagli delle minacce più comuni e recenti, consentendo uno studio approfondito prima di iniziare nuove analisi.

    CyberChef, sviluppato dall’agenzia di intelligence britannica GCHQ, è uno strumento versatile per l’analisi e la manipolazione di dati. Viene chiamato “il coltellino svizzero della cyber-security” vista la grande quantità di tools di cui dispone.

    Tra le tante categorie di operazioni disponibili vi sono:

    • operatori aritmetici e logici;
    • conversione di formato;
    • codifica e decodifica, crittografia e hashing;
    • compressione e decompressione dati, strumenti di elaborazione grafica;
    • estrazione di dati, stringhe e files.

    Wireshark – uso dei filtri di cattura

    Wireshark è uno strumento estremamente potente per l’analisi di rete e comprendere come utilizzare efficacemente i filtri di cattura può significativamente migliorare l’efficienza delle sessioni di monitoraggio. Ecco una guida per configurare e applicare filtri di cattura.

    Configurazione Iniziale

    All’avvio, Wireshark mostra l’elenco delle interfacce di rete disponibili:

    • grafico dell’interfaccia: accanto a ciascuna interfaccia c’è un grafico che mostra l’attività di rete in tempo reale, facilitando l’identificazione delle interfacce attive;
      • avvio della cattura: un doppio clic su un’interfaccia avvia la cattura del traffico su quella specifica interfaccia.

    Finestra opzioni di cattura

    Per accedere:

    • dal menu Cattura selezionare Opzioni;
    • Selezione Multipla: seleziona più interfacce per la cattura simultanea;
    • File di Cattura: definisce un file per salvare i dati catturati, specifica una dimensione massima e imposta la rotazione del file per gestire grandi quantità di dati;
    • Risoluzione dei Nomi: abilita la risoluzione dei nomi per gli indirizzi IP e per il livello di trasporto, facilitando la lettura e l’analisi del traffico.

    Filtri di cattura

    A differenza dei filtri di visualizzazione, i filtri di cattura limitano i dati al momento dell’acquisizione. Ciò significa che i dati non corrispondenti al filtro non saranno disponibili in Wireshark dopo la cattura.

    Come inserire un filtro di cattura:

    • nella finestra Opzioni di Cattura, vi è un campo dedicato ai filtri di cattura;
    • scegliere un filtro predefinito cliccando il nastro verde accanto al campo di inserimento o scrivere manualmente il filtro.

    Esempi di filtri di cattura

    • Cattura traffico da un singolo host:

    host 192.168.0.99

    • Cattura traffico da una rete specifica:

    src net 10.1.0.0/16

    oppure:

    src net 10.1.0.0 mask 255.255.0.0

    • Cattura traffico HTTP diretto a una porta specifica:

    tcp dst port 80

    • Escludere il traffico IP:

    not ip

    • Cattura traffico non-broadcast:

    not broadcast

    • Cattura pacchetti di dimensione specifica:

    less 250

    oppure:

    greater 250 and ip

    • Cattura traffico da VLAN specifiche:

    vlan 10 or vlan 20

    • Cattura traffico destinato a un MAC specifico:

    ether dst 01:00:0c:cc:cc:cc

    (torna su)

    Analizzare una cattura usando i filtri di visualizzazione

    La sintassi di base per creare un’espressione di filtraggio richiede la specifica di un protocollo seguito da un dettaglio del protocollo, utilizzando un formato protocollo.campo:

    Esempio: ip.addr == 192.168.1.1 seleziona tutti i pacchetti che contengono l’indirizzo IP specificato, sia come mittente che come destinatario.

    Gli operatori di confronto sono fondamentali nella costruzione dei filtri:

    • == oppure eq: uguale a;
    • != oppure neq: diverso da;
    • > oppure gt: maggiore di;
    • < oppure lt: minore di.

    Per combinare più condizioni, si utilizzano gli operatori logici:

    • && oppure and: entrambe le condizioni devono essere soddisfatte;
    • || oppure or: una delle condizioni deve essere soddisfatta;

    Esempio: ip.src == 192.168.1.151 && ip.dst == 62.10.45.151 seleziona solo il traffico dall’indirizzo IP sorgente al destinatario specificato.

    Filtraggio per protocollo o porta

    Per selezionare traffico specifico basato su protocolli o porte, si possono utilizzare espressioni come:

    • tcp.port == 80 || http: seleziona tutto il traffico HTTP.
    • udp.port == 53 || dns: seleziona tutte le query DNS.

    Ricerca di stringhe con contains

    L’operatore contains è utilizzato per cercare specifiche stringhe all’interno dei pacchetti:

    Esempio: dns contains “google” trova tutti i pacchetti DNS che includono il termine “google”.

    (torna su)

    Analizzare il traffico ARP utilizzando Wireshark

    Per analizzare il traffico ARP utilizzando Wireshark, seguire questi passaggi:

    1. Filtrare il Traffico ARP: digitare arp nella barra di filtraggio di Wireshark per isolare il traffico ARP. Questo filtro visualizzerà tutti i pacchetti ARP scambiati nella rete.
    2. Selezionare un Messaggio ARP: cliccare su un pacchetto ARP nell’elenco per visualizzarne i dettagli nel pannello dei dettagli.
    3. Esaminare i Dettagli del Messaggio ARP: nel Pannello dettagli, sotto la voce “Ethernet II”, vi è la sezione ARP che include i seguenti campi:
      1. Opcode: indica il tipo di messaggio ARP, dove 1 rappresenta una REQUEST e 2 un REPLY;

    indirizzi IP e MAC: mostra gli indirizzi IP e MAC dell’host sorgente e del destinatario. Notare che l’ARP REQUEST è inviato al broadcast, cioè all’indirizzo MAC di destinazione ff:ff:ff:ff:ff:ff.

    (torna su)

    Come analizzare i messaggi ICMP in Wireshark

    Per analizzare i Messaggi ICMP utilizzando Wireshark, seguire questi passaggi:

    1. filtrare il Traffico ICMP: digitare icmp nella barra di filtraggio di Wireshark per isolare solo il traffico ICMP;
    2. selezionare un pacchetto ICMP: nella lista dei pacchetti filtrati, selezionare un pacchetto che si desidera analizzare. I pacchetti di Echo Request e Echo Reply sono facilmente identificabili dai loro tipi;
    3. esaminare i dettagli dei pacchetti:
      1. nel pannello dei dettagli di Wireshark, cercare la sezione ICMP che si trova subito sotto la sezione di IPv4;
      1. osservare il campo Type per identificare il tipo di messaggio ICMP:
        1. Type 8: ICMP Echo Request;
        1. Type 0: ICMP Echo Reply;
      1. il Timestamp mostra l’orario esatto in cui il messaggio è stato inviato dall’host originale, che può essere utile per calcolare la latenza.

    (torna su)

    Analisi di TCP e UDP in Wireshark

    Quando si utilizza Wireshark per analizzare il traffico di rete, comprendere le differenze tra TCP (Transmission Control Protocol) e UDP (User Datagram Protocol) è fondamentale per l’interpretazione dei dati di rete. Ecco come analizzare questi due protocolli cruciali usando Wireshark.

    Filtraggio TCP e UDP

    Per iniziare l’analisi:

    1. filtraggio: inserire tcp o udp nella barra di filtraggio di Wireshark per isolare il traffico corrispondente;
    2. selezione del pacchetto: scegliere un pacchetto per analizzare i dettagli nel pannello dei dettagli, immediatamente sotto il livello di IPv4.

    Dettagli TCP in Wireshark

    Con TCP, si troveranno informazioni dettagliate utili per monitorare e diagnosticare la connessione:

    • Sequence Number e Acknowledge Number: questi numeri sono cruciali per il controllo di flusso e per garantire che i dati siano trasmessi in modo affidabile e in ordine.
    • flags di TCP: i flags come SYN, ACK, e FIN sono utilizzati per gestire lo stato della connessione. Ad esempio:
      • SYN: utilizzato per iniziare una connessione;
      • SYN-ACK: risposta dal server per accettare la connessione;
      • ACK: utilizzato per confermare la ricezione dei pacchetti;
      • FIN: indica la chiusura di una connessione;
      • RST: quando l’handshake a tre vie non viene concluso correttamente, ad esempio per indisponibilità del servizio, il server restituirà altri messaggi di controllo, come il RST (reset).

    L’analisi dei flags è importante per identificare il comportamento della connessione, come l’inizio e la conclusione delle sessioni TCP o possibili anomalie nelle connessioni di rete.

    Seguire il Flusso TCP

    Per una visione più dettagliata della comunicazione tra client e server:

    1. attivare “Segui il Flusso TCP”: dopo aver selezionato un pacchetto TCP, clic destro e selezionare “Segui” e poi “Flusso TCP”. Questo aprirà una nuova finestra con i dati trasmessi nel flusso TCP;
    2. analisi del dialogo: I dati vengono visualizzati con i messaggi del client in rosso e quelli del server in blu, facilitando la visualizzazione della conversazione tra i due;
    3. leggibilità dei dati: la facilità di lettura dei dati dipende dal protocollo di livello applicativo trasportato. Per esempio, il traffico HTTP è generalmente più facile da interpretare rispetto ad altri protocolli meno verbosi.

    Dettagli UDP in Wireshark

    UDP è meno complesso rispetto a TCP in quanto non stabilisce una connessione e non garantisce il controllo di flusso o la conferma di ricezione.

    (torna su)

    Analisi del traffico DNS con Wireshark

    1. filtraggio del Traffico DNS: per analizzare il traffico DNS in Wireshark, digitare dns nella barra di filtraggio per isolare solo i pacchetti DNS;
    2. esaminare le Query e le Risposte DNS:
      1. nel pannello dei dettagli di Wireshark, è possibile vedere la struttura delle query e delle risposte DNS. Questo include i nomi di dominio richiesti, i tipi di record (come A, AAAA, MX), gli indirizzi IP risolti, e altri dettagli DNS;
      1. ogni pacchetto DNS mostrerà se si tratta di una query o di una risposta e includerà dettagli come il numero di record nella risposta e gli eventuali errori (es. “Non-Existent Domain”).
    3. monitoraggio per anomalie:
      1. analizzare il traffico DNS può aiutare a identificare comportamenti anomali come attività di malware, che spesso utilizzano query DNS per comunicare con i server di comando e controllo;
      1. l’alta frequenza di query DNS fallite o un volume insolitamente elevato di query può essere indicativo di configurazioni errate o attività sospette.

    (torna su)

    Analisi del Traffico HTTP in Wireshark

    Per analizzare il traffico HTTP in Wireshark:

    1. impostare il filtro: digitare http nella barra di filtraggio di Wireshark per visualizzare solo i pacchetti http;
    2. selezionare un pacchetto: cliccare su un pacchetto di interesse per visualizzare i dettagli nel pannello inferiore.

    Dettagli del traffico HTTP in Wireshark

    Nel pannello dettagli di Wireshark, sotto il livello TCP, si trova il livello HTTP che include:

    • Content-Type: indica il tipo di dati trasferiti, come text/html per le pagine web o application/json per dati in formato JSON;
    • Server: il software server che gestisce la richiesta;
    • Request URI: l’URI specifico richiesto dal client;
    • User-Agent: identifica il client web e il sistema operativo utilizzato per fare la richiesta;
    • Referrer: l’URL della pagina che ha originato la richiesta.

    Seguire il flusso TCP

    Per una visione completa della conversazione:

    1. selezionare “Segui Flusso TCP”: clic destro sul pacchetto quindi Analizza > Segui > Flusso TCP. Questo mostra l’intera conversazione tra client e server, inclusi tutti i dati trasmessi;
    2. analisi: la finestra del flusso TCP permette di leggere l’interazione completa, visualizzando i dati trasferiti e gli header HTTP in un formato leggibile.

    Utilizzare il Menu Statistiche

    Per una panoramica più ampia:

    • gerarchia di protocolli: nel menu Statistiche, selezionare Gerarchia di Protocolli per vedere una sintesi dei protocolli usati nella cattura, inclusi quelli trasportati via http;
    • esportazione di oggetti HTTP: Da File > Esporta Oggetti > HTTP, è possibile esportare elementi come immagini, fogli di stile e script che sono stati trasferiti via HTTP.

    (torna su)

    Analisi del traffico HTTPS e decodifica di TLS in Wireshark

    Analisi di HTTPS – TLS in Wireshark

    1. filtrare il traffico TLS: inserire tls nella barra di filtraggio di Wireshark per isolare il traffico TLS;
    2. esaminare i dettagli TLS:
      1. nel pannello dettagli, sotto il livello TCP, si trova il livello TLS;
      1. HTTP nascosto: poiché il traffico HTTP è cifrato, non comparirà esplicitamente. Sarà indicato come “Encrypted Application Data”;
      1. dettagli TLS: analizzare i messaggi di “Client Hello” e “Server Hello” per vedere dettagli come la versione TLS, i metodi di cifratura negoziati e i numeri casuali usati per generare la chiave di sessione;
      1. chiave pubblica: nel certificato del server, si può vedere la chiave pubblica usata per la negoziazione della cifratura;
    3. visualizzazione di certificati e handshake: è possibile esaminare i certificati scambiati e i dettagli dei messaggi di handshake per avere un’idea di come viene stabilita la sicurezza prima di trasmettere dati sensibili.

    Limitazioni nell’analisi di TLS in Wireshark

    Decifrare i dati TLS: Wireshark non può decifrare i dati TLS senza le appropriate chiavi di decifrazione. Tuttavia, è possibile configurare Wireshark per decifrare il traffico TLS se si ha accesso alle chiavi di sessione o ai parametri di pre-master secret.

    (torna su)

    Decodifica del traffico TLS in Wireshark utilizzando le chiavi di sessione

    Ecco come farlo utilizzando Firefox e configurando Wireshark per utilizzare il file di log delle chiavi.

    Configurazione di Firefox per esportare le chiavi di sessione TLS

    • impostazione della variabile di ambiente SSLKEYLOGFILE:
      • chiudere Firefox e Wireshark: assicurarsi che entrambe le applicazioni siano chiuse prima di modificare le impostazioni;
      • aprire le impostazioni di sistema:
        • nel menu di Avvio cercare “env” o “environment variables”.
        • cliccare su “Modifica le variabili d’ambiente per il tuo account”;
      • aggiungere la variabile SSLKEYLOGFILE:
        • clicca su “Nuova…” per creare una nuova variabile d’ambiente;
        • assegnare come nome della variabile SSLKEYLOGFILE;
        • come valore della variabile, impostare un percorso per il file di log, ad esempio: %USERPROFILE%\Documents\sslkey.log.
      • salvare e chiudere: confermare e chiudi tutte le finestre di dialogo;
    • verifica della configurazione:
      • riaprire Firefox e visitare un sito HTTPS;
      • verificare che il file sslkey.log sia stato creato nel percorso specificato e controllare se contiene le chiavi di sessione;

    Importazione delle chiavi di sessione in Wireshark

    1. avviare Wireshark e iniziare una cattura: avviare una cattura di rete in Wireshark mentre si usa Firefox per generare traffico HTTPS;
    2. configurazione delle preferenze di Wireshark per TLS:
      1. da ModificaPreferenzeProtocolsTLS;
      1. trovare la voce “(Pre)-Master-Secret log filename” e cliccare su Sfoglia….
      1. selezionare il file sslkey.log che si è precedentemente configurato e confermare;
    3. analizzare il traffico decodificato:
      1. con le chiavi di sessione importate, Wireshark sarà in grado di decodificare il traffico TLS e mostrare i dati HTTP in chiaro;
      1. per esaminare un flusso di comunicazione specifico, cliccare con il tasto destro su un pacchetto e selezionare SeguiFlusso TLS o Flusso HTTP per visualizzare l’intera conversazione tra client e server.

    (torna su)

    Wireshark – personalizzazione dell’area di lavoro

    Wireshark offre ampie possibilità di personalizzazione per adattarsi meglio alle esigenze specifiche di ciascun utente o tipo di analisi. La personalizzazione può aiutare a migliorare l’efficienza nell’analisi del traffico di rete.

    Creazione e gestione dei profili di configurazione

    • Creare un nuovo profilo:
      • da ModificaProfili di configurazione;
      • cliccare su Nuovo e assegnare un nome al nuovo profilo. Questo permette di personalizzare e salvare le impostazioni senza alterare il profilo Default.
    • Cambio del profilo: è possibile cambiare profilo ogni qual volta è necessario adattarsi a diversi scenari di analisi. Selezionare semplicemente il profilo desiderato dall’elenco nel menu dei profili di configurazione.
    • Esportazione e importazione di un profilo: questo è utile per trasferire le personalizzazioni su un’altra installazione di Wireshark. Dallo stesso menu dei profili, è possibile esportare un profilo e poi importarlo su un’altra macchina.

    Modifica delle regole di colorazione

    • Accesso alle regole di colorazione:
      • da VisualizzaRegole di colorazione;
      • modificare le regole esistenti o aggiungerne di nuove cliccando sul simbolo +.
    • Personalizzazione dei colori: ogni regola è legata a un filtro di visualizzazione specifico. Definire il colore del testo e dello sfondo per rendere più intuitiva l’analisi visiva del traffico.

    Configurazione delle colonne

    • Modifica delle colonne:
      • da ModificaPreferenzeAspetto;
      • eliminare colonne non necessarie o aggiungerne di nuove.
    • Aggiunta di nuove colonne:
      • assegna un nome alla nuova colonna e seleziona il dettaglio da visualizzare, come indirizzi IP o porte;
      • è possibile visualizzare i nomi risolti o mantenere i numeri con l’opzione resolved o unresolved.
    • Riorganizzazione delle colonne: è possibile trascina le colonne nella posizione desiderata per un’analisi più efficiente.

    Memorizzazione dei filtri di visualizzazione

    • Aggiunta di filtri personalizzati:
      • utilizzare il pulsante + vicino alla barra di filtraggio per salvare i filtri utilizzati frequentemente.
      • assegnare un nome al filtro e, se necessario, aggiungere un commento per descriverne l’uso.
    • Utilizzo dei filtri salvati: i filtri salvati appariranno come pulsanti nella barra di filtraggio e saranno applicabili rapidamente con un clic.

    (torna su)

    Wireshark – predisposizione dell’area di lavoro

    Per rafforzare la capacità di rilevamento di malware nel traffico di rete, è possibile configurare specificamente Wireshark per analizzare le sessioni HTTP e HTTPS:

    Creazione di un nuovo profilo di configurazione: da ModificaProfili di configurazione e creare un nuovo profilo, es. “Analyst”.

    Modifica delle colonne per analisi HTTP/HTTPS

    • aprire le preferenze: da ModificaPreferenzeAspetto.
    • configurazione delle colonne: rimuovere le colonne non necessarie e aggiungere le seguenti per ottimizzare l’analisi del traffico web:
      • Time: imposta il formato su UTC per garantire che l’ora sia uniforme e confrontabile globalmente;
      • Src e Dst: aggiungere colonne per gli indirizzi IP sorgente e destinatario;
      • Port: colonne per le porte sorgente e destinatario, utili per identificare il tipo di traffico;
      • Host: una colonna personalizzata che usa il filtro http.host o tls.handshake.extensions_server_name per visualizzare i nomi dei server web.
      • Info: per dettagli generali sulla trasmissione.

    Impostazioni di data e ora: assicurarsi che il tempo sia impostato su UTC per la consistenza attraverso il menu VisualizzaFormato visualizzazione tempoData e ora del tempo UTC.

    Creazione di pulsanti di filtraggio

    Usare il pulsante + accanto alla barra di filtraggio per creare filtri rapidi:

    • (http.request or tls.handshake.type eq 1) and !(ssdp): filtra le richieste HTTP e i nomi di dominio HTTPS, escludendo il traffico SSDP;
    • (http.request or tls.handshake.type eq 1 or tcp.flags eq 0x0002 or dns) and !(ssdp): aggiunge TCP SYN e DNS alle sessioni HTTP e HTTPS.

    Analisi delle conversazioni di rete e ricerca di minacce

    • Gerarchia dei protocolli: da StatisticheGerarchia di protocolli per vedere la distribuzione dei dati tra i protocolli;
    • Endpoint e conversazioni: utilizzare le opzioni sotto Statistiche per visualizzare gli endpoint e le conversazioni, che possono aiutare a identificare i “top talkers” o le connessioni sospette.
    • HTTP Requests: StatisticheHTTPRichieste per un elenco di richieste a server web, che può rivelare connessioni a domini sconosciuti o maligni.

    Uso avanzato dei filtri di visualizzazione

    • udp.port eq 67: visualizza i messaggi DHCP inviati dai client che contengono l’indirizzo IP, l’indirizzo MAC e l’hostname;
    • nbns: mostra il traffico Netbios utilizzato tipicamente dagli host Windows, utile per ricavare l’hostname degli endpoint;
    • http.request: mostra tutte le richieste di accesso ai server web, che contengono utili info;
    • udp and !(dns): visualizza le connessioni UDP non attinenti al trasporto di DNS;
    • dns.qry.name contains dominio: mostra le richieste di risoluzione per il dominio indicato;
    • frame contains “MZ” and frame contains “DOS”: trova il trasferimento di eseguibili Windows. Le stringhe specificate sono i cosiddetti magic numbers (o anche file signatures[1]), piccole sequenze di caratteri poste all’inizio di ogni file grazie alle quali è possibile identificare il tipo di file; il magic number MZ identifica un file eseguibile per Windows.
    • l’operatore matches: simile a contains ma abilita l’uso delle espressioni regolari:
      • frame matches “\.(?i)(exe|zip|doc|xls|ppt|jar)”: visualizza i pacchetti che contengono file;
      • frame matches “(?i)(username|password)”: trova i pacchetti con credenziali;
      • frame matches “User-Agent: Mozilla.*”: visualizza solo le richieste HTTP dei client Mozilla

    Attivazione della geolocalizzazione con MaxMind

    Durante la ricerca di una minaccia risulta utile avere informazioni sulla provenienza geografica ovvero la nazionalità degli host coinvolti nelle conversazioni di rete; di base Wireshark non fornisce tali informazioni ma possono essere integrati grazie al database fornito dal sito di MAXMIND:

    • download dei database MaxMind: registrarsi e scaricare i file .mmdb[2] da MaxMind;
    • configurazione in Wireshark:
      • da ModificaPreferenzeName Resolution;
      • aggiungere la directory contenente i file .mmdb.

    Utilizzo dei Filtri di Display per la Geolocalizzazione

    Completata l’attivazione dei file di database si troveranno subito le nuove informazioni:

    • nel pannello dettagli di un pacchetto selezionato, espandendo il livello IPv4;
    • nella finestra dedicata alle statistiche per i terminatori di rete (endpoint), scheda IPv4, il pulsante Mappa posto a sinistra nella finestra permette di osservare gli indirizzi IP su di una mappa geografica.

    Wireshark permette di utilizzare i dati di geolocalizzazione per filtrare il traffico di rete in base alla località geografica:

    • questo filtro visualizza tutti i pacchetti che hanno origine o destinazione nella città di Roma:

    ip.geoip.city == “Rome”

    • filtro specifico per la città di destinazione:

    ip.geoip.dst_city == “Dublin”

    • filtro per nazione di destinazione:

    ip.geoip.dst_country == “Italy”

    (torna su)


    [1] https://en.wikipedia.org/wiki/List_of_file_signatures

    [2] GeoLite2 ASN, GeoLite2 City e GeoLite2 Country

    Tor contro VPN

    TOR (The Onion Router) e VPN (Virtual Private Network) sono entrambi strumenti che possono essere utilizzati per proteggere la privacy e la sicurezza online. Sebbene entrambi abbiano alcune somiglianze, presentano anche differenze fondamentali che li rendono più adatti a diversi tipi di utenti e a diversi tipi di attività online.

    TOR (abbreviazione di The Onion Router) è un software gratuito e open source che consente agli utenti di navigare in Internet in modo anonimo. È stato sviluppato a metà degli anni ‘90 dal Laboratorio di Ricerca Navale statunitense come modo per proteggere le comunicazioni governative. Oggi TOR è utilizzato da una vasta gamma di persone, da giornalisti e attivisti a individui comuni che desiderano proteggere la propria privacy online.

    TOR funziona crittografando il traffico Internet di un utente e instradandolo attraverso una rete di server gestiti da volontari, noti come “nodi”, prima di raggiungere la sua destinazione. Questo processo rende difficile per chiunque monitorare l’attività online di un utente o determinarne la posizione fisica.

    Per utilizzare TOR, un utente deve semplicemente scaricare e installare il browser TOR, basato sul popolare browser Web Firefox. Una volta installato, il browser TOR consente all’utente di accedere a Internet proprio come farebbe con qualsiasi altro browser Web, ma con l’ulteriore protezione dell’anonimato.

    Uno dei principali vantaggi dell’utilizzo di TOR è che fornisce un elevato livello di privacy e sicurezza. Poiché il traffico Internet dell’utente è crittografato e instradato attraverso più nodi, è molto difficile per chiunque monitorare la propria attività online o determinare la propria posizione. Ciò rende TOR uno strumento popolare per giornalisti e attivisti che potrebbero operare in paesi con governi repressivi, poiché consente loro di comunicare e condividere informazioni senza timore di essere monitorati o puniti.

    Un altro vantaggio di TOR è che può aiutare gli utenti a aggirare la censura di Internet. In molti paesi, i governi censurano determinati siti Web o tipi di contenuti, rendendo impossibile agli utenti l’accesso. Ma con TOR, gli utenti possono accedere a questi siti web instradando il loro traffico attraverso nodi in altri paesi dove non si applica la censura.

    Tuttavia, il TOR non è privo di inconvenienti. Poiché la rete fa affidamento su volontari per gestire i nodi, a volte può essere lenta e inaffidabile. Inoltre, poiché TOR è spesso associato ad attività criminali, alcuni siti Web potrebbero bloccare gli utenti che vi accedono tramite la rete TOR.

    Una VPN, o rete privata virtuale, è uno strumento che aiuta a mantenere la tua attività online privata e sicura. Lo fa crittografando il tuo traffico Internet e instradandolo attraverso un server remoto sicuro prima che raggiunga la sua destinazione. Ciò rende difficile per chiunque vedere cosa si sta facendo online o monitorare le attività online.

    Ci sono molte situazioni per cui un utente potrebbe voler utilizzare una VPN. Ad esempio, superare una rigorosa censura di Internet di alcuni Paesi per accedere a siti Web o servizi bloccati. Oppure connettersi su una rete Wi-Fi pubblica e voler proteggere i propri dati dall’intercettazione da parte di altri sulla stessa rete o da altre minacce crittografando il traffico Internet e instradandolo attraverso un server sicuro: quando ci si connette a una rete Wi-Fi pubblica, si espone potenzialmente il proprio dispositivo e i propri dati a una serie di minacce, come hacking o malware.

    L’uso di una VPN può anche aiutare a proteggere la privacy online. Molti siti Web e servizi monitorano le attività online e raccolgono dati personali, che possono essere utilizzati per pubblicità mirata o addirittura venduti a terzi. Una VPN crittografa il traffico Internet, rendendo molto più difficile per queste aziende tracciare e raccogliere i dati.

    Esistono molti provider VPN diversi tra cui scegliere: aspetti fondamentali da considerare quando si sceglie un provider VPN sono il livello di crittografia utilizzato, la posizione e il numero dei server, nonché le politiche sulla privacy e sulla registrazione.

    Una delle principali differenze tra TOR e VPN è il modo in cui instradano il traffico Internet. TOR instrada il traffico attraverso più livelli di server, o “router a cipolla”, prima che raggiunga la destinazione. Ciò rende difficile per chiunque monitorare le attività online o determinare il vero indirizzo IP mittente.

    D’altro canto, una VPN instrada il traffico attraverso un unico server sicuro. Questo server crittografa il traffico e assegna un nuovo indirizzo IP temporaneo, rendendo difficile per chiunque vedere cosa si sta facendo online o tracciare il vero indirizzo IP.

    Un’altra differenza fondamentale tra TOR e VPN è il livello di crittografia che forniscono. TOR crittografa il traffico più volte mentre passa attraverso i router Onion, fornendo un livello di sicurezza molto elevato. Tuttavia, ciò significa anche che TOR può essere più lento della VPN, poiché il traffico deve passare attraverso più livelli di crittografia. D’altra parte, la VPN crittografa il traffico solo una volta, rendendolo più veloce di TOR. Tuttavia, ciò significa anche che la VPN potrebbe[1] fornire un livello di sicurezza inferiore rispetto a TOR, poiché il traffico viene crittografato solo una volta.


    [1] Dipende dalla complessità della crittografia.

    Individuazione dell’account ID

    Breve raccolta di  procedure per l’individuazione dell’account ID

    Il social network Facebook distingue tre tipologie di account:

    • Profilo
    • Pagina
    • Gruppo

    Per individuare l’ID associato all’account Facebook occorre:

    • visualizzare la home dell’account, cliccare sulla stessa con il tasto destro del mouse e selezionare l’opzione “Visualizza sorgente pagina”;
    • cliccare CTRL+F e inserire le parole chiave “userID” (in caso di profilo), “pageID” (in caso di una pagina) e “groupID” (in caso di un gruppo);
    • cercare, nella pagina aperta CTRL + F,una delle parole chiave che sarà seguita da un codice numerico che rappresenta l’ID del profilo;

    Per ulteriore conferma – una volta ricavato l’ID – provare su una nuova pagina l’url così composto: www.facebook.com/ID (inserire il numerico ricavato).

    Per individuare l’ID associato all’account Tik Tok occorre:

    • visualizzare la home dell’account, cliccare sulla stessa con il tasto destro del mouse e selezionare l’opzione “Visualizza sorgente pagina”;
    • cliccare CTRL+F e inserire le parole chiave “uID”
    • cercare, nella pagina aperta CTRL + F,una delle parole chiave che sarà seguita da un codice numerico che rappresenta l’ID del profilo;

    Accedere nell’account che – per Telegram – vengono distinti in:

    • utente
    • gruppo
    • supergruppo
    • canale privato

    Andare in Search chats e inserire get_id_bot avendo come risposta: Your Chat ID is=ID (numerico ricavato).

    Per individuare l’ID associato ad un profilo twitter si può utilizzare il link https://tweeterid.com

    Inserire nel campo di ricerca l’handle, cliccare convert e l’applicazione restituirà un codice numerico che rappresenta l’ID del profilo twitter.

    Analogamente, se si conosce l’ID, inserendolo e cliccando convert si otterrà l’handle dell’account twitter.

    Per individuare l’ID associato all’account Instagram occorre:

    • visualizzare la pagina del profilo di interesse, cliccare sulla stessa con il tasto destro del mouse e selezionare l’opzione “Visualizza sorgente pagina”;
    • cliccare CTRL+F e inserire le parole chiave “profilePage”;
    • cercare, nella pagina aperta CTRL + F,le parole chiave che saranno seguite come segue (page_id: profilePage_: ID) da un codice numerico che rappresenta l’identificativo del profilo.

     Link per trovare da ID a USERNAME https://commentpicker.com/instagram-username.php?utm_content=cmp-true

    Link per trovare da  USERNAME a ID  https://commentpicker.com/instagram-user-id.php

    Telegram e l’Internet libero

    Telegram è un’applicazione di messaggistica focalizzata su velocità e sicurezza, è semplice e gratuita.

    Telegram è sostenuto da Pavel Durov[1] e suo fratello Nikolai. Pavel supporta Telegram finanziariamente e ideologicamente, mentre il contributo di Nikolai è tecnologico.

    Il team di sviluppo di Telegram ha la sua sede a Dubai e la maggior parte degli sviluppatori viene da San Pietroburgo. Il team di Telegram ha dovuto lasciare la Russia a causa delle normative legate al mondo IT, e ha cercato posizioni diverse come base, incluse Berlino, Londra e Singapore.

    • Una delle caratteristiche distintive di Telegram è la sua filosofia orientata alla privacy e alla sicurezza.
    • Supporta due livelli di crittografia[2]:
    •  crittografia server-client che è usata nelle Chat Cloud (chat private e di gruppo);
    • crittografia end-to-end: opzionale per le chat segrete che garantisce che solo mittente e il destinatario possano leggere i messaggi scambiati in una chat segreta. Non è abilitata di default.

    Tutti i dati, a prescindere dal tipo, sono crittografati nella stessa maniera, sia che siano testi, media o altro tipo.

    • Chat segrete: le chat segrete sono chat cifrate end-to-end, che offrono una maggiore sicurezza per le conversazioni. In queste chat, i messaggi possono essere autodistrutti dopo un certo periodo di tempo o dopo la lettura e non permettono l’inoltro.  Un messaggio eliminato nella conversazione, viene eliminato anche “dall’altra parte”. Inoltre, per garantire una maggiore privacy, i messaggi scambiati non lasciano tracce sui server Telegram, non fanno parte del cloud di Telegram e vi si può accedere solo dal dispositivo di origine[3].
    • Cloud storage illimitato: offre uno spazio di archiviazione cloud gratuito e illimitato, rendendo facile il recupero dei dati in caso di perdita del dispositivo.
    • È basato sul cloud con sincronizzazione istantanea. Ciò consente di accedere ai propri messaggi da diversi dispositivi contemporaneamente e condividere un numero illimitato di file fino a 2 GB ciascuno.
    • Gruppi di chat: è possibile creare gruppi di chat fino a 200.000 partecipanti e condividerli con il mondo o mantenerli privati. Gli amministratori di gruppo hanno il controllo su chi può unirsi al gruppo e quali azioni possono essere seguite all’interno.
    • Canali Telegram: i canali sono simili ai gruppi, ma consentono agli amministratori di inviare messaggi in un solo senso, a un pubblico illimitato. Sono spesso usati per diffondere notizie, aggiornamenti e contenuti a un pubblico vasto.
    • Multi-piattaforma: Telegram è disponibile su diverse piattaforme, tra cui iOS, Android, Windows, macOS e anche come versione web.
    • Chiamate vocali e video: supporta chiamate vocali e video. Supporta inoltre le chiamate vocali con crittografia end-to-end.
    • Bot Telegram: è possibile aggiungere bot di terze parti alle proprie chat o ai propri gruppi per svolgere una varietà di compiti, come ricevere aggiornamenti meteo, notizie o eseguire attività automatizzate.
    • L’infrastruttura con più data center e la crittografia implementata, permette a Telegram di essere più veloce e molto più sicuro.
    • È possibile eliminare tutti i messaggi inviati o ricevuti in una chat individuale, mentre nei gruppi eliminare solo i propri messaggi. È possibile anche cancellare l’intera cronologia della chat individuale e del gruppo: i messaggi eliminati non lasciano traccia nella chat.

    Gruppi e canali, le differenze

    Sono entrambi strumenti di comunicazione che consentono agli utenti di condividere messaggi, contenuti e comunicare con altri membri. Tuttavia, ci sono alcune differenze chiave tra i due:

    • Interazione bidirezionale nei gruppi, unidirezionale nei canali
    • Gruppi: tutti i membri possono inviare messaggi e partecipare attivamente alla conversazione. Gli amministratori del gruppo possono moderare i messaggi e gestire i membri. È possibile attivare la cronologia permanente per consentire ai nuovi membri di accedere ai messaggi precedenti.
    • Canali: la comunicazione è unidirezionale. Gli amministratori o i proprietari del canale possono inviare messaggi, ma i membri possono solo leggere e reagire ai messaggi inviati.
    • Privacy e visibilità
    • Gruppi: possono essere pubblici o privati. Nei gruppi pubblici, chiunque può cercare e unirsi al gruppo, mentre nei gruppi privati, è necessario un invito da parte di un amministratore per partecipare (solitamente un link).
    • Canali: possono essere pubblici, il che significa che chiunque può iscriversi al canale senza bisogno di un invito. Per i canali privati occorre essere aggiunto dal creatore o avere un link di invito per unirsi.
    • Numeri di partecipanti
    • Gruppi: possono ospitare fino a 200.000 membri.
    • Canali: possono ospitare un numero virtualmente illimitato di iscritti.
    • Moderazione:
    • Gruppi: gli amministratori di gruppo hanno il controllo su chi può unirsi al gruppo, chi può inviare messaggi e quali azioni possono essere eseguite all’interno del gruppo. Possono rimuovere o bandire membri inappropriati o disturbatori.
    • Canali: gli amministratori dei canali possono moderare i commenti nei messaggi, ma non possono impedire a nessuno di iscriversi o di visualizzare i messaggi del canale.

    Gli utenti

    Gli utentiÈ possibile contattare un utente su Telegram attraverso il suo numero di telefono[4], altrimenti:

    • quando si è membri dello stesso gruppo;
    • se viene impostato un username pubblico altri utenti potranno usare la “ricerca globale” in base a quell’username;
    • se si sceglie di comparire nella sezione “Persone vicine[5] (questa opzione è disattivata di default).

    Inoltre:

    • non è necessario avere un username di Telegram e averne uno serve solamente perché le persone possano trovare quell’utente nella ricerca globale senza conoscere il numero telefonico;
    • è possibile avere solo un username di base e un numero qualsiasi di username collezionabili contemporaneamente. Questo vale anche per i gruppi pubblici e i canali pubblici. Gli username collezionabili[6] funzionano esattamente come gli username base, appaiono nei risultati della “ricerca globale”, e hanno i propri link dedicati che possono essere usati al di fuori di Telegram[7];
    • nessuno degli interlocutori vedrà gli altrui numeri telefonici a meno che questo non sia permesso nelle impostazioni della privacy;
    • è possibile eliminare l’account dalla pagina di disattivazione[8]. L’operazione rimuoverà permanentemente tutti i propri messaggi, i propri gruppi e i propri contatti. Tale azione deve essere confermata dal proprio account Telegram[9] e non può essere annullata. Infine, l’account Telegram viene eliminato dopo 6 mesi di inutilizzo[10].

    Telegram ha due principi fondamentali quando si tratta di raccogliere ed elaborare dati privati:

    • non utilizza i dati personali per mostrare annunci pubblicitari;
    • conserva solo i dati di cui ha bisogno per funzionare come servizio di messaggistica sicuro e funzionale.

    Nella fattispecie Telegram:

    • ai fini della legislazione applicabile sulla protezione dei dati, è il titolare del trattamento dei dati, responsabile dei dati personali quando si utilizzano i suoi servizi;
    • per i paesi dello Spazio Economico Europeo (SEE), poiché si trova al di fuori dello SEE, Telegram ha designato una terza parte: l’Ufficio Europeo per la Protezione dei Dati (EDPO) come rappresentante ai sensi dell’articolo 27 del GDPR. È possibile indirizzare all’EDPO qualsiasi domanda relativa al GDPR utilizzando il modulo di richiesta online all’indirizzo https://edpo.com/gdpr-data-request/ oppure scrivendo all’EDPO in Avenue Huart Hamoir 71, 1030 Bruxelles, Belgio;
    • tratta i dati personali sulla base del fatto che tale trattamento è necessario per garantire i propri interessi legittimi (tra cui: (1) fornire servizi efficaci e innovativi agli utenti; (2) rilevare, prevenire o altrimenti affrontare frodi o problemi di sicurezza in relazione alla fornitura di servizi), a meno che tali interessi non siano superati dall’interesse o dai diritti e libertà fondamentali che richiedono la protezione dei dati personali dell’utente.

    Di seguito come Telegram utilizza e gestisce dati personali dell’utente:

    • dati dell’account di base: utilizza il numero di cellulare e i dati di base dell’account (ovvero: nome del profilo, immagine del profilo e informazioni), ma specifica che “…non vogliamo sapere il tuo vero nome, sesso, età o cosa ti piace” e non è necessario che il nickname sia il vero nome[11];
    • l’indirizzo di posta elettronica: quando si abilita la verifica in due passaggi per l’account o si archivia documenti utilizzando la funzione Telegram Passport, è possibile scegliere di impostare un’e-mail di recupero password. Questo indirizzo verrà utilizzato solo per l’invio di un codice di recupero password. In caso di accesso con Google o Apple, Telegram potrebbe chiedere ad alcuni utenti di fornire un indirizzo email per ricevere i codici di accesso via email anziché via SMS, in questo caso tale indirizzo email verrà archiviato separatamente dall’email di recupero e verrà utilizzato solo per l’invio dei codici di autenticazione per l’accesso all’account;
    • i messaggi: Telegram è un servizio cloud sul quale tutti i dati (messaggi, foto, video e documenti delle chat cloud), vengono archiviati e fortemente crittografati e le chiavi di crittografia sono archiviate in diversi altri data center in diverse giurisdizioni. In questo modo nessuno può accedere ai dati dell’utente.

    Le chat segrete utilizzano la crittografia end-to-end, ciò significa che tutti i dati vengono crittografati con una chiave che solo mittente e destinatario conoscono. Non c’è modo per Telegram o chiunque altro senza accesso diretto al dispositivo di conoscere quei messaggi. Telegram non memorizza le chat segrete sui server e per tanto le chat segrete non sono disponibili nel cloud: è possibile accedere a quei messaggi solo dal dispositivo a o da cui sono stati inviati[12].

    Oltre ai messaggi privati, Telegram supporta anche canali pubblici e gruppi pubblici. Tutte le chat pubbliche sono chat cloud e sono crittografate, sia in archiviazione che in transito;

    • numero di telefono e contatti: Telegram utilizza i numeri di telefono come identificatori univoci in modo che sia facile passare dagli SMS e da altre app di messaggistica e mantenere così la rete sociale. Telegram chiede il consenso prima di sincronizzare i contatti (solo numero e nome e cognome)[13];
    • dati sulla posizione: se si condivide una posizione in una chat, questi dati sulla posizione vengono trattati rispettivamente come altri messaggi nel cloud o nelle chat segrete;cookies: vengono utilizzati solo quelli necessari per operare e fornire i servizi sul web[14];
    • memorizzazione dei dati: per iscritti a Telegram dal Regno Unito o dallo Spazio Economico Europeo, i dati vengono archiviati in data center nei Paesi Bassi[15]. Tutti i dati vengono archiviati pesantemente crittografati in modo che nessuno possa accedere al loro contenuto.

    In quanto un servizio cloud, Telegram elabora i dati per fornire la cronologia della chat cloud, inclusi messaggi, contenuti multimediali e file, a qualsiasi dispositivo di a scelta dell’utente senza la necessità di utilizzo di backup di terze parti.

     

    • Sicurezza e protezione: data l’enorme popolarità, per migliorare la sicurezza dell’account utente, nonché per prevenire spam, abusi e altre violazioni ai termini di servizio, Telegram potrebbe raccogliere metadati come l’indirizzo IP, i dispositivi e le app Telegram utilizzate, la cronologia delle modifiche al nome utente, ecc. Se raccolti, questi metadati possono essere conservati per un massimo di 12 mesi. I moderatori possono controllare i messaggi che sono stati segnalati loro dai loro destinatari, in caso accertata violazione su un messaggio inviato l’account mittente potrebbe essere limitato dal contattare estranei, temporaneamente o permanentemente. In caso di violazioni più gravi, l’account potrebbe essere bannato. Telegram può anche utilizzare algoritmi automatizzati per analizzare i messaggi nelle chat cloud per bloccare spam e phishing.
    • Nessuna pubblicità basata sui dati dell’utente: Telegram non utilizza i dati utente per il targeting degli annunci o altri scopi commerciali.I bot: Telegram ha un’API che consente agli sviluppatori di terze parti di creare bot, utilizzandoli, l’utente invierà alcuni dei propri dati dell’account pubblico ai rispettivi sviluppatori di bot di terze parti: nome utente e immagine/i del profilo.
    • I diritti riguardo ai dati personali forniti: ai sensi della legislazione applicabile sulla protezione dei dati, in determinate circostanze, l’utente ha i il diritto di:richiedere una copia di tutti i propri dati personali conservati e di trasmettere tale copia a un altro titolare del trattamento;cancellare o modificare i dati personali;limitare o opporsi al trattamento dei propri dati personali;correggere eventuali dati personali inesatti o incompleti.

    Se Telegram riceve un’ordinanza del tribunale che conferma che un utente è sospettato di terrorismo, potrebbe divulgare l’indirizzo IP e numero di telefono alle autorità competenti. In tal caso, l’esecuzione di tale ordinanza verrà inclusa in un rapporto semestrale sulla trasparenza pubblicato all’indirizzo: https://t.me/transparency. Alla data di redazione di questo documento, 26/08/2024, non vi sono report per l’Italia:

    Nota: affinché una decisione giudiziaria sia rilevante, deve provenire da un paese con un indice di democrazia sufficientemente alto per essere considerato una democrazia (https://en.wikipedia.org/wiki/Democracy_Index). Possono essere condivisi solo l’indirizzo IP e il numero di telefono.

    Account

    L’eliminazione di un account è possibile nella pagina di disattivazione. L’eliminazione dell’account rimuove tutti i messaggi, i contenuti multimediali, i contatti e ogni altro dato archiviato nel cloud di Telegram. Questa azione deve essere confermata tramite l’account Telegram e non può essere annullata. Per impostazione predefinita, se si smette di usare Telegram e non si è online per almeno 6 mesi, l’account verrà eliminato insieme a tutti i messaggi, i media, i contatti e ogni altro dato nel cloud di Telegram. Su Impostazioni è possibile modificare tale periodo;

    Messaggi

    • nelle chat segrete, l’eliminazione di un messaggio indica sempre all’app dall’altra parte di eliminarlo;
    • nelle chat individuali qualsiasi parte può scegliere di eliminare qualsiasi messaggio, sia inviati che ricevuti, per entrambe le parti. Non c’è limite di tempo. Qualsiasi parte può anche scegliere di cancellare l’intera cronologia della chat per entrambe le parti, nel qual caso alle app verrà richiesto di rimuovere tutti i messaggi in quella chat, indipendentemente dal numero di messaggi conservati da uno dei partecipanti;
    • nei supergruppi e nei canali, l’eliminazione di un messaggio lo rimuove per tutti i partecipanti. I messaggi eliminati e le versioni originali dei messaggi modificati dei supergruppi vengono archiviati per 48 ore dopo l’eliminazione per poter essere visualizzati nel registro degli amministratori;
    • è possibile ordinare ai messaggi nelle chat segrete di autodistruggersi non appena viene letto. Allo scadere del timer, ad entrambi i dispositivi che partecipano ad una chat segreta viene richiesto di eliminare il messaggio (foto, video, ecc.).
    • Informativa sulla Privacy
    • @EURegulation per richiedere una copia di tutti i propri dati archiviati da Telegram o altre info sulla privacy dei dati;
    • contenuto illegale su Telegram[17]: i set di sticker, i canali e i bot su Telegram sono disponibili pubblicamente, se ritenuti illegali o pornografici è possibile segnalarli a abuse@telegram.org;
    • set di sticker che violano i diritti di proprietà intellettuale: dmca@telegram.org;
    • inviare una richiesta relativa al Regolamento UE 2021/784: il Regolamento (UE) 2021/784 del Parlamento europeo e del Consiglio, del 29 aprile 2021, relativo al contrasto della diffusione di contenuti terroristici online (Terrorist Content Online Regulation, o regolamento TCO), consente alle autorità dei Paesi dell’UE di inviare richieste di rimozione di contenuti terroristici, se scoperti sulla piattaforma pubblica di Telegram; quest’ultimo inoltre ha designato una terza parte, l’European Digital Services Representative (EDSR), per assistere nelle comunicazioni relative al TCO. Gli utenti le cui pubblicazioni sono state rimosse in seguito al regolamento TCO possono richiedere dettagli sul motivo per cui le loro pubblicazioni sono state considerate terroristiche e su come contestare la rimozione:
      • scrivendo a EDSR, Avenue Huart Hamoir 71, 1030 Bruxelles, Belgio;
      • contattando il bot @EURegulation su Telegram e usando il comando /tco_ask.
    • stopCA@telegram.org: per segnalare abusi sui minori. Mentre t.me/stopCA è il canale che pubblica aggiornamenti giornalieri sui contenuti vietati relativi alle CA – Child Abuse.

    [1] https://it.wikipedia.org/wiki/Pavel_Durov

    [2] Basata sulla crittografia AES simmetrica a 256-bit, sulla crittografia RSA 2048 e sullo scambio di chiavi di sicurezza Diffie-Hellman.

    [3] Tutte le chat segrete su Telegram sono specifiche del dispositivo e non fanno parte del cloud di Telegram. Questo significa che vi si può accedere solo dal dispositivo di origine.

    [4] Il numero di telefono è l’unico modo per identificare un utente Telegram. Telegram non raccoglie ulteriori informazioni sull’utente, quindi chi ha il numero ha l’account.

    [5] Persone vicine è una funzione opzionale che permette agli utenti di Telegram di scoprire i gruppi locali, trovare amici con cui chattare nella loro zona, o scambiare rapidamente contatti con chi si trova nelle vicinanze. Nota: Persone vicine non è mai attivo di default – gli utenti devono abilitarlo manualmente.

    [6] Gli username collezionabili possono essere acquistati e venduti attraverso la piattaforma d’asta Fragment, uno strumento per acquisire e scambiare domini Telegram di valore. L’acquisto di un username tramite la piattaforma conferisce una proprietà permanente, verificata dalla blockchain TON. I proprietari di username collezionabili possono liberamente assegnarli alle chat, venderli ad altri o conservarli per un uso successivo.

    [7] username.t.me e t.me/username.

    [8] https://my.telegram.org/auth?to=delete

    [9] Verrà ricevuto un codice via Telegram e non via SMS,

    [10] Assieme a tutti i messaggi, media, contatti e ogni altro dato archiviato nel cloud di Telegram. È possibile cambiare tale periodo.

    [11] Tieni presente che gli utenti che ti hanno tra i loro contatti ti vedranno con il nome che hanno salvato e non con il tuo nickname. In questo modo tua madre può avere il nome pubblico “Johnny Depp” mentre appare come “mamma” per te.

    [12] I media nelle chat segrete: prima di essere caricato, ogni elemento viene crittografato con una chiave separata, non nota al server. Questa chiave e la posizione del file vengono quindi nuovamente crittografate, questa volta con la chiave della chat segreta e inviate al destinatario. Ciò significa che tecnicamente il file si trova su uno dei server di Telegram, ma a tutti tranne che al mittente e al destinatario sembra un pezzo di spazzatura indecifrabile e casuale. Telegram elimina periodicamente questi dati casuali dai server per risparmiare spazio.

    [13] È possibile interrompere la sincronizzazione dei contatti o eliminarli dai server Telegram: Impostazioni > Privacy e sicurezza > Contatti.

    [14] Il browser utilizzato dall’utente, inoltre, consente di controllare questi cookie, incluso se accettarli o meno e come rimuoverli.

    [15] Si tratta di data center forniti da terze parti in cui Telegram affitta uno spazio designato, tuttavia, i server e le reti che si trovano all’interno di questi data center e su cui sono archiviati i dati personali sono di proprietà di Telegram. Pertanto, non vengono condivisi i dati personali con tali data center.

    [16] https://telegram.org/privacy/eu

    [17] Tutte le chat e i gruppi di Telegram sono territorio privato dei loro rispettivi partecipanti. Telegram non eseguirà alcuna richiesta relativa ad esse.

     

    Diritto dei dati – Tutela giurisdizionale e amministrativa

    Tutela amministrativa e giurisdizionale. Ruolo del Garante privacy e poteri di indagine e correttivi. Sanzioni amministrative pecuniarie, accessorie e risarcimento del danno. Big data e dati non personali.

    La tutela giurisdizionale e amministrativa, ovvero come in qualche modo ci si tutela di fronte ad una violazione del trattamento, dei principi del trattamento, comunque in generale delle regole sul trattamento dei dati personali disposte dal GDPR. Andiamo quindi a vedere le regole di cui agli articoli 77 e seguenti del GDPR che prevedono diversi strumenti di tutela. A tutela di cosa? Ovviamente dei diritti dell’interessato che è sempre il soggetto di cui ci dobbiamo accertare che il trattamento sia eseguito in modo corretto. In particolare le forme di tutela, appunto, sono tre. La prima, articolo 77, è la tutela in via amministrativa di fronte a quella che il GDPR chiama l’autorità di controllo. L’autorità di controllo che interviene rispetto ad un trattamento che viola il GDPR è nel nostro ordinamento il Garante Privacy, quindi l’Autorità per la protezione per il trattamento dei dati personali e che chiamiamo in generale o l’autorità o il garante. Quindi tutela amministrativa di fronte all’Autorità garante della privacy. Un secondo profilo di tutela, articolo 78, tutela in via giurisdizionale, quindi di fronte al giudice, rispetto ad una decisione dell’autorità. Quindi quando l’Autorità prende una decisione poi ci si può rivolgere al giudice perché intervenga in seconda battuta rispetto alla decisione presa appunto dall’Autorità. Ultima forma di tutela, di nuovo in via giurisdizionale, quindi di fronte al giudice, per l’esercizio di un diritto riconosciuto dal GDPR. Quindi direttamente mi rivolgo al giudice per far valere un diritto che il GDPR mi riconosce. Innanzitutto partiamo dall’autorità. Qual è l’autorità? Perché ovviamente noi siamo di fronte al GDPR, quindi di fronte a un Regolamento che vale in tutti i Paesi dell’Unione europea. Per individuare l’autorità competente quindi andremo ad applicare il cosiddetto criterio di prossimità con l’interessato, quindi per riconoscere qual è l’autorità competente a intervenire rispetto ad una nostra supposta violazione, quella che noi riteniamo essere una violazione del GDPR andremo a rivolgerci all’autorità o del luogo dove noi come interessati risiediamo, quindi il luogo di residenza abituale dell’interessato, oppure il luogo in cui l’interessato lavora, in alternativa, oppure ancora il luogo in cui è stata effettuata la violazione. Perché la violazione ovviamente inerisce al trattamento e quindi andiamo a rivolgerci all’autorità del luogo in cui il trattamento ha concretamente luogo, quindi se quel certo titolare ha il suo stabilimento in un certo Paese noi ci rivolgeremo all’autorità di quel Paese. Rispetto invece all’autorità giudiziaria, quindi quando adiamo il giudice, quando scegliamo la tutela giurisdizionale, anche qui la regola è quella del rivolgerci al tribunale del luogo in cui il titolare ha lo stabilimento, quindi del luogo in cui si realizza il trattamento di dati oppure il luogo in cui l’interessato ha la sua residenza. Ciò a meno che il titolare non sia una autorità pubblica, quindi se il titolare invece è l’autorità pubblica, allora ci rivolgiamo al giudice del luogo in cui ha sede l’autorità in questione.

    Ci soffermiamo sulla tutela dei dati personali all’interno del quadro normativo del Regolamento Generale sulla Protezione dei Dati (GDPR) e la sua implementazione nel diritto italiano, particolarmente attraverso il Codice Privacy aggiornato con il decreto legislativo 101 del 2018. Esploriamo la figura dell’Autorità di controllo, in Italia rappresentata dal Garante per la protezione dei dati personali, e le modalità con cui gli individui possono rivolgersi a questa autorità o al sistema giudiziario per far valere i propri diritti.

    Il GDPR prevede strumenti specifici per la tutela dei diritti degli interessati, iniziando con la possibilità di presentare un reclamo amministrativo all’Autorità di controllo qualora si ritenga che sia stata violata la normativa sulla protezione dei dati. Se l’Autorità prende una decisione che non soddisfa l’interessato, quest’ultimo ha il diritto di rivolgersi al sistema giurisdizionale per impugnare tale decisione. Inoltre, esiste la possibilità di avviare azioni giurisdizionali dirette per esercitare i diritti riconosciuti dal GDPR, come il diritto di accesso ai dati, o per ottenere un risarcimento in caso di danni subiti a seguito di violazioni del regolamento.

    Un aspetto importante è il principio di alternatività degli strumenti di tutela introdotto dall’articolo 140 bis del Codice Privacy. Questo principio stabilisce che la scelta di una via di tutela (amministrativa o giurisdizionale) preclude automaticamente l’uso dell’altra per lo stesso motivo, a meno che non siano presenti condizioni particolari, come il mancato riscontro da parte del Garante entro i termini massimi stabiliti.

    Un accenno, inoltre, alla questione delle sanzioni amministrative pecuniarie, che devono essere effettive, proporzionate e dissuasive, seguendo i criteri stabiliti dall’articolo 83 del GDPR. Viene sottolineato il ruolo del Garante, che può esercitare una varietà di poteri correttivi, da semplici ammonimenti a sanzioni pecuniarie, per garantire la conformità al regolamento.

    Diamo un’occhiata ora alle implicazioni più ampie della protezione dei dati nell’era digitale, quando toccano temi come i big data e la distinzione tra dati personali e non personali. In particolare, come il trattamento di grandi volumi di dati spesso unisce informazioni di natura diversa, sollevando sfide significative per quanto riguarda la protezione e l’autodeterminazione degli individui. Questo contesto richiede una regolamentazione che bilanci efficacemente le esigenze economiche e i diritti fondamentali delle persone, una sfida che continua a evolvere con il progresso tecnologico. Le implicazioni dei big data, un concetto che si riferisce all’immensa quantità di dati generati costantemente dall’interazione tra persone e tecnologie digitali. Il trattamento dei big data presenta una serie di sfide particolari per la protezione dei dati personali, poiché spesso combina dati personali e non personali, rendendo il confine tra questi due tipi sempre più sfumato. Il GDPR, che si focalizza sulla protezione dei dati personali, trova applicazione anche nei contesti in cui i dati non personali e personali si intrecciano così strettamente da non poter essere distinti. Questo è particolarmente rilevante in contesti in cui il trattamento di enormi volumi di dati da parte delle tecnologie digitali può influenzare decisioni che hanno impatti diretti sugli individui, come nel caso delle raccomandazioni personalizzate o delle previsioni comportamentali.

    L’analisi dei big data può permettere alle organizzazioni di scoprire pattern e tendenze nascoste nei comportamenti umani, offrendo così possibilità predittive che possono essere usate in vari settori, dalla pubblicità al monitoraggio della salute. Queste capacità predittive, tuttavia, sollevano questioni significative riguardo al consenso e alla trasparenza. Per esempio, le persone sono veramente consapevoli e in grado di autorizzare l’uso dei loro dati quando accettano i termini di servizio di app o piattaforme che fanno largo uso di algoritmi di analisi?

    Inoltre, l’accento va posto anche su come la normativa europea stia evolvendo per rispondere a questi cambiamenti. Un esempio è il Data Act, un regolamento dell’UE recentemente proposto che mira a regolamentare non solo i dati personali ma anche i dati non personali, riflettendo così la crescente importanza economica e sociale di entrambi i tipi di dati. Questo regolamento si propone di garantire che i dati siano trattati in modo equo e trasparente, cercando di bilanciare le esigenze del mercato digitale con i diritti fondamentali delle persone.

    In conclusione, il trattamento dei big data impone una riflessione critica su come le informazioni vengono utilizzate e sulla necessità di garantire che i diritti alla privacy e all’autodeterminazione informativa rimangano centrali nel contesto di una società sempre più guidata dai dati.