• [^] # Re: SELinux ?

    Posté par (site web personnel) . En réponse au journal Davfi, le premier antivirus libre français.. Évalué à 10.

    selinux peut le faire, en mettant des labels sur les process, les utilisateurs, les ports réseaux, etc. Tu peux même aller à la granularité d'une base de données postgresql, ie, j'ai le droit de lire les données de tel base, mais pas tel autre.

    C'est tout le cœur des modèles de sécurité comme :
    https://en.wikipedia.org/wiki/Bell%E2%80%93LaPadula_model

    La façon dont les distribs utilisent selinux, c'est plus pour s'assurer que le processus toto n'a le droit d'utiliser que le port 80 et aucun autre, ou n'a le droit de faire que tel appel systéme, ou lire tel fichier avec tel label. Ça ne protège pas de tout ( par exemple, un serveur apache compromis va toujours avoir accès à ton certificat privé ), mais ça bloque pas mal d'attaque ( par exemple, ton serveur apache, même en root, va pas pouvoir piquer la clé ssh du serveur avec un politique selinux par défaut, sauf erreur de ma part ).

    Si le but de davfi est de faire une sandbox, il y a déja plein de projet sur ça, basé sur apparmor, sur selinux, sur seccomp, etc. Chercher arkose, glimpse, libvirt-sandbox, ou voir les différentes présentations sur chrome, sur la séparation de privilège.

    Si l'idée, c'est de faire comme viguard, alors des outils libres existent déjà depuis 5 ans :
    http://events.ccc.de/congress/2008/Fahrplan/events/3002.en.html
    Et en cherchant un peu, tu va tomber sur des choses comme dirtbox, ou ce genre de post de blog :
    http://nuald.blogspot.fr/2010/10/shellcode-detection-using-libemu.html