Contexte et motivations

En novembre 2025, Replit a décidé de reconstruire son infrastructure de sandbox afin de répondre aux exigences croissantes des agents autonomes d’IA. Le projet, finalisé en février 2026, a été déployé en interne avant d’être migré vers les centaines de millions de projets utilisateurs sans perte de données. Cette refonte visait trois objectifs : renforcer la sécurité face aux multiples CVE Linux (Copy Fail, Dirty Frag, Fragnesia, Bad Epoll, GhostLock, etc.), augmenter la capacité de concurrence et garantir la portabilité entre les clouds AWS, Google Cloud et Azure.

Architecture microVM

Le nouveau moteur repose sur des microVMs, des machines virtuelles légères équipées d’un noyau Linux dédié et d’un jeu minimal de périphériques virtuels. Replit utilise KVM comme hyperviseur et a choisi Cloud Hypervisor, qui partage les composants rust‑vmm avec Firecracker. Les fonctionnalités exploitées incluent virtiofs pour le partage de fichiers, les pages transparentes géantes, le hot‑plug d’appareils et la migration à chaud. Un patch interne a été ajouté pour rendre les instantanés de VM portables entre environnements bare‑metal et virtualisés.

Chaque microVM lance un processus d’init minimal qui orchestre les conteneurs runc internes. La communication entre l’hôte et le microVM s’effectue via vsock, un canal host‑to‑guest qui ne nécessite pas d’adresse IP, et utilise gRPC pour les appels de contrôle. Cette séparation double – conteneurs pour l’isolation de processus et virtualisation matérielle pour l’isolation du noyau – permet de conserver les avantages de Docker tout en évitant le partage du noyau hôte.

Sécurité et surface d’attaque réduite

Dans l’ancienne architecture, les conteneurs partageaient le noyau Linux de l’hôte, rendant chaque faille du noyau (par exemple les bugs d’escalade de privilèges LPE) potentiellement exploitable pour compromettre l’ensemble du système. Avec les microVMs, la compromission du noyau invité ne suffit plus à atteindre le noyau hôte ; l’attaquant doit franchir la barrière KVM, ce qui augmente considérablement la difficulté d’escalade. De plus, chaque sandbox bénéficie de politiques de sécurité granulaire : namespaces, profils seccomp, restrictions de capacités et accès aux périphériques sont configurés par rôle, limitant l’étendue des privilèges accordés aux processus utilisateurs.

Le design a également conservé un modèle de « least‑privilege » pour les services auxiliaires (PostgreSQL, sauvegardes Git, proxy de requêtes). Bien que la création d’une microVM par composant ait été envisagée, l’équipe a jugé que l’overhead supplémentaire n’apportait pas de bénéfice isolatif notable, préférant regrouper les services dans une même VM tout en maintenant des conteneurs séparés.

Déploiement à grande échelle

Le moteur microVM est orchestré sur Kubernetes, où des dizaines de milliers de microVMs sont gérées simultanément. La capacité de « hot‑plug » permet d’attacher dynamiquement les disques clients aux VM en cours d’exécution, facilitant le modèle de « warm‑pool » où les VM restent prêtes à recevoir de nouvelles charges. La prise en charge du « Bring Your Own Cloud » assure que les clients peuvent déployer les sandboxes dans leurs propres environnements AWS, GCP ou Azure, tout en conservant la même image de microVM grâce aux instantanés portables. Cette approche a permis à Replit de migrer les projets existants sans interruption perceptible, démontrant la viabilité d’une isolation forte à l’échelle du cloud public.