Un sandbox (« bac à sable » en français) est un environnement d’exécution isolé et sécurisé, dans lequel on peut lancer, tester ou analyser un programme, un fichier ou un code sans risquer le système principal.
Comme un bac à sable d’enfant : on peut y creuser, jeter, expérimenter… sans salir la maison.
À quoi ça sert ?
| Contexte | Utilisation du sandbox |
|---|---|
| Cybersécurité | Analyser un fichier suspect (ex. : pièce jointe de phishing) sans infecter la machine |
| Développement | Tester une nouvelle fonctionnalité sans casser l’application en production |
| Navigateurs web | Isoler les onglets ou les extensions pour limiter les fuites de données |
| Malware analysis | Observer le comportement d’un ransomware en temps réel (sans qu’il chiffre vos vrais fichiers) |
| Cloud / conteneurs | Exécuter du code client de façon éphémère et isolée (ex. : AWS Lambda, Docker en mode restreint) |
Comment ça fonctionne ? (principe technique)
Le sandbox utilise des mécanismes d’isolation du système d’exploitation :
- Espaces de noms (Linux :
namespaces) → le processus ne voit qu’un sous-ensemble du système - Contrôle d’accès (ex. :
seccomp,AppArmor,SELinux) → bloque les appels système dangereux - Fichiers virtuels → toute écriture reste dans un dossier temporaire, effacé à la fin
- Réseau bridé → pas d’accès internet ou vers le réseau local
Résultat : le code croit fonctionner normalement, mais ne peut ni lire vos documents, ni envoyer des données, ni endommager le disque.
Exemples concrets
1. En tant que RSSI
Vous recevez un email avec une pièce jointe .exe intitulée « facture_urgent.exe ».
Vous l’ouvrez dans un sandbox dédié (ex. : ANY.RUN, Cuckoo Sandbox, ou une VM isolée).
Le fichier tente de contacter un serveur russe et de chiffrer des fichiers… mais ne touche à rien de réel.
Vous bloquez la menace avant qu’elle n’atteigne vos collaborateurs.
2. En développement web
Vous testez une librairie JavaScript tierce pour la synthèse vocale en kabyle.
→ Vous l’exécutez dans un iframe sandboxée :
<iframe sandbox="allow-scripts" src="synthese.html"></iframe>
Même si la librairie est malveillante, elle ne peut pas accéder à vos cookies ni à l’API de votre site.
3. Navigateur moderne
Chrome, Firefox ou Edge lancent chaque onglet dans un sandbox.
Si un site web malveillant tente une exploitation, il ne peut pas accéder à vos autres onglets ni à vos fichiers locaux.
Types de sandbox
| Type | Outils / Technologies | Niveau d’isolation |
|---|---|---|
| Sandbox logiciel | Firejail, Sandboxie (Windows) | Moyen (dépend du noyau) |
| Machine virtuelle (VM) | VirtualBox, QEMU, VMware | Élevé (système complet isolé) |
| Conteneur | Docker (avec restrictions), Podman | Modéré (partage du noyau) |
| Sandbox matériel | Enclaves sécurisées (Intel SGX) | Très élevé (niveau CPU) |
| Sandbox en ligne | ANY.RUN, Joe Sandbox | Idéal pour analyse de malwares |
Pour un usage sécurisé et sobre, une VM légère (ex. : QEMU + Alpine Linux) est souvent préférable à un conteneur (moins de surface d’attaque).
Limites et vigilances
- Aucun sandbox n’est 100 % sûr : des malwares avancés détectent l’environnement et restent inactifs pour échapper à l’analyse.
- Ressources : un sandbox bien configuré consomme CPU/mémoire.
- Complexité : mal configuré, il peut donner un faux sentiment de sécurité.
Principe de défense en profondeur : le sandbox est un outil parmi d’autres, pas une solution unique.
En résumé
Un sandbox est une zone de confinement expérimental :
il permet de tester sans peur, d’analyser sans risque, et de protéger sans paralysie.