Posix Capabilities SEZIONE IMPORTANTE POSIX STANDARD Bisogno della
Posix Capabilities SEZIONE IMPORTANTE POSIX STANDARD
• Bisogno della portabilità attività di standardizzazione • Differenza dei kernel nelle varie versioni Unix • Si cerca di definire una sola definizione standard di interfaccia
Standard di interfaccia • ANSI/X 3. 159 – 1988 • /usr/group Standard Programming Language C Standard - 1984 • AT&T Unix System V Interface Definition (SVID) • IEEE 1003. 1 Posix Standard
POSIX = portable operating system • È una famiglia di standard diversi • Superare limitazioni sistemi operativi correnti Comunicazione tra processi Interfaccia dei comandi Locking dei file e la gestione dei database Interconnessione in rete La sicurezza del sistema operativo Input/Output e il controllo dei terminali • Definisce una interfaccia che non fa riferiento ad una specifica implementazione
Alcune Posix functions Posix. 1 è la versione più aggiornata ! Alcune funzioni di esempio definite da Posix. 1: Open() read() write() close() posix_kill — Send a signal to a process posix_getpid — Return the current process identifier posix_getppid — Return the parent process identifier posix_getuid — Return the real user ID of the current process posix_geteuid — Return the effective user ID of the current process posix_getgid — Return the real group ID of the current process posix_getegid — Return the effective group ID of the current process posix_setuid — Set the effective UID of the current process posix_setgid — Set the effective GID of the current process posix_getgroups — Return the group set of the current process posix_getlogin — Return login name posix_getpgrp — Return the current process group identifier posix_setsid — Make the current process a session leader
Capabilities • Assocazione ad un file od a un processo • Abilitazione e Disabilitazione • Passaggio di capabilities tra processi • Minimo set di capabilities richieste per il supporto di programmi portabili con un certo grado di sicurezza
PRINCIPALI SCOPI 1. 2. Provvedere ad un mezzo portabile Supporto dell’implementazione del minimo privilegio delle politiche di sicurezza 1. Definire una terminologia comune per indirizzare gli argomenti della capability Definire le semantiche di come le capabilities associate ai processi possono essere acquistate dal processo stesso e alterate Definire le funzioni di sitema e utilities necessarie ad utilizzare le capabilities Cercare di conservare una certa compatibilità con i programmi che dipendono da un solo user o da un group user Aggiornamento con future implementazioni Specifica di uno standard per le capabilities Supporto del backup del sistema e ripristino del sistema. 2. 3. 4. 5. 6. 7.
Principali caratteristiche • Task bounding of Capability (limitare le abilitazioni, disabilitazioni, attivazioni) • Capability Inheritance • Capability Flags (permissivi , efficaci , ereditabili)
CAPABILITY FUNCTIONS Manipolazione vari stati di una capability 1. Maneggiare l’area del lavoro immagazzinato da stati di capability 2. Manipolare gli indicatori di capability 3. Manipolare (leggere o scrivere) uno stato di capability su un file o processo 4. Tradurre uno stato di capability in differenti formati
- Slides: 9