sicurezza in windows nt fabrizio inguglia. tratteremo: struttura generale di windows nt 4 gestione...
TRANSCRIPT
![Page 1: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/1.jpg)
Sicurezza in Windows NT
Fabrizio Inguglia
![Page 2: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/2.jpg)
Tratteremo:
Struttura generale di Windows NT 4
Gestione delle politiche di sicurezza
![Page 3: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/3.jpg)
Com’e Strutturato NT?
NT e’ Object Oriented, in pratica:– Ogni risorsa, servizio, entità e’ un oggetto.– Vantaggi:
Livelli di protezione definiti logicamente: campi e metodi dell’oggetto sono invocati solo da chi ne ha i permessi coerentemente con la nozione di oggetto.
Accesso coerente ad ogni tipo di componente del sistema: non vi è differenza logica tra le varie risorse dai file alle stampanti.
Fornisce nomi leggibili alle risorse del sistema, vedremo
NT e’ multiutente e multithread.– Gestione di più utenti e processi distinti tramite un’ architettura
distribuita.
![Page 4: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/4.jpg)
Oggetti in NT
Il Kernel di NT e’ detto executive, a questo livello abbiamo due tipi di oggetti:– Oggetti executive:sono oggetti visibili ai processi
utente– Oggetti Kernel: oggetti più primitivi, visibili solo
dall’executive
![Page 5: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/5.jpg)
Struttura di un oggetto in NT
Object Name: unico per l’oggetto. Object Directory:Struttura logica di cui
l’oggetto e’ componente. Security Descriptor: implementa
l’auditing dell’oggetto. Quota charges: campo necessario per
il resource accounting. Open Handle counter: numero di
processi che utilizzano l’oggetto. Open Handle Database: quali
processi utilizzano l’oggetto. Type Object pointer: contiene i campi
comuni a tutte le istanze. Reference Count: Indica il numero di
processi kernel che usano l’oggetto.
![Page 6: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/6.jpg)
Object Manager
E la componente che si occupa della gestione degli oggetti, caratteristiche:– Centralizzato: tramite il security descriptor viene
gestito l’auditing da una sola componente.– Riferimento delle risorse ai processi in modo
indiretto tramite l’handling, così i processi utente non hanno accesso diretto alla memoria.
– Gestisce il resource accounting: la contabilità delle risorse in modo che singoli processi utente non monopolizzino il sistema.
![Page 7: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/7.jpg)
Object Manager
Object manager si occupa, su richiesta di un processo utente di:
Allocare memoria per l’oggettoSpecificare il dominio di protezione dell’oggetto
Attaccare all’oggtto un descrtittore di sicurezza e gestire gli accessi dei vari processi utente.
Creare un handle e restituirlo al chiamante
![Page 8: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/8.jpg)
Handling
Ai processi Object Manager fornisce dei riferimenti agli oggetti:
I processi utente non possono interferire con le strutture dati del sistema
Facile monitorare chi e quale oggetto sta utilizzando
Una volta assegnato un handle ad un processo non e’ più necessario conoscerne il nome, riferendosi ad una tabella OM sa per ogni processo quali operazioni gli sono permesse
![Page 9: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/9.jpg)
Handling: esempio
Handling Table del processo A
![Page 10: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/10.jpg)
Handling: algoritmo
Il processo che effettua la richiesta specifica un insieme di diritti desiderati, cioè quello che intende fare con quel oggetto.
Object Manager chiama il monitor dei riferimenti della sicurezza, RSM, spedendo l’insieme dei diritti desiderati dal processo.
RSM, reference sicurity monitor, controlla se il descrittore di sicurezza del processo prevede quei diritti. Se e’ così, viene ritornata a Object Manager la lista dei diritti.
Viene aggiunta un Handle nella handle table del processo dove specifichiamo anche i diritti. In questo modo object Manager li controllerà velocemente.
![Page 11: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/11.jpg)
Resource Accounting
Nell’intestazione degli oggetti esiste un campo che definisce il suo numero di handle aperti → Object Monitor sa in ogni istante qual e’ la disponiblilita’ delle risorse.
Sempre nell’intestazione degli oggetti vi e’ una quota, da sottrarre alla quota totale di memoria che e’ riservata ad un processo di un utente . Questa operazione serve a limitare gli accessi degli utenti alle risorse del sistema.
![Page 12: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/12.jpg)
Domini di protezione:
Un dominio di protezione e’ una coppia:
<nome oggetto,insieme di diritti>.
Specificano quali diritti abbia un processo su un oggetto, in analogia con Unix.
Non necessariamente i domini sono disgiunti.
![Page 13: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/13.jpg)
Domini di Protezione: Esempio
Ogni processo fa parte di un dominio.
Tipicamente i domini sono rappresentati tramite matrici.
![Page 14: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/14.jpg)
La Sicurezza in NT
L’idea che sta dietro la sicurezza in NT:– Creare una porta attraverso la quale ogni utente
delle risorse del sistema deve passare– Le risorse sono gli oggetti– La porta è quindi Object Manager– Le operazioni critiche relative alla sicurezza sono
oggetti kernel
![Page 15: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/15.jpg)
Controllo dell’Accesso
Queste le funzionalità principali che controllano e limitano l’accesso.
– Gli account utente.– Lista di controllo degli accessi.– Descrittore di sicurezza e permessi.
![Page 16: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/16.jpg)
Account Utente
Gli account utente comprendono informazioni su:– Informazioni sull’utente– Appartenenza ai gruppi– Informazioni sulla politica di sicurezza
In questo modo si specificano i “limiti” in cui ad un utente e’ permesso di operare, definendo i diritti dell’utente nel sistema
![Page 17: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/17.jpg)
Account Utenti
Al momento della creazione di un account vengono specificati i diritti di quell’ utente sulle risorse del sistema.
Ad ogni account del sistema è associato un SID (identificatore di sicurezza) univoco.
Quando un utente si collega ogni suo processo ha allegato un Access token che è una sorta di carta di identità dell’utente.
![Page 18: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/18.jpg)
Access Token
Privileges: indica se l’utente può accedere a servizi di sistema particolari, uno di essi potrebbe essere, ad esempio il debug delle applicazioni.
Primary Group: mantiene il SID del gruppo
Default ACL: se l’utente crea un oggetto il campo contiene la lista di utenti e gruppi con i rispettivi diritti di accesso. Collegamento con access control list degli oggetti.
![Page 19: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/19.jpg)
Descrittore di sicurezza e permessi
E’ possibile rendere sicuri tutti gli oggetti denominati in NT. Esiste un descrittore di sicurezza che descrive gli attributi di sicurezza di un oggetto comprende:– Un identificatore di sicurezza (SID) dell’utente o del
proprietario dell’oggetto– Una ACL discrezionale che identifica i diritti di altri
utenti sull’oggetto.– Una ACL di sistema che gestisce i messaggi di
controllo che vengono generati dal sistema.
![Page 20: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/20.jpg)
Descrittore di Sicurezza
E’ proprio grazie all’esistenza dei descrittori di sicurezza che NT implementa l’auditing,cioè tutta quella serie di politiche e soluzioni che permettono di determinare in ogni istante, chi è in possesso di ogni risorsa e che utilizzo ne sta facendo, in modo da impedire abusi o utilizzi non autorizzati.
Questo importante controllo è demandato all’Object Manager e all’ Reference Security Monitor come visto in precedenza.
![Page 21: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/21.jpg)
Lista di controllo degli accessi
Componente principale del security descriptor è gestita dall’utente a sua discrezione.
Abbiamo una Access Control Entry per ogni utente o gruppo che ha diritti sul nostro oggetto. Se l’utente al momento della creazione non la specifica viene utilizzata quella contenuta nel suo token di accesso.
![Page 22: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/22.jpg)
Domini
Dominio di rete è un raggruppamento logico di server di rete e altri computer che condividono informazioni comuni sulla sicurezza e sugli account per ogni utente.
All’interno dei domini gli amministratori creano un account per ogni utente.
Gli utenti si collegano poi al dominio e non ai server singoli del dominio.
Esiste un database che mantiene le informazioni sulla sicurezza e sugli account per ogni dominio.
Al momento del logon questo database viene utilizzato per controllare l’esattezza i dati inseriti.
Tutti gli utenti accedono a una serie di risorse condivise.
![Page 23: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/23.jpg)
Gestire più domini
Un’esigenza importante può essere quella di avere più domini per una singola organizzazione.
In tal caso NT propone soluzioni diverse:– Modello a dominio singolo: ogni dominio è isolato dagli altri,
anche se un utente ha accesso ad un altro dominio non può entrare.
– Modello a Dominio principale: progettato per grosse organizzazioni, ha una struttura gerarchica con un dominio principale.Un utente può appartenere a più domini.
– Modello su fiducia:non vi è alcun dominio principale, ogni dominio gestisce i propri utenti, ma si fida anche degli altri domini, un utente che vi ha accesso e’ autorizzato ad entrare.
![Page 24: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/24.jpg)
Componenti dei domini
Ogni dominio ha delle componenti in modo indipendente dal modello scelto:– Domain Controller– Relazioni di fiducia– Servizio di NetLogon
![Page 25: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/25.jpg)
I Domain Controller
I domain controller sono computer con Windows NT Server, la loro funzione è molteplice:
– Mantengono le informazioni di sicurezza sui domini utilizzando una directory condivisa detta Database Directory
– Gestiscono tutte le relazioni utente/dominio come ad esempio l’autenticazione di un utente che si collega ad un account di dominio.
– Sono Previsti due tipi di domain controller: Primary Domain Controller: tiene traccia dei cambiamenti
effettuati agli account e memorizza le informazioni nella DBdirectory; è unico per ogni dominio
Backup Domain Controller: mantiene un backup del Dbdirectory è sincronizzato regolarmente.
![Page 26: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/26.jpg)
Relazioni di fiducia
Una relazione di fiducia è la politica adottata da due domini in un’unità amministrativa per autorizzare o meno l’accesso alle risorse presenti su entrambi i domini. Possono essere di due tipi:
– Monodirezionale: un dominio concede fiducia agli utenti dell’altro dominio per l’utilizzo delle risorse. Le risorse che si rendono disponibili sono nel dominio che concede fiducia (trusting) e i gli account che possono utilizzarli sono nel dominio che riceve fiducia (trusted).
– Bidirezionale:è costituita da due relazioni di fiducia monodirezionale ogni dominio concede fiducia agli utenti dell’altro dominio.
![Page 27: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/27.jpg)
Il servizio di NetLogon
Le funzionalità offerte dal servizio NetLogon sono:– Autenticazione dell’utente, cioè fornire agli utenti un
singolo punto d’accesso al PDC.– Sincronizzazione dei cambiamenti nel database
directory tra il PDC e il vari domain controller
Se un utente tenta il logon su un computer che non e’ PDC o BDC allora il computer utilizzato elabora le richieste di logon e le passa ad un domain controller..
![Page 28: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/28.jpg)
Autenticazione dell’utente
Il servizio NetLogon autentica la richiesta in tre passaggi:
1. Scoperta: quando il computer viene avviato, deve determinare la posizione di un domain controller all’interno del dominio ad esso si farà riferimento per ogni richiesta di logon. La localizzazione del domain controller e’ detta scoperta.
2. Impostazione del canale di sicurezza: viene utilizzato un account di sicurezza che rende il canale di comunicazione sicuro.
3. Pass-through autentication che viene verificata quando l’utente intende collegarsi ad un dominio che non e’ quello locale, come ad esempio il log di ogni studente al dominio EDUC.
![Page 29: Sicurezza in Windows NT Fabrizio Inguglia. Tratteremo: Struttura generale di Windows NT 4 Gestione delle politiche di sicurezza](https://reader036.vdocuments.pub/reader036/viewer/2022062404/5542eb5a497959361e8c7882/html5/thumbnails/29.jpg)
Autenticazione: Pass-through autentication
Pass-through autenticaion: la richiesta perviene al domain controller che controlla che il dominio corrisponda il proprio, se lo e’ convalida il logon altrimenti controlla per i domini trusted. Se esiste un domain controlled trusted che riconosce l’account utente il logon viene accettato.