D14 Protezione Dati Sensibili

download D14 Protezione Dati Sensibili

of 65

Transcript of D14 Protezione Dati Sensibili

  • 7/29/2019 D14 Protezione Dati Sensibili

    1/65

    Dati Sensibili

  • 7/29/2019 D14 Protezione Dati Sensibili

    2/65

    Dati Sensibili

    Molti DB contengono quelli che si definisconoDati Sensibili

    Come definizione pratica diciamo che i datisensibili sono quelli che non dovrebberoessere resi pubblici

    Determinare quali dati siano sensibili dipendedal singolo DB e dalla specifica applicazione

  • 7/29/2019 D14 Protezione Dati Sensibili

    3/65

    Dati Sensibili

    Due casi estremi:

    Nessun dato sensibile (p.es. catalogo di unabiblioteca)

    Tutti i dati sensibili (p.es. database militari)

    Questi casi sono i pi semplici da gestire:

    Accesso consentito allintero DB

    Accesso negato allintero DB

  • 7/29/2019 D14 Protezione Dati Sensibili

    4/65

    Dati Sensibili

    Il caso pi interessante quello in cui alcunidati sono sensibili mentre altri non lo sono

    Inoltre possibile che dati diversi abbianolivelli di sensibilit diversi

  • 7/29/2019 D14 Protezione Dati Sensibili

    5/65

    Esempio

    Cognome Sesso Razza Aiuto Multe Droghe DormitorioAdams M C 5000 45 1 Holmes

    Bailey M B 0 0 0 Grey

    Chin F A 3000 20 0 West

    Dewitt M B 1000 35 3 Grey

    Earhart F C 2000 95 1 Holmes

    Fein F C 1000 15 0 West

    Groff M C 4000 0 3 West

    Hill F B 5000 10 2 Holmes

    Koch F C 0 0 1 West

    Liu F A 0 10 2 Grey

    Majors M C 2000 0 2 Grey

    Studente

  • 7/29/2019 D14 Protezione Dati Sensibili

    6/65

    Esempio

    Campi non sensibili: Nome, Dormitorio

    Campi sensibili: Aiuto, Multe, Droghe

    Campi parzialmente sensibili: Sesso, Razza

  • 7/29/2019 D14 Protezione Dati Sensibili

    7/65

    Dati sensibili

    Sensibili per Contenuto: Il valore dellattributo sensibile

    es. localit di postazioni missilistiche

    Sensibili per Provenienza: la fonte dei dati punecessitare di riservatezza

    es. messaggi di un informatore la cui identit segretaverrebbe compromessa se i dati venissero divulgati

    Dichiarati sensibili: lamministratore ha dichiarato

    che i dati sono sensibili

    es. donatore anonimo

  • 7/29/2019 D14 Protezione Dati Sensibili

    8/65

    Dati sensibili

    Parti sensibili: attributo o record. Un intero record o solo un certo attributo possono

    risultare sensibili

    es. campo stipendio, record che descrive una missione

    segreta

    Sensibili in relazione a informazioni divulgate inprecedenza: Alcuni dati diventano sensibili in funzione di altri dati

    es. la latitudine di una postazione segreta diventasensibile se si conosce anche la longitudine

  • 7/29/2019 D14 Protezione Dati Sensibili

    9/65

    Come proteggere i dati sensibili?

    Decidere come divulgare i dati sensibili pu nonessere semplice

    Si possono ottenere informazioni anche se i datisensibili non vengono mostrati

    A volte anche alcune caratteristiche dei dati

    devono essere considerati sensibili

  • 7/29/2019 D14 Protezione Dati Sensibili

    10/65

    Esempio

    La seguente query nonmostra il valoredellattributo droghe

    ma tutti coloro presentinel risultato fanno uso didroghe

    Pu essere necessarioproteggere un valore

    sensibile anche se questonon viene mostrato inmodo esplicito

    Cognome Sesso Razza Aiuto Multe Droghe Dormitorio

    SELECT Cognome, Dormitorio

    FROM StudenteWHERE Droghe>0

    Studente

  • 7/29/2019 D14 Protezione Dati Sensibili

    11/65

    Tipi di divulgazione

    Dati esatti:

    Divulgazione del valore esatto di un dato sensibile

    La divulgazione potrebbe avvenire per unarichiesta esplicita

    Oppure i dati sensibili potrebbero essere restituiti

    insieme ad altri dati non sensibili Oppure il sistema potrebbe restituire i dati

    sensibili per errore

  • 7/29/2019 D14 Protezione Dati Sensibili

    12/65

    Tipi di divulgazione

    Limiti:

    Indicazione che un valore sensibile compreso tradue valori L e H

    In questo caso con una ricerca dicotomica sipotrebbe ottenere un valore molto prossimo a

    quello esatto In alcuni casi semplicemente sapere che un valore

    al di sopra (o al di sotto) di un certo limiterappresenta una violazione della sicurezza

  • 7/29/2019 D14 Protezione Dati Sensibili

    13/65

    Tipi di divulgazione

    Risultato negativo:

    A volte si pu ottenere un informazione sapendoche il valore cercato non pari ad un certo valore

    Ad es. se sappiamo che il numero di condannepenali di una certa persona non zero sappiamo

    che la persona in questione stata condannata(non sappiamo quante volte, ma )

  • 7/29/2019 D14 Protezione Dati Sensibili

    14/65

    Tipi di divulgazione

    Esistenza:

    A volte la sola esistenza di un attributo sensibile

    Ad es. un responsabile del personale potrebbedesiderare che non si sappia che la durata delleinterurbane dei dipendenti viene monitorata

    Quindi la scoperta del campo interurbane in unatabella con i dati del personale rivelerebbe datisensibili

  • 7/29/2019 D14 Protezione Dati Sensibili

    15/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    16/65

    Protezione dei dati sensibili

    Per aumentare la protezione dei dati sensibilisi potrebbe pensare di usare politiche semprepi restrittive in maniera da proteggere meglio

    i dati

    Ad esempio si potrebbe pensare di rifiutarequalunque query che faccia riferimento ad un

    campo sensibile Questo per limiterebbe anche le interrogazioni

    legittime

  • 7/29/2019 D14 Protezione Dati Sensibili

    17/65

    Protezione dei dati sensibili

    Abbiamo due esigenze contrastanti:

    Nascondere i dati per evitare di fornire datisensibili (Sicurezza)

    Divulgare i dati non sensibili quanto pi possibileper consentire lutilizzo corretto dei dati da parte

    delle persone autorizzate (Precisione)

  • 7/29/2019 D14 Protezione Dati Sensibili

    18/65

    Sicurezza contro Precisione

    Nascosto-nondivulgato

    Non pu esserededotto dallequery

    Pu esserededotto dallequery

    Divulgatoliberamente

    Rivelare per massima

    precisione

    Nascondere permassima sicurezza

  • 7/29/2019 D14 Protezione Dati Sensibili

    19/65

    Inferenza

  • 7/29/2019 D14 Protezione Dati Sensibili

    20/65

    Inferenza

    Linferenza un metodo per dedurre oderivare dati sensibili da dati non sensibili

    Riconsideriamo lesempio del database sugli

    studenti e consideriamo sensibili i campi

    Aiuto, Multe e Droghe

  • 7/29/2019 D14 Protezione Dati Sensibili

    21/65

    Esempio

    Cognome Sesso Razza Aiuto Multe Droghe DormitorioAdams M C 5000 45 1 Holmes

    Bailey M B 0 0 0 Grey

    Chin F A 3000 20 0 West

    Dewitt M B 1000 35 3 Grey

    Earhart F C 2000 95 1 Holmes

    Fein F C 1000 15 0 West

    Groff M C 4000 0 3 West

    Hill F B 5000 10 2 Holmes

    Koch F C 0 0 1 West

    Liu F A 0 10 2 Grey

    Majors M C 2000 0 2 Grey

    Studente

  • 7/29/2019 D14 Protezione Dati Sensibili

    22/65

    Attacco diretto

    La seguente query rappresenta un tentativodiretto di accedere ad un dato sensibile

    Tale query potrebbe essere rifiutata dal DB perchle tuple del risultato sono quelle con uno specificovalore su un attributo sensibile

    SELECT CognomeFROM StudenteWHERE Sesso=M AND Droghe=1

  • 7/29/2019 D14 Protezione Dati Sensibili

    23/65

    Attacco diretto

    La seguente query meno ovvia:

    Apparentemente la query non seleziona solo tuplecon uno specifico valore su un campo sensibile

    In realt la seconda e la terza condizione non sonomai soddisfatte

    SELECT CognomeFROM Studente

    WHERE (Sesso=M AND Droghe=1) OR(SessoM AND SessoF) OR(Dormitorio = Ayres)

  • 7/29/2019 D14 Protezione Dati Sensibili

    24/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    25/65

    Attacco diretto

    Una regola a volte utilizzata per decidere seriportare i dati di una query quella di nelementi sul k percento:

    I risultati non vanno divulgati se un piccolonumero di elementi costituisce pi del k% delrisultato

    Nellesempio precedente una sola personacostituiva il 100% del risultato

  • 7/29/2019 D14 Protezione Dati Sensibili

    26/65

    Attacco indiretto

    Alcune organizzazioni che detengono datisensibili, divulgano soltanto dati statistici

    Dati ottenuti come somme medie e conteggi

    Lattacco indiretto cerca di dedurre un datosensibile sulla base di uno o pi dati statisticiintermedi

  • 7/29/2019 D14 Protezione Dati Sensibili

    27/65

    Attacco indiretto: Somma

    La seguente query sembra innocua poichrestituisce soltanto valori aggregati:

    Vediamo per il risultato

    SELECT Sesso, Dormitorio, SUM(Aiuto)FROM StudenteGROUP BY Sesso, Dormitorio

  • 7/29/2019 D14 Protezione Dati Sensibili

    28/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    29/65

    Attacco indiretto: Conteggio

    Il conteggio pu essere combinato con lasomma per produrre risultati ancora pirivelatori:

    SELECT Sesso, Dormitorio, COUNT(*)FROM StudenteGROUP BY Sesso, Dormitorio

  • 7/29/2019 D14 Protezione Dati Sensibili

    30/65

    Attacco indiretto: Conteggio

    Questo risultato combinato con il precedente ci

    dice che i due uomini nei dormitori Holmes e Westricevono un aiuto finanziario rispettivamente di5000 e 4000

    Sesso Dormitorio COUNT(*)

    M Holmes 1

    M Grey 3

    M West 1

    F Holmes 2

    F Grey 1

    F West 3

  • 7/29/2019 D14 Protezione Dati Sensibili

    31/65

    Attacco indiretto: Media

    La media pu permettere di ottenere informazioniesatte se utilizzata in combinazione con ilconteggio

    Se riesco ad ottenere la media su un insiemeformato da un solo elemento, riesco a conoscere ilvalore esatto per quellelemento

    Usata opportunamente permette anche di

    aggirare eventuali controlli sulla numerositdellinsieme su cui viene calcolata

  • 7/29/2019 D14 Protezione Dati Sensibili

    32/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    33/65

    Attacco indiretto: Media

    Supponiamo che la media non venga divulgatase il numero di elementi su cui calcolata 1

    SELECT COUNT(*)FROM StudenteWHERE Dormitorio=Holmes

    COUNT(*)

    3

    SELECTCOUNT(*)FROM StudenteWHERE Dormitorio=Holmes

    ANDSesso=F

    COUNT(*)

    2

  • 7/29/2019 D14 Protezione Dati Sensibili

    34/65

    Attacco indiretto: Media

    COUNT(*)

    3

    COUNT(*)

    2

    AVG(Aiuto)

    4000

    AVG(Aiuto)

    3500

    Aiuto finanziario medio Aiuto finanziario medio alle donne

    Numero di persone Numero di donne

    40003

    321

    aaa3500

    2

    21

    aa

    50003a

    Aiuto finanziario dellunico uomo nel dormitorio Holmes

  • 7/29/2019 D14 Protezione Dati Sensibili

    35/65

    Attacchi di Tracker

    Abbiamo visto che uno delle tecniche diprotezione dallinferenza consiste nel nondivulgare i dati se un piccolo numero di elementifornisce molta informazione

    possibile aggirare questa limitazione effettuandopi query lecite

    La combinazione dei risultati delle query ci dlinformazione sensibile

  • 7/29/2019 D14 Protezione Dati Sensibili

    36/65

    Attacchi di Tracker: esempio

    Consideriamo la seguente query

    SELECTCOUNT(*)

    FROMStudenteWHERESesso=F ANDRazza=CANDDormitorio=Holmes

  • 7/29/2019 D14 Protezione Dati Sensibili

    37/65

    Attacchi di Tracker: esempio

    Cognome Sesso Razza Aiuto Multe Droghe DormitorioAdams M C 5000 45 1 Holmes

    Bailey M B 0 0 0 Grey

    Chin F A 3000 20 0 West

    Dewitt M B 1000 35 3 Grey

    Earhart F C 2000 95 1 Holmes

    Fein F C 1000 15 0 West

    Groff M C 4000 0 3 West

    Hill F B 5000 10 2 Holmes

    Koch F C 0 0 1 West

    Liu F A 0 10 2 Grey

    Majors M C 2000 0 2 Grey

  • 7/29/2019 D14 Protezione Dati Sensibili

    38/65

    Attacchi di Tracker: esempio

    Il dato non viene divulgato in quantodominato da una sola tupla

    Osserviamo per che il valore in questione puessere calcolato contando

    tutte le donne che non sono di razza C

    o che non risiedono nel dormitorio Holmes

  • 7/29/2019 D14 Protezione Dati Sensibili

    39/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    40/65

    Vulnerabilit del sistema lineare

    Lattacco di tracker un caso specifico di unavulnerabilit pi generica in cui sfruttandoalgebra, logica e un po di fortuna si riesce ad

    ottenere tramite diverse query dei valoriprotetti

  • 7/29/2019 D14 Protezione Dati Sensibili

    41/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    42/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    43/65

    Protezione dallinferenza

    Esistono alcune tecniche per combatterelinferenza:

    Analisi delle query

    Soppressione: valori sensibili non forniti

    Occultamento: la risposta vicina ma noncorrisponde esattamente al valore effettivo

  • 7/29/2019 D14 Protezione Dati Sensibili

    44/65

    Soppressione e occultamento

    Un esempio di soppressione la gi citataregola n elementi sul k percento

    Alcune considerazioni:

    Pu essere necessario sopprimere altri dati perevitare che quelli sensibili siano ottenibili perdifferenza

  • 7/29/2019 D14 Protezione Dati Sensibili

    45/65

    Esempio

    Holmes Grey West Totale

    M 1 3 1 5

    F 2 1 3 6

    Totale 3 4 4 11

    Numero di residenti per sesso e dormitorio

  • 7/29/2019 D14 Protezione Dati Sensibili

    46/65

    Esempio

    Holmes Grey West Totale

    M 1 3 1 5

    F 2 1 3 6

    Totale 3 4 4 11

    Numero di residenti per sesso e dormitorio

  • 7/29/2019 D14 Protezione Dati Sensibili

    47/65

    Esempio

    Holmes Grey West Totale

    M - 3 - 5

    F 2 - 3 6

    Totale 3 4 4 11

    Numero di residenti per sesso e dormitorio

    Attenzione: i valori soppressi possono essere dedotti per differenza

  • 7/29/2019 D14 Protezione Dati Sensibili

    48/65

    Risultati combinati

    Per evitare di divulgare dati sensibili possibile combinare pi righe o colonne

    Uso di droghe

    0 1 2 3

    M 1 1 1 2

    F 2 2 2 0

    Numero di studenti per sesso e uso di droghe

  • 7/29/2019 D14 Protezione Dati Sensibili

    49/65

    Risultati combinati

    Per evitare di divulgare dati sensibili possibile combinare pi righe o colonne

    Uso di droghe

    0 o 1 2 o 3

    M 2 3

    F 4 2

    Numero di studenti per sesso e uso di droghe

  • 7/29/2019 D14 Protezione Dati Sensibili

    50/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    51/65

    Campione casuale

    La query viene effettuata su un campionecasuale dei dati

    Il campione deve essere abbastanza ampio da

    rappresentare lintera popolazione In questo modo i dati sono rappresentativi

    dellintera popolazione ma riducono la possibilit

    di attacchi statistici

  • 7/29/2019 D14 Protezione Dati Sensibili

    52/65

    Perturbazione casuale dei dati

    A volte pu essere utile perturbare i valori delDB con un piccolo errore.

    Per ognixiche rappresenta il valore vero

    dellattributo i

    si pu generare un piccolo errore eie aggiungerloadxiper calcolare dati statistici

    Valori aggregati quali la media o la sommaprodurranno valori vicini a quelli veri ma nonesatti

  • 7/29/2019 D14 Protezione Dati Sensibili

    53/65

    Inferenza: commenti

    Le varie soluzioni che abbiamo visto tendonoa proteggere un DB dal problemadellinferenza

    Al tempo stesso per limitano anche leinformazioni fornite agli utenti che intendanofare un uso legittimo dei dati

  • 7/29/2019 D14 Protezione Dati Sensibili

    54/65

    Aggregazione

    Un particolare tipo di inferenza e quellodellaggregazione

    Per aggregazionesi intende lindividuazione di

    dati sensibili mettendo insieme dati nonsensibili

    Es: il nome di un impiegato ed il suo stipendio

    nessuno dei due dati sensibile di per s, ma lo sono semessi insieme

  • 7/29/2019 D14 Protezione Dati Sensibili

    55/65

    Aggregazione

    Evitare laggregazione difficile perch bisogna

    tenere conto delle informazioni gi in possessodellutente

    Se un utente conosce il nome di un dipendentenon devo comunicargli il salario e viceversa

    Tenere traccia delle informazioni in possesso diciascun utente pu essere proibitivo

    Inoltre utenti diversi potrebbero condividere leinformazioni in loro possesso

  • 7/29/2019 D14 Protezione Dati Sensibili

    56/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    57/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    58/65

    Esercizio

    Si tenga conto, inoltre, che viene applicata laseguente politica di protezione dei dati sensibili:

    1. il campo stipendio non pu essere divulgato

    direttamente e non pu essere utilizzato comecriterio di filtraggio;

    2. i criteri di filtraggio possono essere eta, sesso, ecitta;

    3. non possono essere utilizzati pi di due criteri difiltraggio in una singola interrogazione;

    4. consentita la divulgazione di medie e conteggi apatto che si riferiscano ad almeno tre tuple.

  • 7/29/2019 D14 Protezione Dati Sensibili

    59/65

    Tabella dipendenticf cognome nome eta citta sesso ruolo stipendio

    Rossi Mario 36 Roma M impiegato 1200

    Neri Luigi 39 Roma M ricercatore 1700

    Bianchi Mario 35 Roma M ricercatore 1400

    Gialli Federica 36 Firenze F impiegata 1200

    Verdi Anna 38 Milano F impiegata 1300

    Rossi Claudia 31 Verona F segretaria 1000

    Pieri Alessandro 37 Torino M dirigente 4000

    Belli Ilaria 33 Venezia F commercialista 2000

    Bianchini Francesca 32 Napoli F dirigente 3000 Brutti Elena 32 Perugia F impiegata 1200

  • 7/29/2019 D14 Protezione Dati Sensibili

    60/65

  • 7/29/2019 D14 Protezione Dati Sensibili

    61/65

    Svolgimento strategia base

    Una volta individuati due insiemi U e V,soddisfacenti le condizioni I, II, III e IV,ponendo:

    mU= media degli stipendi dei dipendenti in U; cU= numero dei dipendenti in U;

    mV= media degli stipendi dei dipendenti in V;

    cV= numero dei dipendenti in V;

    si ottiene chestipendioMister X= mU cU mV cV

  • 7/29/2019 D14 Protezione Dati Sensibili

    62/65

    Svolgimento individuazione di U e V

    Si considerino i seguenti insiemi:A: insieme dei dipendenti di sesso maschile (sesso

    = M);

    B: insieme dei dipendenti con pi di 30 anni (eta >30);

    C: insieme dei dipendenti romani (citta = Roma);

    si osservi che dalla (a) e dalla (b) risulta che {Mister X} = (AB) \ C=(AB) \ (B C)

    mentre dalla (c) si ha che CA

  • 7/29/2019 D14 Protezione Dati Sensibili

    63/65

    Svolgimento individuazione di U e V

    pertanto risulta che {Mister X} = (AB) \ (B C), e

    (B C) (AB)

    quindi gli insiemi U e Vsono: U =AB

    V= B C

  • 7/29/2019 D14 Protezione Dati Sensibili

    64/65

    Svolgimento query SQL

    Individuazione di mUe cU: SELECTavg(stipendi), count(stipendi) FROM

    dipendenti WHEREsesso = M AND eta > 30;

    Individuazione di mVe cV: SELECTavg(stipendi), count(stipendi) FROM

    dipendenti WHERE eta > 30 AND citta = Roma;

  • 7/29/2019 D14 Protezione Dati Sensibili

    65/65

    Bibliografia

    [PFL08] C. P. Pfleeger, S. L. Pfleeger. Sicurezzain Informatica. Pearson, Prentice Hall.

    [STA07] W. Stallings. Sicurezza delle reti.

    Pearson, Prentice Hall. [Wiki-it] http://it.wikipedia.org/wiki/

    [Wiki-en] http://en.wikipedia.org/wiki/

    [ISECOM] Institute for Security and OpenMethodologies