Il Problema Di Relegazione
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.
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.
Lampson denomina questo il problema di relegazione.
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.
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 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
|
|||||
|