Emmenez vos applications au bac à sable

 

 

Les enfants adorent les bacs à sable : espace immense, liberté totale ! Une seule règle à respecter : ne pas franchir les limites du bac !

Ce concept ne pouvait que séduire les administrateurs en charge du bon fonctionnement des systèmes et garant de la sécurité informatique de ces derniers.

Contexte actuel

La sécurité du poste de travail s'articule de nos jours autour de 4 axes majeurs:

  • le suivi des mises à jour du système d'exploitation
  • le suivi des mises à jour d'un anti-virus performant
  • le suivi des mises à jour d'un anti-spyware efficace
  • le suivi des mises à jour des logiciels installés
  • la sensibilisation au quotidien de l'utilisateur du poste

Les attentes de l'utilisateur se focalisent plutôt sur les besoins suivants:

  • installer la dernière application à la mode
  • installer le dernier utilitaire qui facilite la vie
  • installer la dernière version des logiciels cités ci-dessus

Autant vous dire que le système peut rapidement se transformer en véritable musée du logiciel où trôneront fièrement sur votre disque dur les lecteurs multimédia des 5 dernières années, une demi-douzaine d'utilitaires permettant le renommage en masse de photos de vacances, ainsi que quelques dizaines d'applications "30 jours d'essai".

Rappels des risques

Largement favorisées par le développement des réseaux, les menaces informatiques s'accentuent depuis plusieurs années. Selon de nombreuses publications, en 2010, les logiciels malveillants (ou "Malwares") sont classés en 1ère position au classement des menaces.

Les "Malwares" regroupent des logiciels aux technologies plus ou moins complexes, abouties et pernicieuses (virus, vers, chevaux de Troie, logiciels-espions, keyloggers, rootkits, ... etc).

Mais loin du mythe des grands centrales d'espionnage, des nouvelles cyber-guerres mondiales et autres tentatives d'asservissement des ordinateurs par les mafias reconverties, l'utilisateur final est souvent victime de la bonne vieille ruse du Cheval de Troie.

Démonstration en 4 étapes simples:

  • ce logiciel de traitement en masse de photos semble pratique
  • je clique, je télécharge, j'exécute, j'installe, Next, Next, Finish
  • je lance mon nouveau logiciel et le teste durant quelques minutes
  • finalement, il n'est pas si bien que cela, je le désinstalle

Analyse de risques

A ce stade de l'expérience menée par notre utilisateur, ce dernier  est satisfait car il a testé un nouveau logiciel, se sent confiant car il a proprement désinstallé le logiciel qui ne lui plaisait finalement pas. Néanmoins, le système vient d'être contaminé par un logiciel malveillant qui se lancera à chaque démarrage.

Que s'est-il passé précédemment ? Le logiciel tout à fait anodin qui a été testé s'est contenté d'installer les fichiers suivants sur votre disque dur :


  • Répertoire "Programmes" : traitement-photos.exe
  • Répertoire "Démarrage" : envoi-du-spam-coco.exe

Bien entendu, le premier exécutable a été supprimé à la désinstallation du logiciel. Par contre, le second est bien resté et votre anti-virus n'y a rien trouvé à redire puisque les actions entreprises ici ne sont pas "condamnables" en matière de sécurité informatique.

Principes du bac à sable

Tout comme l'enfant assis sur un tas de sable de 4 mètres-carrés qui s'imagine allongé sur une vaste plage de sable fin des Caraïbes, le bac à sable informatique va vous permettre de recréer un environnement système factice servant de leurre aux logiciels malveillants.

Un environnement "bac à sable" (appelé "Sand box" chez nos amis anglophones) limitera l'accès aux ressources d'un système - disque dur, mémoire, base de registres, ... - tout en lançant croire au logiciel exécuté à l'intérieur qu'il interfère totalement avec ces ressources (une approche plus imaginée consisterait à parler ici de "The Truman Show" numérique).

Si nous revenons quelques instants à l'expérience précédente de l'utilisateur final, le résultat serait alors le suivant sur votre disque dur :

  • Répertoire "Programmes" : bac-a-sable.exe
  • Répertoire "Sandbox / Programmes" : traitement-photos.exe
  • Répertoire "Sandbox / Démarrage" : envoi-du-spam-coco.exe
  • Répertoire "Démarrage" : (vide)

Bilan : aucun envoi de spam ne sera effectué après démarrage du système car l'environnement "bac à sable" a intercepté les demandes d'écriture sur disque pour y insérer son répertoire (ici "Sandbox") et donc seul le sous-répertoire "Démarrage" de l'environnement a été corrompu.

L'application Sandboxie

Bien évidemment, la réalité et la complexité de systèmes actuels sont tout autres et c'est pour cette raison qu'en 2004, un proof-of-concept de bac à sable pour environnement Windows est publié. Il s'agit d'un outil appelé "Sandboxie".

Initialement développé pour isoler "Internet Explorer" de manière très basique, la version actuelle 3.50 de Sandboxie supporte les dernières versions de la famille Windows (2000 à Seven, versions 32 et 64 bits) et permet de simuler les objets systèmes suivants:

  • Fichiers
  • Clés de Registre
  • Processus
  • Pilotes de communication
  • Inter-communication (Named Pipes, Mutex, Semaphores,...)

Bien entendu, le logiciel est disponible en français et propose plusieurs modes de licences (gratuit avec au-delà de 30 jours un message proposant la mise à jour vers la version payante, pour un usage personnel ou professionnel). Alors si vous n'êtes plus à une application près,
laissez-vous tenter par celle-ci.

Afin de mieux illustrer l'exemple simple et théorique cité plus haut, réalisons le test suivant :

  • lancement de Sandboxie
  • ajout de "Internet Explorer" à notre bac à sable

emmenez vos applications au bac a sable - sandboxie programmes.jpg


  • visite du site EICAR, rubrique "Anti-Malware Testfile"
  • téléchargement d'un fichier test (exemple: eicar.com.txt)

L'anti-virus du système (ici Microsoft Security Essentials) nous délivre alors bien une alerte. Si nous consultons les détails de celle-ci, le fichier incriminé est bien localisé dans l'arborescence disque de Sandboxie et non celle du système :
 

emmenez vos applications au bac a sable - alerte.jpg


Par ailleurs, Sandboxie vous permet également - en plus de nombreuses options de configuration du bas à sable - de visualiser le cloisonnement des objets systèmes :
 

emmenez vos applications au bac a sable - sandboxie fichiers.jpg




Et sous Linux ? Sans rentrer dans les arcanes techniques des systèmes Linux, sachez que l'architecture de ceux-ci inclut nativement - notamment à partir des noyaux 2.6 - un cloisonnement et une protection des ressources systèmes.

Linux Security Modules fournit une infrastructure permettant une utilisation simple des Hooks
et ainsi le développement d'une politique de sécurité logicielle. Je conseille également aux personnes intéréssées la lecture du document "SBLSM: Un mécanisme de sandbox pour Linux".

Conclusion

Les mécanismes de "bac à sable", quelque soient les systèmes, ne sont pas la solution à tous les problèmes de sécurité et ne constituent pas à eux seuls des mécanismes de défense et de protection imparables.

En revanche, ils constituent d'excellents outils pédagogiques pour ceux qui souhaitent découvrir les techniques de virtualisation d'applications sur le poste de travail.
 

Vincent Maurin

Chez Orange Business, je suis en charge du domaine Sécurité au sein de la Direction du Développement des Produits et des Services. Mes expériences passées au cœur d'entités opérationnelles m'amènent à porter un regard particulier sur les difficultés de mise en œuvre des politiques et stratégies de sécurité pour les entreprises. Sécurité, efficacité et pragmatisme sont mes principaux axes de réflexion.