Il Problema Di Relegazione


  Share  
|


Consideri un cliente e un assistente. Quando il cliente pubblica una richiesta all'assistente, il cliente trasmette all'assistente alcuni dati. L'assistente allora usa i dati per effettuare una certa funzione e non restituisce un risultato (o risultato) al cliente. Il controllo di accesso interessa la funzione dell'assistente in due sensi.

  1. L'assistente deve accertarsi che le risorse che accede a a nome del cliente includano soltanto quelle risorse che il cliente è autorizzato ad accedere a.

  2. L'assistente deve accertarsi che non riveli i dati del cliente a qualunque altra entità non autorizzata per vedere i dati del cliente.

Il primo requisito rappresenta l'obiettivo del fornitore di servizio. Quell'obiettivo è di impedire al cliente di trasmettere i messaggi all'assistente che lo causano ad accesso, alterano, trasmettono, o consumano le risorse che il cliente non è autorizzato ad accedere a, alterarsi, trasmettere, o consumare. Il secondo requisito rappresenta l'obiettivo dell'utente di servizio. Quell'obiettivo è di impedire l'assistente trasmettere le informazioni confidenziali al fornitore di servizio. In entrambi i casi, l'assistente deve essere limitato ad accedere soltanto ad un insieme specifico delle risorse.

ESEMPIO: Clienti di equilibrii dell'assistente per gli abbonati. Gli abbonati usano un cliente per trasmettere le entrate del registro, l'equilibrio corrente della banca e quei ritiri e depositi che hanno eliminato la banca all'assistente. L'assistente restituisce la lista dei controlli e dei depositi eccezionali e tutta la discrepanza fra l'equilibrio del registro e l'equilibrio della banca. Gli abbonati pagano una tassa ogni uso.

Il fornitore di servizio richiede che l'annotazione dell'assistente che ha usato ogni volta il servizio esso è usata correttamente. Altrimenti, il fornitore di servizio non può fatturare per l'uso del servizio. La minaccia è che qualcuno può usare il servizio senza essere rilevata (e quindi senza essere caricato) o che l'utente può impersonate un altro abbonato (con conseguente abbonato errato che è caricato). Il fornitore di servizio inoltre non desidera l'assistente trasmettere le annotazioni di fatturazione o qualunque altre informazioni non autorizzate al cliente. L'assistente dovrebbe trasmettere soltanto le informazioni che ha derivato dai dati che il cliente ha trasmesso. Così l'assistente deve essere limitato al funzionamento soltanto sui dati che è trasmesso.

L'abbonato prevede determinati servizi di sicurezza dall'assistente. L'assistente deve annotare correttamente il invocation dell'utente in moda da non caricare in modo errato l'utente. (questo abbina il bisogno del fornitore di servizio.) L'assistente non deve registrare o trasmettere i dati che l'abbonato trasmette esso perché i dati dell'abbonato sono confidenziali all'abbonato e non sono relativi al fornitore di servizio. Così l'assistente deve essere limitato a mantenergli i dati ed a trasmettere i risultati soltanto all'abbonato.


Lampson denomina questo il problema di relegazione.

Il problema di relegazione è il problema di impedire un assistente le informazioni di fuoriuscita che l'utente del servizio considera confidenziale.

Una caratteristica dei processi che non fuoriescono le informazioni viene dall'osservazione che un processo deve memorizzare i dati per ricupero successivo (la fuoriuscita). Un processo che non memorizza le informazioni non può fuoriuscirlo. Tuttavia, al limite, tali processi anche non possono effettuare alcuni calcoli, perché un analista potrebbe osservare il flusso di controllo (o per dichiarare del processo) e da quel flusso deduca le informazioni sugli input. Ciò conduce all'osservazione che un processo che non può essere osservato e non può comunicare con altri processi non può fuoriuscire le informazioni. Lampson denomina questo isolamento totale.

In pratica, realizzare l'isolamento totale è difficile. I processi da essere risorse solitamente limitate della parte quali CPUs, le reti e la memoria a dischi con altra, unconfined i processi. Unconfined i processi può trasmettere l'eccedenza delle informazioni quelle risorse comuni.

Una scanalatura segreta è un percorso della comunicazione che non è stata destinata per essere usata per la comunicazione.

ESEMPIO: Il processo p deve essere limitato tali che non può comunicare con il processo q. Tuttavia, i processi p e q ripartiscono un sistema di lima. Nell'ordine per il processo p per trasmettere un messaggio al processo q, genera una lima denominata introduce un indice che entrambi i processi possono leggere. Appena prima che il processo q deve leggere le informazioni, la q cancella la lima di trasmissione. Il processo p allora trasmette una punta generando una lima chiamata 0bit o 1bit, come adatto. Quando la q rileva la una o la altra lima, registra la punta e cancella la lima. Ciò continua fino a che la p non generi una lima denominata estremità, il punto in cui la comunicazione cessa.


La relegazione è transitiva. Supponga che un processo p è limitato per impedire la perdita. Se invoca un secondo processo q, allora la q deve essere limitata similmente o la q potrebbe fuoriuscire le informazioni che la p comunica.

La regola di relegazione transitiva dichiara che se un processo limitato invoca un secondo processo, il secondo processo deve essere come limitato come il visitatore.

La relegazione è un meccanismo per fare rispettare il principio di meno privilegio. Un processo correttamente limitato non può trasmettere i dati ad un secondo processo a meno che la trasmissione sia necessaria completare la loro operazione. Il problema è che il processo limitato deve l'accesso ai dati essere trasmesso ed in modo da la relegazione deve essere sulla trasmissione, non sull'accesso di dati. Per complicare gli argomenti, il processo può dovere trasmettere alcune informazione al secondo processo. In questo caso, il meccanismo di relegazione deve distinguersi fra la trasmissione dei dati autorizzati e la trasmissione dei dati non autorizzati.

La combinazione di questi problemi illustra la difficoltà di impedire la perdita. Il dilemma è che i calcolatori moderni sono destinati per ripartire le risorse, ma dall'atto che si ripartisce dei genera le scanalature della comunicazione lungo cui le informazioni possono essere fuoriuscite.

Lipner esamina il problema da una politica e funzione di modellistica. Considera due tipi di scanalature segrete. Il primo coinvolge l'uso di registrazione trasmettere le informazioni. Se un modello descrive correttamente tutti i sensi in cui le informazioni possono essere memorizzate e leggere, allora il modello sottrae sia le scanalature legittime che segrete lungo cui le informazioni possono fluire. Il modello costringe tutti gli accessi ad immagazzinaggio. Gli unici accessi permessi sono quelli autorizzati dalla politica, in modo da i flussi delle informazioni sono legittimi. Tuttavia, se il modello non blocca tutti i tali flussi, allora flussi non autorizzati, o scanalature segrete, presenti.

Lipner allora nota che tutti i processi possono ottenere almeno un'idea generale di tempo. Ciò rende a tempo una scanalatura di comunicazione. Una latta di programma "ha indicato" il tempo controllando l'orologio del sistema o (alternativamente) contando il numero di istruzioni che ha eseguito durante il periodo di tempo di orologio della parete. Una latta di programma "scrive" il tempo eseguendo un numero dell'insieme di istruzioni ed arrestandosi, permettendo che un altro processo esegua. Questa scanalatura comune non può essere resa esclusiva a meno che un processo non ripartisca il calcolatore con un altro processo, che suggerisce l'isolamento come rimedio.

Gli attacchi di sincronizzazione del Kocher ai cryptosystems illustrano questo problema. Kocher nota che le istruzioni eseguite tramite le esecuzioni dei cryptosystems dipendono dalla regolazione delle punte nella chiave. Per esempio, la procedura sotto gli strumenti una funzione modulare veloce di elevamento a potenza. Se una punta è 1, due moltiplicazioni accadono; altrimenti, una moltiplicazione accade. La moltiplicazione supplementare occorre tempo supplementare. Kocher determina le punte dell'esponente confidenziale misurando il tempo di calcolo.

Una procedura modulare veloce di elevamento a potenza. Questa procedura computa x = MOD n del az. Le punte della z sono zk1. . . ,z0.
x: = 1; atmp: = a; per la i: = 
0 a k-1 comincia        se zi = 1 allora           x: =
(x * atmp) MOD n;        atmp: = (atmp * atmp) MOD 
n; estremità; risultato: = x;

Esploriamo il meccanismo di isolamento in primo luogo. Allora esaminiamo più dettagliatamente le scanalature segrete e discutiamo altri metodi ad analizzarli, compreso le tecniche per identificare le scanalature segrete e l'isolamento loro.

ciò è un articolo aggiunto da Bill Kuriko


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions