Systèmes d exploitation



Documents pareils
Systèmes informatiques

Module : Virtualisation à l aide du rôle Hyper-V

Point sur la virtualisation

Présentation d HyperV

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Fiche Technique. Cisco Security Agent

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

Concept de machine virtuelle

Présentation Windows 7 &

Virtualisation et Sécurité

PPE 1 PRISE EN MAIN DE VMWARE VSPHERE 5.5 & CONFIGURATION D UNE MACHINE VIRTUELLE

Manuel de System Monitor

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

ISEC. Codes malveillants

A Libre Ouvert. Médiathèque Jacques Ellul. le

Symantec Endpoint Protection Fiche technique

LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010.

Utilisation de matériels industriels avec des outils de virtualisation open source. Open Source dans le monde industriel

Les hyperviseurs leaders du marché qui ont fait leurs preuves en production

VMWARE VSPHERE ESXI INSTALLATION

SRS DAY: Problématique liée à la virtualisation

Fonctionnement de Windows XP Mode avec Windows Virtual PC

Retrouver de vieux programmes et jouer sur VirtualBox

Chapitre 2 : Abstraction et Virtualisation

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

La mémoire. Un ordinateur. L'octet. Le bit

Virtualisation & Sécurité

PRESENSTATION VMWARE ESXi NOTION DE MACHINE VIRTUELLE

Gestion répartie de données - 1

But de cette présentation. Bac à sable (Sandbox) Principes. Principes. Hainaut P

Qu est ce qu un un serveur?

EN Télécom & Réseau S Utiliser VMWARE

Comment installer la configuration des salles sur son ordinateur personnel?

Atelier : Virtualisation avec Xen

Installation de Vmware serveur Windows

PREREQUIS TECHNIQUES ETAFI DECISIV. PRT ETAFI Decisiv 12/2014 Page 1 sur 16

L assistant Boot Camp pour utiliser aussi Windows sur un Mac sous OS X Yosemite

JOSY VIRTUALISATION 9 ET 10 JUIN 2011 POSTE DE TRAVAIL ET VIRTUALISATION. Sébastien Geiger IPHC

A. Sécuriser les informations sensibles contre la disparition

Tutoriel Création d une source Cydia et compilation des packages sous Linux

ndv access point : Utilisation

Groupe Eyrolles, 2006, ISBN : X

Virtualisation de serveurs Solutions Open Source

Système Principal (hôte) 2008 Enterprise x64

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

La Virtualisation Windows chez CASINO. Philippe CROUZY Responsable Infrastructure Equipes Systèmes -Stockage

Mise en œuvre d un poste virtuel

CH.3 SYSTÈMES D'EXPLOITATION

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

VMware ESX/ESXi. 1. Les composants d ESX. VMware ESX4 est le cœur de l infrastructure vsphere 4.

CommandCenter Secure Gateway

Informatique. Les réponses doivent être données en cochant les cases sur la dernière feuille du sujet, intitulée feuille de réponse

Virtualisation et le hosting. Christophe Lucas Sébastien Bonnegent rouen.fr>

Virtualisation et sécurité Retours d expérience

Windows Server Chapitre 1: Découvrir Windows Server 2008

Fiche technique: Sécurité des terminaux Symantec Endpoint Protection La nouvelle technologie antivirus de Symantec

Journée CUME 29 Mars Le déport d affichage. Vincent Gil-Luna Roland Mergoil.

Certificat Informatique et internet Niveau 1 TD D1. Domaine 1 : Travailler dans un environnement numérique évolutif. 1. Généralités : Filière

Symantec Backup Exec System Recovery

Version de novembre 2012, valable jusqu en avril 2013

Webroot SecureAnywhere. Foire aux questions

VMWare Infrastructure 3

CLIENTS LÉGERS. Remote Desktop Services Linux Terminal Server Project

CIE 1 : Mise en service d un PC, y compris le domaine de la sécurité informatique :

Lutter contre les virus et les attaques... 15

10 tâches d administration simplifiées grâce à Windows Server 2008 R2. 1. Migration des systèmes virtuels sans interruption de service

Livre blanc. La sécurité de nouvelle génération pour les datacenters virtualisés

RÈGLE N 1 : SAUVEGARDEZ VOS DONNÉES

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

Communications performantes par passage de message entre machines virtuelles co-hébergées

Les avantages de la virtualisation sont multiples. On peut citer:

Unix/Linux I. 1 ere année DUT. Université marne la vallée

EN Télécom & Réseau S Utiliser VMWARE

CREER UNE VM DANS WORKSATION. Créer un Virtual Machine dans VMware Workstation 9

Programmation C. Apprendre à développer des programmes simples dans le langage C

Sans trop entrer dans les détails, la démarche IO Model consiste à : Pour cela, Microsoft découpe la maîtrise de l infrastructure en quatre niveaux :

Table des matières 1. Avant-propos. Chapitre 1 Virtualisation du poste de travail

-1 - Postes de travail graphiques

La gestion du poste de travail en 2011 : Panorama des technologies

A propos de la sécurité des environnements virtuels

2 - VMWARE SERVER.doc

En ce moment (24/01/2014), Super bon plan: Micro Serveur HP Proliant G7 N54L à 159 ttc Plus d'informations sur dealabs.com

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Par CADICI Grégory & FRITZ Rémy

La virtualisation de poste de travail et d application

Cybercriminalité. les tendances pour 2014

SÉCURISATION DES CONNEXIONS À DISTANCE SUR LES RÉSEAUX DE CONTRÔLE

Edition de février Numéro 1. Virtualisation du Poste de Travail

Faits techniques et retour d'expérience d'une cellule d'expertise dans la lutte contre le code malveillant. EdelWeb / Groupe ON-X

CATALOGUE DE FORMATION INTERNET BUREAUTIQUE INFORMATIQUE..::NET-INOV.COM::..

MIGRATION ANNEXE SAINT YVES. 1 : L existant. Pourquoi cette migration Schéma et adressage IP. 2 : Le projet. Schéma et adressage IP.

Les défis du VDI Le cas de XenDesktop. Les défis du VDI

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

Hyper-V R2 (Module 1) : Introduction

SMB137 - Cinquième partie

Mise en place des TPs Réseau en machines virtuelles. Utilisation de VmPlayer

Transcription:

Systèmes d exploitation Virtualisation, Sécurité et Gestion des périphériques Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Novembre 2009 Gérard Padiou Systèmes d exploitation 1 / 30

plan Introduction 1 Introduction Les problèmes à résoudre Les approches 2 d un système 3 Les principes Réalisation Gérard Padiou Systèmes d exploitation 2 / 30

La vision habituelle Introduction Les problèmes à résoudre Les approches Architecture matérielle : processeurs, mémoire réelle, système d'interruption ressources périphériques fixes ou amovibles Système d'exploitation Processus Processus Processus threads MV MV MV Gérard Padiou Systèmes d exploitation 4 / 30

Plusieurs machines sur une seule! Les problèmes à résoudre Les approches Idée fondamentale d objet virtuel Une vieille idée d IBM (Cambridge-Grenoble) en 1967! : VM/CMS (Virtual Machine/Cambridge Monitor System) Remise au goût du jour ; Plusieurs implantations possibles ; Mecanismes matériels facilitant la mise en œuvre (mode d exécution). Objectifs Cohabitation de plusieurs systèmes différents ; Isolation : L arrêt de l un n arrête pas les autres ; Facilite le test : cohabitation entre serveur en exploitation et test d une nouvelle version. Gérard Padiou Systèmes d exploitation 5 / 30

La vision des précurseurs Introduction Les problèmes à résoudre Les approches Architecture matérielle : processeurs, mémoire réelle, système d'interruption ressources périphériques fixes ou amovibles Noyau Hyperviseur Système d'exploitation modifié Système d'exploitation modifié Système d'exploitation modifié Usager interactif Machine virtuelle Usager interactif Machine virtuelle Usager interactif Machine virtuelle Gérard Padiou Systèmes d exploitation 6 / 30

Types de solutions Introduction Les problèmes à résoudre Les approches Problème Peut-on obtenir une solution performante sans modifier le système d exploitation? Types de solutions La virtualisation par simulation complète avec plusieurs variantes : Emulation de chaque instruction ; Compilation de blocs d instructions à la volée. La paravirtualisation ; La virtualisation à hyperviseur ; Gérard Padiou Systèmes d exploitation 7 / 30

Les problèmes à résoudre Principe de base Les problèmes à résoudre Les approches Notion de machine virtuelle Un système d exploitation «invité» ne s exécute plus sur la machine réelle mais sur une machine «virtuelle». Un logiciel de virtualisation est donc nécessaire. Virtualisation des ressources allouées à une machine Partage du temps processeur entre machines virtuelles ; Une unité de disque virtuel : réalisé par un «gros» fichier ; Une carte graphique de base : réalisée par une fenêtre ; Gérard Padiou Systèmes d exploitation 8 / 30

Les problèmes à résoudre Les approches La virtualisation par simulation complète Avantages et inconvénients Exemple Avantage : pas de modification du SE «invité» Inconvénient : performances faibles : il faut tout émuler. Projet Bochs Site Web : http ://bochs.sourceforge.net/ Emulateur de la famille de PC à base de IA-32(x86) ; Développé en C++ ; Emulation du processeur, d un BIOS et des périphériques de base (console, disque,... ) ; Supporte plusieurs SE : Linux, DOS, Windows NT/XT,... Problème : performances faibles mais bon support de test. Gérard Padiou Systèmes d exploitation 9 / 30

La vision actuelle : par simulation (émulation) Les problèmes à résoudre Les approches Architecture matérielle Système d'exploitation hôte Machine virtuelle encapsule et exécute Système d'exploitation invité Processus threads Processus Machine virtuelle encapsule et exécute Système d'exploitation invité Processus threads Processus Gérard Padiou Systèmes d exploitation 10 / 30

Les problèmes à résoudre Les approches Exemple de configuration PC émulée par Parallels Desktop Un processeur Intel Pentium. Jusqu à 1500 MB de mémoire. une carte graphique VGA. Jusqu à 4 disques d interface IDE (de 20 à 128 GB représenté par un fichie dont un de démarrage. Jusqu à 5 interfaces réseaux, dont une carte virtuelle Ethernet. 4 ports séries (COM) ports. 3 ports parallèles (LPT) un controleur USB 2.0 controller. une carte son. un clavier PC générique. une souris PS/2. Gérard Padiou Systèmes d exploitation 11 / 30

La vision actuelle : par hyperviseur Les problèmes à résoudre Les approches Architecture matérielle Hyperviseur Système d'exploitation (couches basses) (couches hautes) Système d'exploitation (couches basses) (couches hautes) Processus Processus Processus Processus threads threads Machine virtuelle Machine virtuelle Gérard Padiou Systèmes d exploitation 12 / 30

Des produits commerciaux Les problèmes à résoudre Les approches Exemple Famille VMware Site Web : http ://www.vmware.com/fr/ Famille de logiciels de virtualisation. Versions serveurs ; Approche par hyperviseur ; Limite : processeur Intel (Pas d émulation) Gérard Padiou Systèmes d exploitation 13 / 30

d un système d un système Problème fondamental Comment empêcher les accès frauduleux et/ou la destruction d information? Comment garantir qu un système d exploitation «résistera» à ses usagers (locaux ou distants) Beaucoup de possibilités à contrer... Gérard Padiou Systèmes d exploitation 15 / 30

d un système Une règle qui éviterait bien des ennuis d un système N exécuter que les programmes que l on a écrit... Le problème de base Un programme est toujours exécuté avec les droits de l usager pour lequel «roule» le processus ; Les droits de l usager qui a écrit le programme n entrent donc pas en jeu ; Conclusion : celui qui a écrit le programme a pu prévoir qu il aurait les droits d accès d un autre usager ; La grande quête du programmeur malveillant : arriver à faire exécuter ses programmes par un usager disposant du plus de droits possibles par exemple, l administrateur root Gérard Padiou Systèmes d exploitation 16 / 30

Les débordements de tableaux d un système Avant la lecture de la chaîne rangées à l adresse @ch : Pile Code jsr Proc Bloc d'activation de Proc @ retour SP @ch Après la lecture de la chaîne trop longue : SP @ch Code jsr Proc @ @r retour Code pirate Gérard Padiou Systèmes d exploitation 17 / 30

Les résultats de fonctions de la libc d un système Usage malveillant de la fonction strcopy Après la lecture de la chaîne trop longue : SP @ch Code jsr Proc @ @r retour Code pirate Après l exécution de strcopy : SP @ch Code jsr Proc Code pirate @ @strcopy retour @dst @dst @src Code pirate Gérard Padiou Systèmes d exploitation 18 / 30

Que faire faire au code pirate? d un système Il faut avoir choisi le bon programme à attaquer Si le programme «au point faible» a son bit SETUID positionné et qu il a été créé par root alors... : Il peut lancer par une primitive exec un shell avec les droits du super-utilisateur ; Il peut télécharger un programme via une connexion Internet et créer un processus qui exécutera ce programme. Ce processus peut alors accepter lui aussi des commandes, etc Gérard Padiou Systèmes d exploitation 19 / 30

L injection de code d un système Idée Introduire des commandes dans une donnée d entrée Un programme accepte un nom de fichier en argument : argv[i] ; Il appelle la fonction system avec une commande en paramètre incluant la valeur argv[i] : strcat(cmd,argv[i]) ; system(cmd) ; dans argv[i] il y a : toto ; rm Gérard Padiou Systèmes d exploitation 20 / 30

d un système Principe Utiliser la faille incontournable : un utilisateur exécute un programme qu il n a pas écrit. Le programme est un freeware qui fait quelque chose de rigolo ou joli... Mais il fait aussi autre chose... de moins visible. Deux approches : Approche «cheval de Troie» Approche «virus» Gérard Padiou Systèmes d exploitation 21 / 30

Approche «cheval de Troie» d un système Principe Le programme malveillant installe un autre programme caché ; Ce programme caché est prévu pour être exécuté soit régulièrement, soit involontairement par un utilisateur... Exemple Le programme est caché dans /usr/x11r6/bin et s appelle lq ; L utilisateur malheureux a dans sa variable PATH : /bin :/usr/bin :/usr/local/bin :/usr/x11r6/bin L utilisateur malheureux frappe par erreur > lq (pour > ls) Le cheval de Troie est exécuté... et remplace /bin/ls par un autre cheval de Troie. Gérard Padiou Systèmes d exploitation 22 / 30

Approche «virus» d un système Principe Au départ, principe de base identique au cheval de Troie ; Un programme contient un bout de code viral ; Lorsque le programme infecté est récupéré par un utilisateur, dès que celui-ci s exécute, l infection se propage. Un jour ou l autre les programmes infectés déclenche... la maladie appelée charge utile (payload) Gérard Padiou Systèmes d exploitation 23 / 30

Approche «virus» d un système Plusieurs types de virus Ceux qui se propagent dans les codes binaires par écrasement ou ajout (parasites, bouche-trou) Ceux qui se propagent dans du code source ; Ceux qui se cachent en mémoire réelle et filtrent les appels de primitives ; Ceux qui infectent les pilotes de périphériques ; etc Gérard Padiou Systèmes d exploitation 24 / 30

Les principes Réalisation Unix : La gestion des péripériques Les pilotes (drivers) Les principes Définition d une interface générique ; Indépendance vis-à-vis du matériel ; Reconfiguration dynamique ; Les difficultés Grande diversité de ressources matérielles ; Périphériques amovibles ; Protection de la structure logique des systèmes de fichiers. Gérard Padiou Systèmes d exploitation 26 / 30

Les principes Réalisation Unix : L interface d accès aux périphériques Principes de conception Intégration dans l espace de fichiers, dits spéciaux ; La désignation est identique ; L interface d usage au niveau commandes et primitives est celle des fichiers ; Les mécanismes de protection sont les mêmes. Répertoire dédié : /dev Deux catégories de périphériques (méthode d accès) : modes «blocs» ou «caractères» A un fichier spécial correspond un pilote ; Désignation interne d un périphérique : couple de numéros (majeur, mineur) Gérard Padiou Systèmes d exploitation 27 / 30

Interface générique Introduction Les principes Réalisation Les primitives d accès open : connexion au périphérique ; close : déconnexion ; read : lecture (si possible) ; write : écriture (si possible) ; ioctl : action spécifique. Remarque : la norme POSIX a introduit des primitives spécifiques pour remplacer la primitive «à tout faire» ioctl pour un terminal. cfgetispeed, cfsetispeed, cfgetospeed, cfsetospeed, cfsetspeed, cfmakeraw, tcgetattr, tcsetattr Gérard Padiou Systèmes d exploitation 28 / 30

Réalisation Les pilotes Introduction Les principes Réalisation > ls -l /dev/ttyp1 crw-w--- 1 PE tty 4, 1.../dev/ttyp1 cc = open(/dev/ttyp1,...) 0 1 2 Pilote tty (partie supérieure) 3 4 tty_open(1,...)... Gérard Padiou Systèmes d exploitation 29 / 30

Les principes Réalisation Modes d accès par bloc ou «caractère» Cache noyau Espace usager Espace usager Mode bloc Mode caractère Gérard Padiou Systèmes d exploitation 30 / 30