Skip to main content

Aide-mémoire sur la vulnérabilité Zip Slip

Écrit par
Zip Slip Vulnerability Cheat Sheet

28 juin 2018

0 minutes de lecture

Après nos deux derniers aide-mémoire sur l’inférence de types locale en Java et les bonnes pratiques de sécurité sur GitHub, je suis ravi de poursuivre notre série d’aide-mémoire pratiques et imprimables avec une vulnérabilité de sécurité plus spécifique, qui a touché des milliers d’applications. L’aide-mémoire de ce mois-ci porte sur la vulnérabilité Zip Slip. Le 5 juin 2018, après plusieurs mois de recherche sur de nombreuses bibliothèques et projets d’archivage très connus, nous avons rendu publique une vulnérabilité permettant l’écrasement arbitraire de fichiers, baptisée Zip Slip. Cette vulnérabilité s’est manifestée à de nombreuses reprises au cours des dernières décennies, mais elle est récemment devenue beaucoup plus répandue dans des bases de code très médiatisées, au sein de nombreux écosystèmes.

Zip Slip est une forme de traversée de répertoires qui peut être exploitée lors de l’extraction des fichiers d’une archive. Le principe de cette vulnérabilité est qu’un attaquant peut accéder à des parties du système de fichiers situées en dehors du dossier cible où les fichiers devraient se trouver. L’attaquant peut ensuite écraser des fichiers exécutables et les exécuter à distance, ou attendre que le système ou l’utilisateur les lance, ce qui lui permet d’exécuter des commandes à distance sur la machine de la victime. Cette vulnérabilité peut également causer des dommages en écrasant des fichiers de configuration ou d’autres ressources sensibles. Elle peut être exploitée aussi bien sur les machines clientes (utilisateurs) que sur les serveurs.

Pour découvrir un exemple d’exploitation de cette vulnérabilité, regardez la courte vidéo ci-dessous. Elle montre comment des fichiers sensibles peuvent être écrasés, entraînant une exécution de code à distance [embed]https://www.youtube.com/watch?v=l1MT5lr4p9o\[/embed\]Cette aide-mémoire couvre quatre des principaux écosystèmes les plus touchés par la vulnérabilité Zip Slip. Pour chacun d’eux, nous présentons des exemples d’extraits de code vulnérables, suivis de code de validation permettant de corriger le problème. Plutôt que de reproduire ici l’ensemble du contenu que nous avons consacré à cette vulnérabilité, nous vous invitons à consulter directement nos recherches et notre dépôt GitHub :

Page de recherche Zip Slip - Vous y trouverez des informations générales sur Zip Slip ainsi que sur les attaques par traversée de répertoires. Elle présente les formes que peut prendre un flux d’exécution exploitable et explique comment vérifier si vous êtes vulnérable. Elle examine également des exemples d’extraits de code vulnérables pour tous les écosystèmes étudiés, ainsi que du code de validation proposé.

Dépôt communautaire Zip Slip - Pour connaître l’état le plus récent des bibliothèques vulnérables à Zip Slip, ou pour contribuer en ajoutant ou en mettant à jour des bases de code vulnérables, rendez-vous sur notre dépôt GitHub communautaire et soumettez une PR ! Snyk vous aide à détecter et à corriger les vulnérabilités connues dans vos dépendances.

Pour commencer gratuitement, créez un compte Snyk gratuit et testez votre application pour savoir si elle est vulnérable à Zip Slip ou à toute autre vulnérabilité connue.

Lire la suite

Blog

Les modèles de pointe ont trouvé les vulnérabilités. Seul l’attaquant a trouvé les chaînes d’exploitation.

L’analyse statique a détecté les failles, mais seuls des tests d’attaque en conditions réelles ont prouvé comment elles pouvaient être enchaînées pour provoquer des compromissions. Comparaison d’Evo COS, de Claude Security et de Claude Code Security.

feature insights context
Blog

Les attaques autonomes sont déjà là. La défense doit suivre leur rythme.

Les attaquants autonomes réduisent la fenêtre de défense. Découvrez comment la découverte, la correction, la validation et la prévention continues peuvent aider les équipes de sécurité à suivre le rythme.

Blog

Votre backlog de vulnérabilités n’est plus une dette technique, c’est une surface d’attaque

Un backlog de vulnérabilités qui s’allonge est plus qu’une dette technique : c’est une surface d’attaque. Découvrez pourquoi les anciennes hypothèses de risque, les attaquants automatisés et les vulnérabilités en chaîne exigent une nouvelle approche.