SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Linux Security Modules




DYNAMICS NETWORK LABS    www.dynamics-network.com
DYNAMICS NETWORK LABS

                                      Avant propos




             Linux Security Modules

                        Security ?
DYNAMICS NETWORK LABS

                        Avant propos
DYNAMICS NETWORK LABS

                                        Avant propos – la sécurité globalement


 •La sécurité est assurée par un principe de couche, notre
  couche sera le contrôle d'accès


 •Modèle formel
 •Implémentation
 •Vérification
     •Critère d'évaluation (orange book – DoD)
 •Sécurité ou outils d'administration système et réseau
DYNAMICS NETWORK LABS

                                                  Avant propos - LSM


 •LSM est un framework proposant des vérifications de sécurité
 •Les implémentations actuelles reposent sur des modèles
  formels de type MAC (SELinux, Tomoyo, smack, apparmor)
 •Sans une de ces implémentations chargées, le kernel utilise les
  capabilities
DYNAMICS NETWORK LABS

                                  Approche


 •Modèle formel - théorie
     •Contrôle d'accès
 •Implémentation dans Linux
     •Infrastructure LSM
     •Fonctions partagées
 •Pistes de réflexion, critique
DYNAMICS NETWORK LABS

                                  Modèle formel




                  Modèle formel
DYNAMICS NETWORK LABS

                                                         Modèle formel


 •Un modèle formel décrit une méthode de spécification de la
  politique de sécurité d'un système
 •En pratique, il repose sur une idée fondatrice ou une technique
 •Le formaliste est introduit pour décrire l'idée fondatrice ou la
  technique
DYNAMICS NETWORK LABS

                                               Modèle formel


 •LOMAC : Low Water-Mark Mandatory Access Control - 2000
 •Bell-La Padula (BLP) – 1973
 •object-capability - 1981
 •Take-grant - 1977
 •Biba – 1977
 •Matrice de contrôle d'accès – 1971
 •..
DYNAMICS NETWORK LABS

                                        Modèle formel - LOMAC


 •Mécanisme de water marking d'objets


  top secret

   secret

 confidentiel

 Non classé



                                                  temps
DYNAMICS NETWORK LABS

                                    Matrice de contrôle d'accès : sujet et objet




     sujet              contrôle d'accès                        objets




                        politique d'accès
DYNAMICS NETWORK LABS

                            Matrice de contrôle d'accès



    meow                R
                               /home/meow/
                        W




    aegiap              R
                                 /etc/passwd
                        W




                        R
                                   /tmp/foo
     sam
                        W
DYNAMICS NETWORK LABS

                                          Matrice de contrôle d'accès




                 /etc/passwd   /tmp/foo             /home/meow



     meow             -           -                 { read, write }



    aegiap         { read }       -                        -



     sam           { read }    { read }             { read, write }
DYNAMICS NETWORK LABS

                                       Matrice de contrôle d'accès : domaine




                     obj3
                                                    obj0
                 r
                                obj1
                            r
                                                    r
            S0                             r
                            r   obj2
                                       r
                                               S1




                                                               domaine
DYNAMICS NETWORK LABS

                                             Modèle par fonction de sécurité


 •Intégrité : BIBA, Clark Wilson
 •Confidentialité : HRU, Bell LaPadula, Take-Grant


 •HRU : matrice de contrôle d'accès M(sujet x objet)
 •Take-Grant : formalisme de graphe
 •Bell LaPadula : classification des objets, habilitation des sujets
DYNAMICS NETWORK LABS

                                   Implémentation dans Linux




                  Implémentation
                    dans Linux
DYNAMICS NETWORK LABS

                                       Implémentation dans Linux - framework


 •Infrastructure de hooks
     •Développement de modèle formel
 •Des « fonctionnalités partagées »
DYNAMICS NETWORK LABS

                                           Les hooks LSM


 •include/linux/security.h
 •struct security_operations foo_ops {
            ...
      •.inode_create = foo_inode_create,
      •.task_kill = foo_task_kill,
      ...
  }


 •smack, SELinux, apparmor, tomoyo
DYNAMICS NETWORK LABS

                                                                Les hooks
                  userspace




  appel système




                                    Contrôle d'accès



                              accès ou refus




                                        TOCTOU : Time Of Check – Time Of Use
DYNAMICS NETWORK LABS

                                           Fonctionnalité partagée – critère de sécurité


                                                                          keys
                             non
                             répudiation

           disponibilité                                      authentification


                                     sécurité


           confidentialité                                        intégrité

                                           tracabilité


      crypto                          audit                                   IMA
DYNAMICS NETWORK LABS

                                      Piste de réflexion




                Pistes de réflexion
DYNAMICS NETWORK LABS

                                          Piste de réflexion – projet LSM


           Condition d'intégration des modules upstream


 •Il faut pouvoir expliquer la capacité défensive du nouveau
  module.
 •Pas compatible avec la gestion du projet upstream – « troll
  detected »
 •Exemples : stacking de modules, intégration tomoyo, rejet de
  fonctionnalités « because it's not secure »
DYNAMICS NETWORK LABS

                              Piste de réflexion : modèle par fonction de sécurité


 •Les modèles par thème (intégrité, confidentialité, etc) ne
  couvrent pas toutes les fonctionnalités
 •Impossibilité du stacking LSM
 •Utilisé un modèle protégeant l'intégrité ne protègera pas les
  autres fonctions, et il est impossible de charger les autres
  modèles
 •Un mécanisme de hook, un seul module de sécurité ?
  (netfilter)
DYNAMICS NETWORK LABS

                                     Piste de reflexion : document, livres..


 •Les LSM sont ils considérés comme un mécanisme essentiel du
  kernel ? (irq, process management, vfs, etc)
 •Les bouquins sur le kernel ne parlent pas des LSM
DYNAMICS NETWORK LABS

                                   Piste de réflexion – mécanisme de hook


     Le mécanisme de hook rend la création de module facile


 •Module formel au hack – regard sur les propositions
 •Refus d'innovation sur les modèles formel, 30 ans
DYNAMICS NETWORK LABS

                                          Piste de réflexion – ligne directrice


                          Points difficiles


 •Politique monolithique implique configuration complexe -
  350K+ lignes de conf, [application x fichier x action]


 •Pouvons nous rendre le contrôle d'accès dynamique ?
 •Pouvons nous conserver la granularité ?
DYNAMICS NETWORK LABS

                  Piste de réflexion – orthogonalité : granularité vs dynamisme


                  mise à jour de
                  la politique




 grossière


                                                           granularité de
                                                           la politique




                  dynamisme
DYNAMICS NETWORK LABS

                                                   Piste de réflexion – ligne directrice


                            Points difficiles


 •Modèle monolithique cependant des fonctions partagées
 •Peut on séparer par thème ?

                     Contrôle d'accès en bloc : fs, net, mm, ...




      fs0           net0                          mm0
      fs1            net1                         mm1                 fs1   net0 mm2
                             mécanisme
      fs2           net2                          mm2
                             d'échange
Linux Security Modules




DYNAMICS NETWORK LABS    www.dynamics-network.com

Weitere ähnliche Inhalte

Andere mochten auch

Mémoire jplb igs promo 28
Mémoire jplb igs promo 28Mémoire jplb igs promo 28
Mémoire jplb igs promo 28JPLB1961
 
Datapero #1 - OpenStreetMap
Datapero #1 - OpenStreetMapDatapero #1 - OpenStreetMap
Datapero #1 - OpenStreetMapDatapero
 
Réglementation du travail : pourquoi la France licencie et n'embauche plus ?
Réglementation du travail : pourquoi la France licencie et n'embauche plus ?Réglementation du travail : pourquoi la France licencie et n'embauche plus ?
Réglementation du travail : pourquoi la France licencie et n'embauche plus ?Fondation iFRAP
 
bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active
 bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active
bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-activeAssociation Maladies Foie
 
Présentation des résultats du tn3
Présentation des résultats du tn3Présentation des résultats du tn3
Présentation des résultats du tn3Rosine-GF-03
 
Pénitentiaire, le plan choc de la Fondation iFRAP
Pénitentiaire, le plan choc de la Fondation iFRAPPénitentiaire, le plan choc de la Fondation iFRAP
Pénitentiaire, le plan choc de la Fondation iFRAPFondation iFRAP
 
Pour la convergence France-Allemagne
Pour la convergence France-AllemagnePour la convergence France-Allemagne
Pour la convergence France-AllemagneFondation iFRAP
 
Textos del Padre Federico Salvador Ramón - 16
Textos del Padre Federico Salvador Ramón - 16Textos del Padre Federico Salvador Ramón - 16
Textos del Padre Federico Salvador Ramón - 16Antonio García Megía
 
Valtech - What's Hot - octobre 2011
Valtech - What's Hot - octobre 2011Valtech - What's Hot - octobre 2011
Valtech - What's Hot - octobre 2011Valtech
 
Claves para emprender y encontrar empleo en el mundo de la CiberSeguridad
Claves para emprender y encontrar empleo en el mundo de la CiberSeguridadClaves para emprender y encontrar empleo en el mundo de la CiberSeguridad
Claves para emprender y encontrar empleo en el mundo de la CiberSeguridadEmilio Márquez Espino
 

Andere mochten auch (20)

Mémoire jplb igs promo 28
Mémoire jplb igs promo 28Mémoire jplb igs promo 28
Mémoire jplb igs promo 28
 
Datapero #1 - OpenStreetMap
Datapero #1 - OpenStreetMapDatapero #1 - OpenStreetMap
Datapero #1 - OpenStreetMap
 
Réglementation du travail : pourquoi la France licencie et n'embauche plus ?
Réglementation du travail : pourquoi la France licencie et n'embauche plus ?Réglementation du travail : pourquoi la France licencie et n'embauche plus ?
Réglementation du travail : pourquoi la France licencie et n'embauche plus ?
 
Manifeste des droits des enfants malades
Manifeste des droits des enfants maladesManifeste des droits des enfants malades
Manifeste des droits des enfants malades
 
bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active
 bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active
bio pharmabuzz-8-mars-2013-pharmaceutiques-x-substance-active
 
Présentation des résultats du tn3
Présentation des résultats du tn3Présentation des résultats du tn3
Présentation des résultats du tn3
 
Paradigmastecno
ParadigmastecnoParadigmastecno
Paradigmastecno
 
Pénitentiaire, le plan choc de la Fondation iFRAP
Pénitentiaire, le plan choc de la Fondation iFRAPPénitentiaire, le plan choc de la Fondation iFRAP
Pénitentiaire, le plan choc de la Fondation iFRAP
 
Pour la convergence France-Allemagne
Pour la convergence France-AllemagnePour la convergence France-Allemagne
Pour la convergence France-Allemagne
 
Textos del Padre Federico Salvador Ramón - 16
Textos del Padre Federico Salvador Ramón - 16Textos del Padre Federico Salvador Ramón - 16
Textos del Padre Federico Salvador Ramón - 16
 
Valtech - What's Hot - octobre 2011
Valtech - What's Hot - octobre 2011Valtech - What's Hot - octobre 2011
Valtech - What's Hot - octobre 2011
 
Eltuteo
EltuteoEltuteo
Eltuteo
 
Passe simple
Passe simplePasse simple
Passe simple
 
extincion
extincionextincion
extincion
 
Objetivos D E Desarrollo Del Milenio
Objetivos D E Desarrollo Del MilenioObjetivos D E Desarrollo Del Milenio
Objetivos D E Desarrollo Del Milenio
 
Les chats
Les chatsLes chats
Les chats
 
la vida
la vidala vida
la vida
 
Test
TestTest
Test
 
Claves para emprender y encontrar empleo en el mundo de la CiberSeguridad
Claves para emprender y encontrar empleo en el mundo de la CiberSeguridadClaves para emprender y encontrar empleo en el mundo de la CiberSeguridad
Claves para emprender y encontrar empleo en el mundo de la CiberSeguridad
 
Vih perio implantes22
Vih perio implantes22Vih perio implantes22
Vih perio implantes22
 

Ähnlich wie Les mécanismes de contrôle d'accès du kernel linux

ToulouseJUG - REX Flex, Spring & Agilité
ToulouseJUG - REX Flex, Spring & AgilitéToulouseJUG - REX Flex, Spring & Agilité
ToulouseJUG - REX Flex, Spring & AgilitéNicolas Deverge
 
Solutions linux ec2 surveillance
Solutions linux ec2 surveillanceSolutions linux ec2 surveillance
Solutions linux ec2 surveillanceSergio Loureiro
 
Surveillance Amazon EC2 infrastructure (french)
Surveillance Amazon EC2 infrastructure (french) Surveillance Amazon EC2 infrastructure (french)
Surveillance Amazon EC2 infrastructure (french) Sergio Loureiro
 
10 02 authentification PAM
10 02 authentification PAM10 02 authentification PAM
10 02 authentification PAMNoël
 
Cours admin-secure-4 avril-2011
Cours admin-secure-4 avril-2011Cours admin-secure-4 avril-2011
Cours admin-secure-4 avril-2011infcom
 
Rétro-ingénierie de protocole crypto: Un "starter pack"
Rétro-ingénierie de protocole crypto: Un "starter pack"Rétro-ingénierie de protocole crypto: Un "starter pack"
Rétro-ingénierie de protocole crypto: Un "starter pack"Maxime Leblanc
 
Offre d'emploi Ingénieur sécurité iam
Offre d'emploi Ingénieur sécurité iamOffre d'emploi Ingénieur sécurité iam
Offre d'emploi Ingénieur sécurité iamSimstream
 
09 01 configuration du serveur samba
09 01 configuration du serveur samba09 01 configuration du serveur samba
09 01 configuration du serveur sambaNoël
 
Normation solutions linux automatisation si complexes
Normation solutions linux automatisation si complexesNormation solutions linux automatisation si complexes
Normation solutions linux automatisation si complexesRUDDER
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Jérôme Petazzoni
 
01_Introduction_a_JEE.pdf
01_Introduction_a_JEE.pdf01_Introduction_a_JEE.pdf
01_Introduction_a_JEE.pdfJunior724645
 
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihmTelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihmMarc Hage Chahine
 
Déploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsDéploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsNicolas Herbaut
 
resume-theorique-m204-v1-0-62f6e87c9c457 (1).pdf
resume-theorique-m204-v1-0-62f6e87c9c457 (1).pdfresume-theorique-m204-v1-0-62f6e87c9c457 (1).pdf
resume-theorique-m204-v1-0-62f6e87c9c457 (1).pdfFootballLovers9
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 
Les Nouveautés de zabbix 2.2 par Alain Ganuchaud
Les Nouveautés de zabbix 2.2 par Alain GanuchaudLes Nouveautés de zabbix 2.2 par Alain Ganuchaud
Les Nouveautés de zabbix 2.2 par Alain GanuchaudAlain Ganuchaud
 
Alphorm.com Formation Les solutions de Haute Disponibilité sous Windows Serv...
Alphorm.com Formation Les solutions de  Haute Disponibilité sous Windows Serv...Alphorm.com Formation Les solutions de  Haute Disponibilité sous Windows Serv...
Alphorm.com Formation Les solutions de Haute Disponibilité sous Windows Serv...Alphorm
 
Créer une IA capable de reconnaître des fleurs (ou autres)
Créer une IA capable de reconnaître des fleurs (ou autres)Créer une IA capable de reconnaître des fleurs (ou autres)
Créer une IA capable de reconnaître des fleurs (ou autres)Olivier Eeckhoutte
 

Ähnlich wie Les mécanismes de contrôle d'accès du kernel linux (20)

ToulouseJUG - REX Flex, Spring & Agilité
ToulouseJUG - REX Flex, Spring & AgilitéToulouseJUG - REX Flex, Spring & Agilité
ToulouseJUG - REX Flex, Spring & Agilité
 
Solutions linux ec2 surveillance
Solutions linux ec2 surveillanceSolutions linux ec2 surveillance
Solutions linux ec2 surveillance
 
Surveillance Amazon EC2 infrastructure (french)
Surveillance Amazon EC2 infrastructure (french) Surveillance Amazon EC2 infrastructure (french)
Surveillance Amazon EC2 infrastructure (french)
 
10 02 authentification PAM
10 02 authentification PAM10 02 authentification PAM
10 02 authentification PAM
 
Cours admin-secure-4 avril-2011
Cours admin-secure-4 avril-2011Cours admin-secure-4 avril-2011
Cours admin-secure-4 avril-2011
 
Rétro-ingénierie de protocole crypto: Un "starter pack"
Rétro-ingénierie de protocole crypto: Un "starter pack"Rétro-ingénierie de protocole crypto: Un "starter pack"
Rétro-ingénierie de protocole crypto: Un "starter pack"
 
Offre d'emploi Ingénieur sécurité iam
Offre d'emploi Ingénieur sécurité iamOffre d'emploi Ingénieur sécurité iam
Offre d'emploi Ingénieur sécurité iam
 
09 01 configuration du serveur samba
09 01 configuration du serveur samba09 01 configuration du serveur samba
09 01 configuration du serveur samba
 
REX Ansible
REX AnsibleREX Ansible
REX Ansible
 
Normation solutions linux automatisation si complexes
Normation solutions linux automatisation si complexesNormation solutions linux automatisation si complexes
Normation solutions linux automatisation si complexes
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
 
01_Introduction_a_JEE.pdf
01_Introduction_a_JEE.pdf01_Introduction_a_JEE.pdf
01_Introduction_a_JEE.pdf
 
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihmTelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
 
Déploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIsDéploiement, orchestration & sécurisation d’APIs
Déploiement, orchestration & sécurisation d’APIs
 
resume-theorique-m204-v1-0-62f6e87c9c457 (1).pdf
resume-theorique-m204-v1-0-62f6e87c9c457 (1).pdfresume-theorique-m204-v1-0-62f6e87c9c457 (1).pdf
resume-theorique-m204-v1-0-62f6e87c9c457 (1).pdf
 
Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 
Les Nouveautés de zabbix 2.2 par Alain Ganuchaud
Les Nouveautés de zabbix 2.2 par Alain GanuchaudLes Nouveautés de zabbix 2.2 par Alain Ganuchaud
Les Nouveautés de zabbix 2.2 par Alain Ganuchaud
 
Alphorm.com Formation Les solutions de Haute Disponibilité sous Windows Serv...
Alphorm.com Formation Les solutions de  Haute Disponibilité sous Windows Serv...Alphorm.com Formation Les solutions de  Haute Disponibilité sous Windows Serv...
Alphorm.com Formation Les solutions de Haute Disponibilité sous Windows Serv...
 
Créer une IA capable de reconnaître des fleurs (ou autres)
Créer une IA capable de reconnaître des fleurs (ou autres)Créer une IA capable de reconnaître des fleurs (ou autres)
Créer une IA capable de reconnaître des fleurs (ou autres)
 

Mehr von Anne Nicolas

Kernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream firstKernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream firstAnne Nicolas
 
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMIKernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMIAnne Nicolas
 
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernelKernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernelAnne Nicolas
 
Kernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyKernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyAnne Nicolas
 
Kernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and futureKernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and futureAnne Nicolas
 
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...Anne Nicolas
 
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataKernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataAnne Nicolas
 
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...Anne Nicolas
 
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and BareboxEmbedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and BareboxAnne Nicolas
 
Embedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less specialEmbedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less specialAnne Nicolas
 
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre SiliconEmbedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre SiliconAnne Nicolas
 
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) pictureEmbedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) pictureAnne Nicolas
 
Embedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops wayEmbedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops wayAnne Nicolas
 
Embedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmakerEmbedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmakerAnne Nicolas
 
Embedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integrationEmbedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integrationAnne Nicolas
 
Embedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debuggingEmbedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debuggingAnne Nicolas
 
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimediaEmbedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimediaAnne Nicolas
 
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all startedKernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all startedAnne Nicolas
 
Kernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDPKernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDPAnne Nicolas
 
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)Anne Nicolas
 

Mehr von Anne Nicolas (20)

Kernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream firstKernel Recipes 2019 - Driving the industry toward upstream first
Kernel Recipes 2019 - Driving the industry toward upstream first
 
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMIKernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
Kernel Recipes 2019 - No NMI? No Problem! – Implementing Arm64 Pseudo-NMI
 
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernelKernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
Kernel Recipes 2019 - Hunting and fixing bugs all over the Linux kernel
 
Kernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are moneyKernel Recipes 2019 - Metrics are money
Kernel Recipes 2019 - Metrics are money
 
Kernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and futureKernel Recipes 2019 - Kernel documentation: past, present, and future
Kernel Recipes 2019 - Kernel documentation: past, present, and future
 
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
Embedded Recipes 2019 - Knowing your ARM from your ARSE: wading through the t...
 
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary dataKernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
Kernel Recipes 2019 - GNU poke, an extensible editor for structured binary data
 
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
Kernel Recipes 2019 - Analyzing changes to the binary interface exposed by th...
 
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and BareboxEmbedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
Embedded Recipes 2019 - Remote update adventures with RAUC, Yocto and Barebox
 
Embedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less specialEmbedded Recipes 2019 - Making embedded graphics less special
Embedded Recipes 2019 - Making embedded graphics less special
 
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre SiliconEmbedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
Embedded Recipes 2019 - Linux on Open Source Hardware and Libre Silicon
 
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) pictureEmbedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
Embedded Recipes 2019 - From maintaining I2C to the big (embedded) picture
 
Embedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops wayEmbedded Recipes 2019 - Testing firmware the devops way
Embedded Recipes 2019 - Testing firmware the devops way
 
Embedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmakerEmbedded Recipes 2019 - Herd your socs become a matchmaker
Embedded Recipes 2019 - Herd your socs become a matchmaker
 
Embedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integrationEmbedded Recipes 2019 - LLVM / Clang integration
Embedded Recipes 2019 - LLVM / Clang integration
 
Embedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debuggingEmbedded Recipes 2019 - Introduction to JTAG debugging
Embedded Recipes 2019 - Introduction to JTAG debugging
 
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimediaEmbedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
Embedded Recipes 2019 - Pipewire a new foundation for embedded multimedia
 
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all startedKernel Recipes 2019 - ftrace: Where modifying a running kernel all started
Kernel Recipes 2019 - ftrace: Where modifying a running kernel all started
 
Kernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDPKernel Recipes 2019 - Suricata and XDP
Kernel Recipes 2019 - Suricata and XDP
 
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
Kernel Recipes 2019 - Marvels of Memory Auto-configuration (SPD)
 

Les mécanismes de contrôle d'accès du kernel linux

  • 1. Linux Security Modules DYNAMICS NETWORK LABS www.dynamics-network.com
  • 2. DYNAMICS NETWORK LABS Avant propos Linux Security Modules Security ?
  • 3. DYNAMICS NETWORK LABS Avant propos
  • 4. DYNAMICS NETWORK LABS Avant propos – la sécurité globalement •La sécurité est assurée par un principe de couche, notre couche sera le contrôle d'accès •Modèle formel •Implémentation •Vérification •Critère d'évaluation (orange book – DoD) •Sécurité ou outils d'administration système et réseau
  • 5. DYNAMICS NETWORK LABS Avant propos - LSM •LSM est un framework proposant des vérifications de sécurité •Les implémentations actuelles reposent sur des modèles formels de type MAC (SELinux, Tomoyo, smack, apparmor) •Sans une de ces implémentations chargées, le kernel utilise les capabilities
  • 6. DYNAMICS NETWORK LABS Approche •Modèle formel - théorie •Contrôle d'accès •Implémentation dans Linux •Infrastructure LSM •Fonctions partagées •Pistes de réflexion, critique
  • 7. DYNAMICS NETWORK LABS Modèle formel Modèle formel
  • 8. DYNAMICS NETWORK LABS Modèle formel •Un modèle formel décrit une méthode de spécification de la politique de sécurité d'un système •En pratique, il repose sur une idée fondatrice ou une technique •Le formaliste est introduit pour décrire l'idée fondatrice ou la technique
  • 9. DYNAMICS NETWORK LABS Modèle formel •LOMAC : Low Water-Mark Mandatory Access Control - 2000 •Bell-La Padula (BLP) – 1973 •object-capability - 1981 •Take-grant - 1977 •Biba – 1977 •Matrice de contrôle d'accès – 1971 •..
  • 10. DYNAMICS NETWORK LABS Modèle formel - LOMAC •Mécanisme de water marking d'objets top secret secret confidentiel Non classé temps
  • 11. DYNAMICS NETWORK LABS Matrice de contrôle d'accès : sujet et objet sujet contrôle d'accès objets politique d'accès
  • 12. DYNAMICS NETWORK LABS Matrice de contrôle d'accès meow R /home/meow/ W aegiap R /etc/passwd W R /tmp/foo sam W
  • 13. DYNAMICS NETWORK LABS Matrice de contrôle d'accès /etc/passwd /tmp/foo /home/meow meow - - { read, write } aegiap { read } - - sam { read } { read } { read, write }
  • 14. DYNAMICS NETWORK LABS Matrice de contrôle d'accès : domaine obj3 obj0 r obj1 r r S0 r r obj2 r S1 domaine
  • 15. DYNAMICS NETWORK LABS Modèle par fonction de sécurité •Intégrité : BIBA, Clark Wilson •Confidentialité : HRU, Bell LaPadula, Take-Grant •HRU : matrice de contrôle d'accès M(sujet x objet) •Take-Grant : formalisme de graphe •Bell LaPadula : classification des objets, habilitation des sujets
  • 16. DYNAMICS NETWORK LABS Implémentation dans Linux Implémentation dans Linux
  • 17. DYNAMICS NETWORK LABS Implémentation dans Linux - framework •Infrastructure de hooks •Développement de modèle formel •Des « fonctionnalités partagées »
  • 18. DYNAMICS NETWORK LABS Les hooks LSM •include/linux/security.h •struct security_operations foo_ops { ... •.inode_create = foo_inode_create, •.task_kill = foo_task_kill, ... } •smack, SELinux, apparmor, tomoyo
  • 19. DYNAMICS NETWORK LABS Les hooks userspace appel système Contrôle d'accès accès ou refus TOCTOU : Time Of Check – Time Of Use
  • 20. DYNAMICS NETWORK LABS Fonctionnalité partagée – critère de sécurité keys non répudiation disponibilité authentification sécurité confidentialité intégrité tracabilité crypto audit IMA
  • 21. DYNAMICS NETWORK LABS Piste de réflexion Pistes de réflexion
  • 22. DYNAMICS NETWORK LABS Piste de réflexion – projet LSM Condition d'intégration des modules upstream •Il faut pouvoir expliquer la capacité défensive du nouveau module. •Pas compatible avec la gestion du projet upstream – « troll detected » •Exemples : stacking de modules, intégration tomoyo, rejet de fonctionnalités « because it's not secure »
  • 23. DYNAMICS NETWORK LABS Piste de réflexion : modèle par fonction de sécurité •Les modèles par thème (intégrité, confidentialité, etc) ne couvrent pas toutes les fonctionnalités •Impossibilité du stacking LSM •Utilisé un modèle protégeant l'intégrité ne protègera pas les autres fonctions, et il est impossible de charger les autres modèles •Un mécanisme de hook, un seul module de sécurité ? (netfilter)
  • 24. DYNAMICS NETWORK LABS Piste de reflexion : document, livres.. •Les LSM sont ils considérés comme un mécanisme essentiel du kernel ? (irq, process management, vfs, etc) •Les bouquins sur le kernel ne parlent pas des LSM
  • 25. DYNAMICS NETWORK LABS Piste de réflexion – mécanisme de hook Le mécanisme de hook rend la création de module facile •Module formel au hack – regard sur les propositions •Refus d'innovation sur les modèles formel, 30 ans
  • 26. DYNAMICS NETWORK LABS Piste de réflexion – ligne directrice Points difficiles •Politique monolithique implique configuration complexe - 350K+ lignes de conf, [application x fichier x action] •Pouvons nous rendre le contrôle d'accès dynamique ? •Pouvons nous conserver la granularité ?
  • 27. DYNAMICS NETWORK LABS Piste de réflexion – orthogonalité : granularité vs dynamisme mise à jour de la politique grossière granularité de la politique dynamisme
  • 28. DYNAMICS NETWORK LABS Piste de réflexion – ligne directrice Points difficiles •Modèle monolithique cependant des fonctions partagées •Peut on séparer par thème ? Contrôle d'accès en bloc : fs, net, mm, ... fs0 net0 mm0 fs1 net1 mm1 fs1 net0 mm2 mécanisme fs2 net2 mm2 d'échange
  • 29. Linux Security Modules DYNAMICS NETWORK LABS www.dynamics-network.com