Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Sicurezza Informatica: Vulnerabilità, Attacchi e Prevenzione dei Data Breach, Appunti di Informatica Giuridica

Una panoramica dettagliata sulla sicurezza informatica, con un focus sui dati, le vulnerabilità, i metodi di attacco e le strategie per la prevenzione dei data breach. Vengono esplorati concetti come il sistema dbsm, sql, client, identità e identificazione, architettura del sistema di posta elettronica, cyber crime, cyber espionage, cyber terrorism, cyber warfare, hardware del sistema informativo, soluzioni per la sicurezza fisica dei sistemi informatici, worms, backdoor, petya, sfregio, advanced, persistent, data breach, log di sistema, tpm, servizio tc per il boot autenticato, aggiornamenti di sistema operativo ed applicazione, criminalità organizzata, magistratura e ff.oo. Scada, cyber war e cyber warfare.

Tipologia: Appunti

2022/2023

Caricato il 25/02/2024

gaia-musiu
gaia-musiu 🇮🇹

5

(1)

5 documenti

1 / 65

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
INFORMATICA E SICUREZZA INFORMATICA !
Testo “sicurezza dei computer e delle reti”
26 settembre 2022 !
Gli atti di pirateria informatica, non vengono commessi da hackers. Gli hackers non esistono, esistono i vandali, i ladri
ed i governi.
La sicurezza informatica è questione di persone le cui finalità sono ampiamente disciplinate nel codice penale.
Introduzione e parole chiave.
Computer (information) security [la sicurezza informatica].
La sicurezza informatica è l’insieme delle misure e dei controlli (provvedimenti) assunti per
garantire la confidenzialità, l’integrità e la disponibilità delle informazioni includendo gli
hardware che contengono tali dati.
La confidenzialità è la caratteristica per cui determinate informazioni vengono rese accessibili
solo ed esclusivamente a soggetti autorizzati. La confidenzialità è molto di più della segretezza.
È un grosso problema, bisogna molte volte mantenere confidenziali determinate informazioni
riservate a determinate persone, escludendo gli altri. È garantita e dovuta per legge.
Un problema molto più grosso è l’integrità delle informazioni.
L’integrità delle informazioni sono le modifiche improprie o le alterazioni delle informazioni.
Bisogna garantire che le informazioni siano identiche a quelle recepite dalla fonte. All’integrità è
legato anche il problema della disinformazione e della fake news.
La disponibilità è la possibilità di accedere facilmente alle informazioni e di utilizzarle, grazie alle
infrastrutture che ne danno la disponibilità.
Ci sono problemi di diverso livello d’impatto:
-Basso
-Moderato
-Alto
Il base al livello di impatto, si capisce che intervento bisogna adottare.
La sicurezza informatica ha varie sfide da affrontare:
Avversario—> persona che persegue interessi e\o fini diversi dai nostri (che possono essere
anche leciti). Soggetto che non è moralmente diverso da noi, ma semplicemente ha finalità
diverse dalle nostre. Questo avversario (agente della minaccia) può agire verso la nostra
infrastruttura fisica o memorizzata.
In questo caso in informatica si parla di sicurezza tradotta in due modi differenti, ovvero security
e safety. La Security, fa riferimento a quelle minacce che sono determinate da atti volontari (un
avversario che persegue un fine). La Safety, fa riferimento a quelle minacce che non sono
determinate da atti volontari, ma da atti naturali
Attacchi —> qualunque tipo di attività commessa con malizia (con finalità diversa da quelle che
noi consideriamo lecite). Qualcosa che va contro il nostro sistema di valori, ma non
necessariamente contro il sistema di valori dell’avversario. Quello che consideriamo attacco è
un’attività qualsiasi realizzata con finalità diverse da quelle che noi consideriamo tollerabili.
L’attacco si ha quando una delle parti riesce a compiere un’attività che va contro questo
contratto (es: il rilascio di dati a qualcuno, l’attaccante può essere anche chi fornisce i dati, che
magari li da falsi).
Gli attacchi possono essere attivi o passivi.
In quelli passivi l’utente si limita ad osservare e a prendere informazioni, mentre in quelli attivi
l’utente agisce concretamente mandando segnali.
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41

Anteprima parziale del testo

Scarica Sicurezza Informatica: Vulnerabilità, Attacchi e Prevenzione dei Data Breach e più Appunti in PDF di Informatica Giuridica solo su Docsity!

INFORMATICA E SICUREZZA INFORMATICA

Testo “sicurezza dei computer e delle reti” 26 settembre 2022 Gli atti di pirateria informatica, non vengono commessi da hackers. Gli hackers non esistono, esistono i vandali, i ladri ed i governi. La sicurezza informatica è questione di persone le cui finalità sono ampiamente disciplinate nel codice penale. Introduzione e parole chiave. Computer (information) security [la sicurezza informatica]. La sicurezza informatica è l’insieme delle misure e dei controlli (provvedimenti) assunti per garantire la confidenzialità, l’integrità e la disponibilità delle informazioni includendo gli hardware che contengono tali dati. La confidenzialità è la caratteristica per cui determinate informazioni vengono rese accessibili solo ed esclusivamente a soggetti autorizzati. La confidenzialità è molto di più della segretezza. È un grosso problema, bisogna molte volte mantenere confidenziali determinate informazioni riservate a determinate persone, escludendo gli altri. È garantita e dovuta per legge. Un problema molto più grosso è l’integrità delle informazioni. L’integrità delle informazioni sono le modifiche improprie o le alterazioni delle informazioni. Bisogna garantire che le informazioni siano identiche a quelle recepite dalla fonte. All’integrità è legato anche il problema della disinformazione e della fake news. La disponibilità è la possibilità di accedere facilmente alle informazioni e di utilizzarle, grazie alle infrastrutture che ne danno la disponibilità. Ci sono problemi di diverso livello d’impatto :

- Basso

- Moderato

- Alto

Il base al livello di impatto, si capisce che intervento bisogna adottare. La sicurezza informatica ha varie sfide da affrontare: Avversario —> persona che persegue interessi e\o fini diversi dai nostri (che possono essere anche leciti). Soggetto che non è moralmente diverso da noi, ma semplicemente ha finalità diverse dalle nostre. Questo avversario (agente della minaccia) può agire verso la nostra infrastruttura fisica o memorizzata. In questo caso in informatica si parla di sicurezza tradotta in due modi differenti, ovvero security e safety. La Security, fa riferimento a quelle minacce che sono determinate da atti volontari (un avversario che persegue un fine). La Safety, fa riferimento a quelle minacce che non sono determinate da atti volontari, ma da atti naturali Attacchi —> qualunque tipo di attività commessa con malizia (con finalità diversa da quelle che noi consideriamo lecite). Qualcosa che va contro il nostro sistema di valori, ma non necessariamente contro il sistema di valori dell’avversario. Quello che consideriamo attacco è un’attività qualsiasi realizzata con finalità diverse da quelle che noi consideriamo tollerabili. L’attacco si ha quando una delle parti riesce a compiere un’attività che va contro questo contratto (es: il rilascio di dati a qualcuno, l’attaccante può essere anche chi fornisce i dati, che magari li da falsi). Gli attacchi possono essere attivi o passivi. In quelli passivi l’utente si limita ad osservare e a prendere informazioni, mentre in quelli attivi l’utente agisce concretamente mandando segnali.

Inoltre si può distinguere l’attacco fatto da un insider o da un outsider. L’insider è qualcuno che può legittimamente accedere alle informazioni. L’outsider è qualcuno che non potrebbe accedere al sistema (lo fa per sbaglio o per motivi illeciti). La minaccia fatta dall’insider è peggiore rispetto a quella fatta dall’outsider. Ci sono tre attacchi che funzionano e funzioneranno sempre e sono la corruzione, la violenza e l’inganno. Contromisure —> qualunque cosa il difensore può fare per impedire un particolare attacco. È sempre relativa ad uno specifico attacco, non possono essere generali. Bisogna capire che tipo di attacco si sta compiendo e da li si capisce quale contromisura prendere. Se non adotto le contromisure giuste, che rischi posso percepire? Nessuno, questo perchè c’è una mancata percezione del rischio siccome il valore dell’informazione è molto basso. Sono molte le risorse che dobbiamo proteggere (asset). Minaccia —> generico evento che potrebbe avere un impatto sulle operazioni. L’attacco è qualcosa di specifico ≠ dalla minaccia che è qualcosa di più concreto (ad esempio la divulgazione di un dato). È qualcosa che noi possiamo concepire, ad esempio perdere un certo dato. Vulnerabilità —> concetto chiave di tutta la sicurezza informatica. Definita come una debolezza generica che può essere sfruttata per ottenere determinati risultati non graditi a noi. Ad esempio la mancanza di password per accedere ad un pc è una vulnerabilità. Per assurdo la vulnerabilità potrebbe riflettere su vari aspetti, ad esempio un profilo di un influencer sequestrato e preso da qualcuno che gli ha tolto la disponibilità. Le vulnerabilità peggiori sono quelle introdotte dagli esseri umani, ma esistono anche delle vulnerabilità tecniche (senza la volontà dell’utente) che però sono estremamente rare e costose. Spesso non sono qualcosa di localizzato. La superficie di attacco —> è il numero di vulnerabilità che un utente espone. 27 settembre 2022 Criptografia. Partiamo da due concetti: Documento : “rappresentazione di atti o fatti giuridicamente rilevanti”. Descrizione data da un giurista di nome Carnelluti. Rappresentare qualcosa significa che qualcosa nel mondo reale succede, ne estraggo l’essenza e la fisso su un documento. Documento è un termine che ha il verbo “docere” (qualcosa che tramanda) che significa insegnare qualcosa, dire qualcosa a qualcuno che non era presente. Un documento può essere anche la rappresentazione di un fato, ovvero qualcosa che è a nostra conoscenza. Lo scopo di un documento è quello di trasmettere informazioni. Io trasmetto a qualcuno o a me stesso dell’informazione. Il documento è una rappresentazione e quindi non è la realtà. Questa rappresentazione può essere diretta o indiretta. La prima è una rappresentazione fotografica o fonografica. La seconda è una rappresentazione mediata da una persona che riceve l’informazione e la trascrive. La rappresentazione è condannata ad essere imprecisa (ad esempio una fotografia potrebbe avere colori sovraesposti), perde una parte di informazione che è presente nell’atto che viene catturato. Questa perdita di informazione la si deve tenere presente, perchè potrebbe ritorcersi contro, siccome viene a mancare un elemento che se serve non c’è più la possibilità di recuperarlo.

La crittografia si basa su questo, io prendo la stringa e la sostituisco. L’operazione di sostituire la stringa si chiama “cifratura”. Ai fini pratici, perchè l’operazione di cifratura abbia senso, deve essere associata ad una decifratura. La regola per poter associare la stringa cifrata (testo cifrato) deve dipendere da un parametro (chiave) noto al soggetto che fa la cifratura e la decifratura, ma non ad altri. La chiave è segreta. Esiste un’unica chiave usata per cifrare e decifrare e questo è il motivo per cui viene chiamata criptografia simmetrica. La chiave viene utilizzata perchè mentre il metodo si può rivelare pubblicamente siccome non è da lui che dipende la segretezza del contenuto, ma questa dipende dalla chiave, invece la chiave è segreta. Cambiare la chiave è molto più semplice che cambiare il metodo. I sistemi di criptografia simmetrica utilizzano un parametro simbolico (chiave) per cifrare il messaggio e la stessa chiave per decifrarlo. [guardare il film the imitation game] Cifrario di cesare, si trasla l’alfabeto di un tot numero. Esempio: A B C D E F G H I L M N O P Q R S T U V Z D E F G H I L M N O P Q R S T U V Z A B C Nell’esempio la traslatura è di tre. Apparentemente questo scombina parecchio il testo, considerato poco sicuro. Questo permette di scoprire la chiave. Al giorno d’oggi questo non serve a niente. I cifrari moderni utilizzano dei motori molto complessi, sono standardizzati. Funzionano sostanzialmente così: esiste una sorgente del testo in chiaro, esiste un algoritmo di cifratura che trasforma il testo in chiave a cifrato, esiste poi un generatore di chiave e attraverso un canale sicuro (che non può essere cifrato) e viene condivisa a chi deve cifrarla. Il problema delle chiavi è un grande problema per la crittografia simmetrica. Un’ importante teorema di Diffie ed Hellman è quello di concordare una chiave simmetrica su un canale insicuro, facendo si che la chiave non venisse conosciuta da altri. La chiede viene concordata fra le due parti senza averla mai rivelata sul canale insicuro. Oggi è possibile stabilire quale sia la chiave prima di iniziare una comunicazione. Non è necessario conservare una chiave a lungo termine, inoltre non devo avere un mare di chiavi scambiate su un canale non sicuro. La crittografia simmetrica è una funzione primitiva. Insieme a questa c’è un altra funzione ancora più primitiva che si chiama funzione di hash. La funzioni di hash (“mescolare”) è un modo di prendere un numero grande e si fa in modo di trovare un numero più piccolo associato al numero originale. Funzione veloce da calcolare che permette di mappare ed associare delle stringhe binarie di dimensioni grosse a numeri di dimensione fissa e piccola (valori di hash). La collisione avviene quando i due numeri di partenza (diversi) producono lo stesso risultato. Gli hash sono funzioni standardizzate (MD5, SHA1, SHA256), si tratta di numeri gestibili dal punto di vista delle dimensioni. L’idea di base è che io caratterizzo un numero molto grande riducendolo ad un numero più piccolo che però è associato a lui. L’utilità di fare questo è che se io ho due numeri molto grandi, invece di confrontare loro, confronto i numeri più piccoli e lo faccio ovviamente in maniera più veloce. L’utilizzo delle funzioni hash è molto vasto. Purtroppo gli hash non vanno tutti bene per gli usi crittografici, quelli che vengono usati devono avere due proprietà. La prima proprietà è la resistenza di collisione. Deve essere impossibile generare a piacere una collisione e trovare due numeri che hanno lo stesso hash. È impossibile ed infattibile trovare due numeri diversi che hanno lo stesso hash. L’altra proprietà è la resistenza pre-immagine. Le funzioni hash crittografiche non sono invertibili, perchè non esiste un algoritmo che trova un’immagine a partire dall’hash.

Sugli hash si possono creare dei protocolli molto complessi, come ad esempio quello di verificare la conoscenza di una password all’utente, ma senza divulgarla. Gli hash sono oggetti semplici dal punto di vista strutturali, ma estremamente complessi dal punto di vista di utilizzo. L’autenticazione si ha solo quando l’hash è in un canale sicuro di comunicazione dell’informazione. L’utilizzo dell’ hash è molto frequente. L’hash di un numero è un altro numero generalmente piccolo ma soprattutto finito (di massimo dieci cifre). Dall’hash non si riesce a tornare indietro alla fonte originale. Esistono anche delle funzioni Hash non crittografiche. 3 ottobre 2022 [POLIZIA SCIENTIFICA—> ispettore Davide Gabrini] La comunicazione. Gli elementi di una comunicazione :

- Emittente (qualcuno che vuole trasmettere il messaggio)

- Ricevente (destinatario che riceve il messaggio)

- Canale (attraverso cui le persone comunicano)

- Protocollo (le parti devono concordare la forma di codifica del messaggio)

- Messaggio

Questo vale anche per i computer. Si fa ricorso all’uso di standard comuni (indispensabili per il successo della comunicazione). I protocolli sono definiti da organizzazioni come IETF ed IEEE o dall’industria. Il messaggio trasmesso tra due computer attraversa diversi livelli (layer) in cui specifici protocolli si occupano di specifiche esigenze necessarie alla comunicazione. La maggior parte delle comunicazioni informatiche che utilizziamo quotidianamente avvengono tramite protocollo TCP incapsulato nel protocollo IP incapsulato nel protocollo Ethernet. Questi layer hanno un nome. L’ISO (organizzazione internazionale per la normazione) ha definito il modello OSI (open systems interconnection). Modello teorico suddiviso in sette strati, ognuno dei quali ha uno scopo ed è indipendente dargli altri. Si può modificare un layer senza modificare tutto lo stack (l’ordine). Un protocollo di alto livello non ha bisogno di conoscere cosa avviene nei livelli sottostanti. Ogni layer incapsula il contenuto del layer precedente e sarà incapsulato dal successivo.

  1. Physical —> è formato dai componenti elettronici che trasmettono sul canale fisico il segnale opportuno che codifica i dati.
  2. Link —> trasmette i pacchetti attraverso una singola rete locale, da computer a computer o da computer a router
  3. Network —> trasferisce i pacchetti contenenti i dati dall’emittente al destinatario, instradandosi attraverso le reti interconnesse
  4. Transport —> fornisce servizi per assicurare la consegna dei dati
  5. Session —> serve ad individuare quale tra i programmi in esecuzione è incaricato di trattare i dati della comunicazione.
  6. Presentation —> si occupa di formattazione, codifica e decodifica dei dati.
  7. Application —> si occupa dei dati applicativi da trasmettere ed è il più vicino all’utente. Nella pratica, non sempre sono necessari tutti e 7 i layer previsti dal modello teorico di riferimento. Ogni layer dello stack aggiunge ai dati ricevuti dal layer precedente delle proprie intestazioni, che contengono le informazioni necessarie per svolgere la propria funzione.
  1. Session layer istanzia e termina le connessioni dati tra applicazioni. TCP implementa le funzioni del livello di sessione. Assegna un numero sequenziale alle connessioni e mantiene memoria del loro stato. Le funzioni del livello si sessione possono anche essere svolte a livello applicativo. Le applicazioni web utilizzano i cookies HTTP per mantenere le sessioni.
  2. Presentation layer stabilisce le modalità per codificare i dati da trasmettere. Assicura indipendenza del formato dei dati da trasmettere. Definisce l’uso di formati standard di codifica o dei servizi di cifratura. Come nel caso precedente, molte funzioni di presentazione possono essere integrate nel livello applicativo.
  3. Application layer si occupa di interpretare i dati in un formato che sia utile alle applicazioni. È il livello più vicino all’utente umano, e quindi più evidente all’esperienza comune. I protocolli di livello 7 più comuni sono HTTP, SMTP, IMAP, POP, FTP, SSH e molti altri. Le reti locali. Le reti locali sono basati sugli standard Ethernet: una famiglia di tecnologie che definisce le specifiche tecniche a livello fisico (connettori, cavi, tipo di trasmissione) e a livello di collegamento. Lo standard è nato nel 1980 e si è rivelato molto flessibile e scalabile. Dai cavi coassiali per il doppino intrecciato fino alla fibra ottica (da 2,9 Mbit\s a 400 Gbit\s). Anche Ethernet usa una comunicazione a pacchetti:
  • Il flusso dei dati che arriva dai layer sovrastanti viene suddiviso in pezzi più brevi chiamati frame.
  • Ogni frame contiene gli indirizzi fisici di origine e di destinazione e i dati di controllo degli errori in modo che i frame danneggiati possano essere rilevati e scartati.
  • Tutte le schede di rete hanno un indirizzo fisico noto come MAC (media access control address). Per collegare due dispositivi basta un cavo, ma le reti sono fatte di tanti dispositivi. Devono elementi di interconnessione:

- Hub —> replicano i segnali elettrici ricevuti su una porta verso tutte le altre. Inefficiente

(collisioni) ed insicuro (broadcast), ma economico. Oggi obsoleti ed abbandonati.

- Switch —> dispositivi più intelligenti, che operano sui frame e non sui segnali elettrici. I frame

vengono instradati soltanto sulla posta a cuci è collegato il dispositivo destinatario. Con questo sistema si possono creare dei segmenti di LAN indipendenti in cui le collisioni e i ritardi restano limitati. Anche nelle reti locali si usano classi di IP riservate, che non esistono su internet. Gli IP sono amministrati localmente. Possono essere statici o assegnati dinamicamente con DHCP. Il protocollo usato per il trasposto IP è solitamente Ethernet. Le interfacce di rete hanno un indirizzo fisico (MAC address, media access), univoco e fissato dal costruttore in fabbricazione. Il MAC è hardware, l’IP è un’assegnazione logica. Gli switch possono instradare il traffico diretto a un peer perchè conoscono il suo indirizzo fisico e sanno a quale porta fisica è collegato. Il traffico destinato a un peer non viene replicato sulle altre porte dello switch. Un po’ come i router, in reti complesse gli switch cambiano tra loro informazioni sull’ instradamento del traffico.

ARP —> protocollo di servizio utilizzato per correlare i MAC address fisici delle NIC agli indirizzi IP assegnati. Lo switch quindi è un dispositivo di rete che si occupa di commutazione a livello datalink in una rete Ethernet omogenea. Il router è invece il dispositivo che mette in comunicazione reti eterogenee. Sniffing —> in una vecchia LAN Ethernet basata su hub, chiunque poteva intercettare il vicino, il traffico arrivava in broadcast a tutte le interfacce di rete. A livello Ethernet, la riservatezza non è considerata un problema. I compiti di questi layer riguardano il corretto instradamento dei dati e la loro integrità, ma non la loro confidenzialità. L’eventualità che il traffico sia intercettato da terzi, è da tenere in considerazione. L’unica soluzione pratica per ottenere la riservatezza è la crittografia. 4 ottobre 2022 [POLIZIA SCIENTIFICA—> ispettore Davide Gabrini] TCP\IP Pacchetto IP —> IP è un protocollo di interconnessione di reti (livello 3 del modello ISO\OSI) nato per interconnettere Reti eterogenee per tecnologia, prestazioni e gestione. È un protocollo a pacchetti senza connessione e di tipo best effort che non garantisce cioè alcuna forma di affidabilità della comunicazione in termini di controllo di errore, controllo di flusso e controllo di congestione (tutte cose demandate ai protocolli di trasporto di livello superiore). Datagramma UDP (user Datagram protocol) UDP è un protocollo di trasporto. È connectionless, stateless e non gestisce il riordinamento dei pacchetti né la trasmissione di quelli persi. In compenso è rapido ed efficiente per le applicazioni “leggere” o time-sensitive, laddove un pacchetto in ritardo ha validità nulla. L’UDP fornisce soltanto i servizi basilari del livello di trasporto, ovvero:

  • multiplazione delle connessioni, ottenuta attraverso l’uso delle porte
  • verifica degli errori (integrità dei dati) mediante checksum Segmento TCP (transmission control protocol) È un protocollo di trasporto orientato alla connessione. Garantisce che i segmenti giungano a destinazione e siano integri, unici e ordinati attraverso vari meccanismi di acknowledgment e di ritrasmissione su timeout. Come UDP, usa le porte per la multiplazione delle connessioni. Si trovano entrambi sullo steso layer. Il 3-way handshake è un processo che serve ad impedire (tra le altre cose) a impedire la falsificazione (spoofing) della comunicazione. Le parti tra loro condividono un’informazione. Le porte TCP e UDP sono lo strumento utilizzato per realizzare la multiplazione delle connessioni a livello di trasporto, ovvero per permettere più connessioni contemporanee facendo in modo che i dati contenuti nei pacchetti in arrivo vengano indirizzati al processo che li sta aspettando. In pratica si tratta di un’etichetta numerica che identifica e discrimina il traffico dati di una connessione da quello di un’altra.
  • accessi non autorizzati a computer e file
  • attività di malware come virus, Trojan e worm. Un IDS è come un antifurto. Non blocca i pacchetti, ma lancia l’allarme. L’ IDS normalmente è composto da quattro componenti:
  • uno o più sensori utilizzati per ricevere le informazioni dalla rete o dai computer
  • una console utilizzata per monitorare lo stato della rete e dei computer
  • un motore che analizza i dati prelevati dai sensori e provvede ad individuare eventuali falle nella sicurezza informatica.
  • un database dove sono memorizzate una serie di regole utilizzate per identificare violazioni della sicurezza. Possiamo distinguere gli IDS passivi da quelli attivi. I primi danno soltanto l’allarme. I secondi possono attuare misure di contenimento ed interrompere la conversazione che potrebbe essere illecita o pericolosa. IPS (intrusion prevention system) —> si basa su liste programmate dall’IDS che vengono utilizzate per decidere se un programma deve essere mandato in esecuzione o no. Questi componenti impediscono ai malware di diffondersi nei cari computer bloccandone l’esecuzione. In una configurazione inline, il NIDS può “droppare” il traffico pericoloso, impedendogli di raggiungere gli host interni. Viceversa, in una configurazione HIPS il rilevamento delle minacce è delegato ad ogni singolo host. VPN (virtual private network). È una rete di telecomunicazioni privata, che connette peer remoti come fossero in rete locale, utilizzando come tecnologia di trasporto un protocollo di trasmissione al pubblico e condiviso, come internet. Le VPN possono garantire diversi tipi di protezione dei dati, tra cui confidenzialità, integrità, autenticazione e protezione dai replay attack. Scopo delle reti VPN è quello di offrire alle aziende, a costo minore, le stesse possibilità di una linea fisica privata, sfruttando invece reti condivise pubbliche. Una VPN estende una rete locale privata a livello geografico, ottenendo dal punto di vista logico una rete LAN equivalente ad una infrastruttura di rete dedicata. Il traffico di rete locale destinato a client sull’altro lato del tunnel viene cifrato e incapsulato in pacchetti IP trasferibili via rete pubblica all’altro capo senza rischi per la confidenzialità e l’integrità dei dati. Dall’altra parte, un dispositivo analogo apre i pacchetti e decifra e li inoltra alla rete interna. È indispensabile un metodo di autenticazione forte per i client. INTERNET I dispositivi in internet sono identificati da un indirizzo IP (Internet Protocol). Chi assegna gli indirizzi IP ai device su internet sono gli utenti, i provider e l’organizzazione ICANN (Internet Corporation for Assegned names and numbers). Nomi di dominio —> le macchine lavorano meglio con i numeri, ma gli umani no. Esiste quindi la possibilità di registrare dei nomi di dominio e di associarli ad un IP. Top level domain —> possono essere internazionali (.com .net .org ..) gestiti da ICANN o geografici (.it .de .fr .us ..) gestiti da authority.

Domini di secondo livello —> google.com, libero.it … Il maintainer è un fornitore di servizi che ha un contratto con il registro in base al quale può gestire i domini in proprio o per conto terzi. Ogni IP e ogni dominio hanno quindi un assegnatario. Il dominio di secondo livello è google, quello di primo è .com. DNS (domain name system) —> elenco telefonico della rete. Un dominio può avere più IP associati, un IP può essere associato a più domini. Far comunicare le reti: i router. Tutta l’infrastruttura di internet è retta da router Un router come detto è un dispositivo di rete che si occupa di instradare pacchetti tra reti diverse ed eterogenee. Un router lavora al livello 3 del modello OSI ed è quindi in grado di interconnettere reti con livello 2 eterogeneo. L’ instradamento può avvenire:

  • verso sottoreti direttamente connesse, su interfacce fisiche distinte.
  • verso altre sottoreti non limitrofe, raggiungibili instradando il traffico attraverso altri nodi della rete. L’instradamento viene deciso grazie alle informazioni contenute in apposite tabelle di instradamento. AS —> Un sistema autonomo di rete è un gruppo di router e reti sotto il controllo di una singola attività amministrativa. All’interno di un AS i singoli router comunicano tra loro, per scambiarsi informazioni relative alla creazione delle tabelle di routing, attraverso il protocollo IGP (interior gateway protocol). L’interscambio di informazioni tra router appartenenti a diversi AS avviene invece attraverso protocollo BGP (border gateway protocol). Ogni AS che utilizza la rete pubblica deve essere registrato presso il rispettivo RIR. ACL (access control list) —> sono una lista di istruzioni applicate alle interfacce del router, che indicano le regole su quali pacchetti accettare e quali scartare. Le ACL sono applicate per molteplici ragioni:
  • limitare il traffico sulla rete e di conseguenza aumentare le performance
  • controllare il flusso di pacchetti sulla rete
  • assicurare un livello di sicurezza
  • filtrare il tipo di traffico Delle buone ACL alleggeriscono quindi il carico di lavoro dei firewall. Cifratura delle comunicazioni. Abbiamo detto che fino al livello di trasporto, la confidenzialità non è un problema, ma in quanto compito dei layer superiori. TLS è un protocollo di presentazione utile per proteggere il trasferimento dei messaggi. I protocolli in chiaro vengono cifrati mediante incapsulamento in un ulteriore layer, che si colloca tra il livello applicativo e quello di trasporto del modello TCP\IP. Transport layer security è un protocollo crittografico di presentazione che permette una comunicazione sicura dalla sorgente al destinatario su reti TCP\IP fornendo autenticazione, integrità dei dati e confidenzialità operando al di sopra del livello di trasporto.

Ad esempio nella firma digitale, buona parte della sicurezza risiede nella custodia della chiave segreta. Per salvaguardarla si può memorizzarla su un dispositivo hardware che ne consente l’uso, ma non l’estrazione. L’utente anche per buona fede o per scarsa competenza tecnica può essere ingannato. Le CA o la firma digitale sono affidabili, ma non infallibili. Certificati, PEC, firma digitale e tutti gli altri strumenti che impieghiamo sono utili e conferiscono anche valore legale alle comunicazioni, ma non necessariamente veicolano la verità. [[email protected]] 10 ottobre 2022 Crittografia a chiave pubblica\asimmetrica. Cassaforte magica, dotata di due chiavi differenti (chiave privata e chiave pubblica). La caratteristica di questa cassaforte è che le chiavi possono essere scambiate, non hanno un ruoto definito. Se apro con una, chiudo con l’altra e viceversa. La chiave pubblica tutti la conoscono. La chiave privata la tengo stretta per me. Una delle due chiavi è quindi segreta in senso stretto, è il titolare della chiave che la conosce. L’altra invece tutti la conoscono. Se io cifro un documento con la mia chiave privata, tutti possono aprirlo con la chiave pubblica. Lo scopo non è quello della confidenzialità, ma quello di identificare la provenienza di un messaggio. Un messaggio chiuso con una chiave pubblica, solo io posso aprirlo utilizzando la mia chiave privata. La crittografia asimmetrica serve a garantire l’identità di una o entrambe le parti della comunicazione. La firma digitale basata sulla crittografia asimmetrica è un modo di legare un documento alla persona fisica. Il messaggio viene legato all’entità che firma, perchè sono tratti biometrici. La firma non dipende dal messaggio, viene collegata al messaggio ma dipende dalla persona che firma. Il documento in sé è facilmente modificabile. Dopo una cifratura con la chiave personale, non è più modificabile perché nessuno può fare l’operazione. Noi attribuiamo la firma ad un determinato soggetto, è necessario ottenere la copia di chiavi (sia pubblica che privata) da un ente autorizzato chiamato autorità di certificazione. La crittografia asimmetrica è molto comune (ad esempio anche un bancomat usa questa). Lo scopo principale che noi chiediamo alla crittografia asimmetrica è quello dell’ autenticazione. Autenticarmi significa dimostrare la propria identità. Chi siamo. L’operazione di identificazione non si riferisce ad un documento, ma ad un soggetto che si presenta davanti ad un servizio informatico. Ci sono alcune varianti sul tema dell’autenticazione, ma sostanzialmente si chiede di dimostrare di essere lo stesso soggetto che ha stipulato un contratto. L’identificazione o autenticazione di una identità è una tecnica con cui un lato della comunicazione si assicura dell’identità dell’altro lato. Un altro scopo è assicurarsi che l’altro lato sia attivo in quel particolare momento in cui avviene l’autenticazione (liveness test). Per questo sono necessari meccanismi più complessi dell’autenticazione. L’autenticazione è fatta di due passaggi, il primo il possesso della chiave privata, il secondo è quello di dimostrare di sapere la chiave. Un’altra applicazione legata all’utilizzo della chiave asimmetrica è quello legato all’origine delle informazioni o al l’autenticazione dei messaggi.

Purtroppo l’autenticazione dell’origine dei dati non è molto diffuso. L’autenticazione della provenienza dei dati non è praticamente quasi mai garantita con la posta elettronica per esempio. La porta elettronica è un fattore singolo di autenticazione. La posta elettronica è un identity proxy, in alcuni casi. Esiste la possibilità che qualcuno si finga qualcun altro oppure che qualcuno rubando le credenziali riesca ad accedere alla nostra posta elettronica. Una chiave è tanto meno sicura quanto più frequentemente viene usata. La chiave effimera è una chiave che solo io e il ricevente conosciamo, dura solo per la conversazione. Per evitare ambiguità si parla di chiavi private in associazione a chiavi pubbliche. Si parla di clave segreta in associazione a chiavi simmetriche. Attacco man in the middle. Qualcuno che non ha accesso fisico alle nostre risorse, ma che riesce ad interporsi nella nostra comunicazione. Attacco di interposizione. Attacco relativamente semplice per la sua messa in atto. 11 ottobre 2022 [POLIZIA SCIENTIFICA—> ispettore Davide Gabrini] IDENTITÀ ED IDENTIFICAZIONE Si possono distinguere diverse classi di servizi per la sicurezza:

- confidenzialità —> mantenimento della riservatezza tra entità autorizzate

- Integrità —> proprietà di un dato o di un sistema di non essere modificato da interventi non

autorizzati e di mantenersi congruente nel tempo e durante una comunicazione

- Disponibilità —> garanzia che un sistema sia operativo e funzionante in ogni momento, o che

un dato sia raggiungibile

- Identificazione —> riconoscimento di un’entità

- Autenticazione —> verifica dell’identità

- Autorizzazione —> assegnazione di privilegi all’entità

- Controllo degli accessi —> verifica degli accessi in base alle autorizzazioni

- Autenticità —> proprietà di essere originale e verificabile

- Responsabilità —> possibilità di dimostrare l’origine o la destinazione dei dati (in modo che il

mittente non possa negare di averli inviati ed il ricevente non possa negare di averli ricevuti). Identità. L’identità è qualsiasi cosa renda un entità definibile e riconoscibile, perchè possiede un insieme di qualità o di caratteristiche che la distingue da entità. In altri termini identità è ciò che rende due cose la stessa cosa oppure ciò che le rende diverse. Anche in informatica, assegnare un codice identificativo univoco ad ogni utente è il primo passo. È una procedura tecnica diretta a conoscere ed accertare l’individualità della persona o l’esatto natura della cosa sottoposta ad esame e a differenziarla da persone o da cose che abbiano con quella caratteri comuni. Autenticazione. Passaggio successivo, attraverso cui si verifica se un utente in possesso di un ID è veramente chi dichiara di essere.

- Attenzione nell’uso di dispositivi condivisi;

- Attenzione alle procedure di recupero;

- Eseguire il logout;

- Avere un password manager.

Password manager. Sono programmi ed app che archiviano in un database crittografico, spesso indicato come vault, le credenziali di accesso ai servizi. I migliori password manager sono multipiattaforma, cioè disponibili per window, Linux, iOS ecc Questo permette ad esempio di sincronizzare attraverso il cloud di database cifrato, accessibile poi da qualsiasi dispositivo abilitato. Spesso è lo stesso password manager a offrire accesso a storage in cloud secondo il modello zero-knowledge encryption. Il database è cifrato con chiavetta derivata da un master password, che diventa perciò l’unica password che occorre ricordare. Servizi aggiuntivi per la gestione delle password: generatori casuali, scadenzario, backup, metadati… Creano un single point of failure. Certificati. Un certificato digitale è un documento elettronico che attesta l’associazione univoca tra una chiave pubblica e l’identità di un’entità che la utilizza poter cifratura asimmetrica e\o autenticazione tramite firma digitale. Il certificato digitale contiene informazioni sulla chiave, sull’identità del soggetto e la firma digitale di un’entità terza che ha verificato i contenuti del certificato (emittente). Se la firma è valida ed il software che esamina il certificato si fida dell’emittente, allora può utilizzare tale chiave per comunicare in modo sicuro con il soggetto del certificato. L’ente terzo, fidato e riconosciuto, fidato e riconosciuto come autorità di certificazione, è a sua volta autenticato per evitarne la falsificazione sempre attraverso la firma digitale. Certification authority.

  • È un ente di terza parte, pubblico o privato, abilitato a rilasciare un certificato digitale tramite procedura che segue standard internazionali, conformemente alla normativa europea e nazionale in materia.
  • Si utilizza la crittografia a doppia chiave o asimmetrica in cui una delle due chiavi viene resa pubblica all’interno del certificato, mentre la seconda, univocamente rimane segreta ed associata al titolare.
  • Una coppia di chiavi può essere attribuita ad un solo titolare. L’autorità dispone di un certificato con il quale sono firmati tutti i certificati emessi dagli utenti e questo deve avvenire in un contesto di massima sicurezza.
  • Un’infrastruttura a chiave pubblica è strutturata gerarchicamente da più certification authority al cui vertice si trova una certification authority root che certifica le sub-certification authority.
  • Se non vi serve un certificato avvallato da una certification authority riconosciuta, potete installarvi la vostra certification authority aziendale self-signed. Token.

- Fisici —> possono essere dispositivi elettronici portatili di piccole dimensioni, eventualmente

alimentati a batteria, o dotati di uno schermo e talvolta di una tastiera numerica. Alcuni token possono essere collegati ad un computer tramite una porta usb per scambiare dati.

- Virtuali —> anziché in un oggetto fisico esterno, le informazioni necessarie risiedono in un

dispositivo general purpose dell’utente, eventualmente gestiti da un’app. (Cookies, sms..)

- Hardware —> generatore di codici numerici pseudocasuali, che variano a intervalli regolari

secondo un algoritmo che, tra i vari fattori, tiene conto del trascorrere del tempo grazie ad un orologio interno. Lo stesso algoritmo è anche impiegato su un server di autenticazione, che è stato inizialmente sincronizzato con il token e che, quindi, genera la stessa sequenza di numeri pseudocasuali del token negli stessi momenti, pur non essendoci alcuna comunicazione tra i due oggetti. Tale numero, impredicibile e transitorio, può essere utilizzato in combinazione ad un altro sistema di autenticazione come secondo fattore. Smart card. Dispositivo hardware che possiede potenzialità di elaborazione e memorizzazione dati che la rendono un piccolo computer, altamente affidabile e pressoché inattaccabile, in grado di elaborare e memorizzare informazioni salvaguardandone la riservatezza. Nella memoria del microcircuito integrato è installato un sistema operativo che implementa la logica operativa della Smart card. La programmabilità rende il dispositivo estremamente versatile. La Smart card a micropresse forniscono comandi di gestione dell’accesso alla memoria e comandi di gestione del file system interno. Grazie alla capacità di memorizzare informazioni in maniera estremamente sicura ed inviolabile e alla possibilità di elaborare dati al suo interno, la Smart card a microprocessore è idonea per l’identificazione e per l’elaborazione a supporto della crittografia. Yubikey. Dispositivo di autenticazione hardware prodotto da yubico e divenuto piuttosto popolare. È compatibile con sistemi che implementano vari algoritmi per one time password e crittografia a chiave pubblica, inclusi i protocolli universal 2nd factor e FIDO2 alliance. Consente agli utenti di autenticarmi in modo sicuro nei loro account mediante la generazione di OTP oppure usando una coppia di chiavi. FIDO alliance Organizzazione senza fini di lucro che mira a ridurre il numero complessivo di password a utilizzate in tutto il mondo sviluppando standard di autenticazioni aperti e sicuri che siano facili da usare e che possano essere d facilmente implementati e gestiti dai fornitori di servizi. FIDO è una tecnologia che si basa sulla crittografia a chiave pubblica. Quando un utente si registra con un servizio online, il dispositivo client dell’utente crea una nuova coppia di chiavi. La chiave privata viene quindi memorizzata e quella pubblica viene registrata con il servizio online. Protocolli fido alliance —> UAF , U2F Oauth. Protocollo progettato specificamente per HTTP. Consente l’emissione di un token di accesso da parte di un server autorizzativo ad un client di terza parti, previa approvazione dell’utente proprietario della risorsa. Questo meccanismo detto di “access delegation” è utilizzato da grandi provider per consentire all’utente di condividere informazioni circa il proprio account con altre applicazioni o siti web. È nato come presupposto di garantire l’accesso delegato ad un client specifico per determinate risorse sul server e con un tempo limitato, con possibilità di revoca.

I sistemi biometrici non sono sempre cosi sicuri come possono sembrare a prima vista. Le teorie e i principi su cui si basano sono solidi, ma le implementazioni spesso no (carenze nell’hardware, spesso ridotto al minimo per economicità ed errori e debolezze nel software). Dattiloscopia. Disciplina che studia le impronte papillari per l’identificazione personale. In particolare le impronte digitali (lasciate dalla falange distale di ogni dito), le impronte palmari (lasciate dal palmo di ogni mano) e le impronte plantari (lasciate dalla pianta di ogni piede). Le creste papillari sono quei rilievi cutanei. Le impronte si formano nel feto nella 11ma settimana di gestazione e rimangono immutate fin dopo la morte. Nemmeno una cicatrice cambia la forma dell’impronta. I lettori possono essere di tipo ottico, capacitivo o ad ultrasuoni. Il sensore di un lettore ottico è un charge coupled device. Il lettore capacitivo è sensibile alla coerente elettrica anziché alla luce. I lettori ad ultrasuoni sono composti da un emettitore e da un ricevitore. Un impulso di ultrasuoni viene trasmesso contro il dito appoggiato allo scanner. Una parte dell’ impulso viene assorbita e una parte è riflessa verso il ricevitore, a seconda della presenza di creste, solche e pori. Face recognition. Il riconoscimento del volti è una funzione standard di molte librerie Per il processo delle immagini. Tutta la magia è nel processo di encoding (estrazione di dati statistici da un immagine). L’encoding deve tenere conto della variazione nella posa e nell’espressione, la variazione nell’illuminazione, differenza di età, altre accidentalità (barda, occhiali e cicatrici). Biometrica oculare. Basati sul riconoscimento dell’iride, utilizzano tecniche matematiche di pattern recognition sulle immagine di una o entrambe le retine. I sensori per il riconoscimento dell’iride usano una videocamera e una sorgente di luce prossima all’infrarosso per acquisire immagini delle strutture esternamente visibili all’iride. Si fondano sul principio che ogni occhio ha il suo sistema di vasi sanguigni diverso da ogni altro occhio. Voice recognition. Si basano sul riconoscimento del pattern unico prodotto dalle corde vocali durante l’articolazione dei suoni. Bisogna ricordare la distinzione tra riconoscimento vocale e identificazione vocale. È unica ed inimitabile per ciascun individuo, perchè è prodotta da tante variabili. Rimane un metodo poco utilizzato rispetto agli altri sistemi biometrici, perchè meno immediato e più soggetto a disturbo.

17 ottobre 2022 [POLIZIA SCIENTIFICA—> ispettore Davide Gabrini] DATABASE E CLOUD. Database. Un database è un insieme strutturato di dati, memorizzato per essere utilizzato da una o più applicazioni. Oltre ai dati un database definisce le relazioni tra i dati o gruppi di dati. Il database viene controllato da un sistema DBSM (database management system). Si fa riferimento ai dati, al sistema DBSM ed alle applicazioni associate come sistema di database, spesso abbreviato solo in database. I dati all’interno dei più comuni database vengono generalmente presentati in tabelle , composte quindi da righe e colonne. Tali dati possono cosi essere facilmente visualizzati e gestiti. Perchè servono? Per ragioni di organizzazione efficienza e controllo. I database server sono complessi sistemi software concepiti oltre che per memorizzare i dati, anche per fornire un accesso rapido ed efficace a una pluralità di utenti contemporaneamente e garantire protezione sia dai guasti sia dagli accessi indebiti (sicurezza o protezione della base dati). L’organizzazione dei dati su semplici file sarebbe inefficiente:

- Spreco risorse

- Lentezza nell’accesso

- Difficoltà di modifica della struttura

- Gestione dei privilegi di accesso insufficiente

Database relazionali —> modello più utilizzato Informazioni rappresentate da valori inseriti in più tabelle. Anche il risultato di ogni elaborazione è rappresentato in tabelle. Ogni riga rappresenta un oggetto, ogni campo una sua proprietà. Per stabilire le relazioni tra tabelle, si utilizzano campi chiave:

- chiave primaria: univoca per ogni record della tabella

- chiave esterna: un puntatore a chiave primaria di un’altra tabella

Si possono creare relazioni 1 a 1, 1 a molti e molti a molti. La complessità logica cresce rapidamente. SQL: structured query language È un linguaggio standardizzato per database relazionali, progettato negli anni ‘70 per fornire tutte le funzioni gestionali ed operative:

- creare e modificare schemi di database (DDL)

- Inserire, modificare e gestire dati memorizzati (DML)

- Interrogare i dati memorizzati (DQL)

- Creare e gestire gli strumenti di controllo ed accesso ai dati (DCL)

I database sono utilizzati per concentrare grandi quantità di informazioni di vario genere, che spesso includono asset critici, di cui occorre garantire confidenzialità, integrità e disponibilità. Per esempio:

- Anagrafica clienti;

- Anagrafica fornitori;