Uno studio dello standard di sicurezza adottato per database e data warehouse.
Le basi di dati rappresentano uno dei pilastri fondamentali dell’informatica moderna.
Esse costituiscono il cuore pulsante di numerosi sistemi informatici, permettendo la gestione, l’archiviazione e il recupero efficiente di grandi quantità di informazioni. In un mondo sempre più digitale, queste strutture sono essenziali per il funzionamento del software, che spazia dai social media alle transazioni finanziarie, dalla gestione delle risorse aziendali alla ricerca scientifica.
Sin dalla loro concezione si è pensato a modelli concettuali al fine di garantire la protezioni dei dati custoditi al loro interno, specialmente di quelli più sensibili.

Uno dei modelli che maggiormente rappresenta questa filosofia e che ha incontrato il maggior riscontro in termini di adozione, è quello di Bell-LaPadula.
In questo articolo lo analizzeremo a fondo, mettendo in risalto la sua struttura, i modelli di sicurezza che implementa al suo interno e anche i limiti.
Struttura del modello.
Sviluppato da David Elliott Bell e Len LaPadula tra il 1973 e il 1976, il modello venne concepito per garantire la riservatezza delle informazioni sensibili per gli enti militari e governativi statunitensi. Essenzialmente si tratta di un modello formale in cui le entità di un sistema informativo sono suddivise in soggetti e oggetti.
I soggetti rappresentano le entità attive e si vedono assegnati i clearence levels (livelli di autorizzazione), mentre gli oggetti sono le entità passive da proteggere e ricevono i sensitivity levels (livelli di sensibilità).
Questi livelli prendono il nome di classi di accesso (Access Classes) e si compongono a loro volta da due componenti:
- Security Level: stabilisce la gerarchia con cui le entità sono protette.
Esistono quattro livelli diversi: Top Secret, Secret, Confidential e Unclassified. - Category Set: indica il settore di appartenenza e si tratta di un insieme di categorie che dipendono in toto dall’applicazione in cui i dati vengono utilizzati.
Ciascun soggetto è in grado di accedere ai vari oggetti a seconda dei modi di accesso stabiliti dal progettista.
Ne esistono in totale quattro e sono nello specifico:
- Read: sola lettura;
- Append: permette l’aggiunta di elementi senza lettura;
- Execute: esecuzione dei dati per i programmi;
- Write: lettura-scrittura di dati;
Questi accessi si realizzano attraverso i modelli di sicurezza implementati al suo interno.
Modelli di sicurezza
Per modello di sicurezza si intendono le specifiche formali che descrivono l’implementazione di una determinata politica di sicurezza in modelli ideali.
Come tale Bell-LaPadula ne integra due tipi:
- DAC (Discretionary Access Control);
- MAC (Mandatory Access Control);
Il DAC rappresenta un meccanismo attraverso il quale gli utenti possono decidere a propria discrezione di garantire, o revocare, l’accesso a determinati oggetti.
Da qui la nomenclatura Discrezionale. In più, integra al suo interno il concetto di proprietario, cosa che permette agli utenti di ammnistrare direttamente i dati che possiedono. Costui può autorizzare altri utenti ad accedere ai suoi dati, mediante la proprietà GRANT, oltre che a definirne il tipo di accesso (lettura, scrittura, esecuzione).
Ciascun accesso è selettivo e può essere basato su:
- Nome;
- Contenuto;
- Parametri di sistema;
- Storia;
- Aggregazione di dati;
Il MAC è invece un meccanismo di sicurezza attraverso cui le decisioni di accesso sono basate su etichette.
Queste contengono al loro interno informazioni rilevanti circa la sicurezza di un oggetto e come tale la classificazione dei dati e dei soggetti è molto importante. Questo perché deve garantire che tutti i soggetti abbiano accesso solo ed esclusivamente ai dati per cui possiedono le autorizzazioni appropriate.
A differenza di quanto accade nel DAC, il MAC non permette la propagazione dei privilegi.

A questi due meccanismi di sicurezza, si aggiungono due proprietà di sicurezza:
- Proprietà semplice: stabilisce che un soggetto non può leggere oggetti al livello di sicurezza superiore a quello che possiede.
Tale proprietà è anche nota come No Read Up. - Proprietà a stella: stabilisce che un soggetto non può scrivere oggetti al livello di sicurezza inferiore a quello che possiede.
Tale proprietà è anche nota come No Write Down.
A queste se ne aggiunge una terza, che funge da alternativa alla proprietà a stella. Definita Proprietà a stella rafforzata, stabilisce che un soggetto può leggere e scrivere dati solo allo stesso livello di sicurezza. Tuttavia, questa trova una sua applicazione solo nel contesto dei DBMS multilivello, sebbene non abbia mancato di levare qualche perplessità in merito alla propria integrità.
Per garantire che tali proprietà siano rispettate, il sistema fa uso di un reference monitor, mediante cui è possibile controllare ogni richiesta di accesso e accertarne la conformità alle regole di sicurezza stabilite. Questo è di base un “guardiano” della base di dati, poiché autorizza, o nega, l’accesso dei soggetti agli oggetti in base ai loro livelli di sicurezza.
Il modello Bell-LaPadula prevede inoltre la gestione delle transazioni di stato.
Queste rappresentano i cambiamenti nello stato del sistema che avvengono nel momento in cui le informazioni vengono create, modificate, o eliminate. Ciascuna transazione passa al vaglio del reference monitor, affinché tutto il sistema rimanga costantemente in uno stato sicuro.
Le transazioni di stato consentite nel modello sono:
- Create object;
- Delete object;
- Get access;
- Release access;
- Give access;
- Rescind access;
- Change subject security level;
- Change object security level;
Limiti del modello Bell-LaPadula
Pur essendo uno dei modelli di sicurezza più influenti nel mondo dei DBMS, esso pressenta alcuni limiti e svantaggi che non dovrebbero essere ignorati.
Uno dei suoi limiti principali è senza dubbio la focalizzazione eccessiva sulla riservatezza, facendo venir meno l’integrità e la disponibilità dei dati. Ciò significa che, pur essendo efficace nel prevenire l’accesso non autorizzato a informazioni sensibili, non offre alcuna protezione contro la modifica o la cancellazione non autorizzata dei dati. Infatti, un soggetto con alto livello di sicurezza, potrebbe modificare gli oggetti presenti al livello inferiore senza alcuna verifica, o validazione. Come tale, il modello non è in grado di rilevare comportamenti malevoli da parte di utenti autorizzati.
Un altro limite risiede nella sua rigidità. In molti casi le proprietà no read up e no write down limitano la flessibilità necessaria per la gestione di situazioni dinamiche e complesse. Ciò comporta inefficienze operative, specialmente in ambiti in cui gli utenti hanno la necessità di dover condividere tra loro determinate informazioni essenziali per lo svolgimento del loro lavoro.
In più, il modello può risultare molto costoso e complesso da implementare all’interno di un sistema. Questo in virtù della classificazione di dati e utenti, unita al suo monitoraggio continuo e costante. Ciò lo rende una soluzione molto onerosa da considerare, specialmente per le organizzazioni e le aziende con risorse limitate.
Nonostante ciò, si può affermare che il modello Bell-LaPadula offre una solida base per la protezione e la riservatezza dei dati. Sebbene non possa garantire il monitoraggio diretto degli utenti e delle loro intenzioni, ma solo quello dei dati amministrati tramite esso. Se si volesse considerarne l’adozione, è bene sottolineare la necessità di affiancare delle misure di sicurezza complementari. In tal modo si potrebbe garantire la protezione effettiva dei dati amministrati, prevenendo al tempo stesso l’insorgere di comportamenti anomali degli utenti che abusano delle loro autorizzazioni.
