Plongée en profondeur : La vulnérabilité zero-day de MOVEit à la loupe
Les cyberattaques contre la chaîne d'approvisionnement des logiciels sont de plus en plus fréquentes, suscitant une vague de changements législatifs au niveau du gouvernement américain, tandis que les entreprises s'efforcent d'atténuer leur profil de risque étendu et d'améliorer rapidement la qualité de leurs logiciels. Rien que cette année, trois vulnérabilités de type "zero-day" ont été liées à des services de partage de fichiers, la plus importante et la plus destructrice étant l'exploit de masse MOVEit.
Mené par le groupe de ransomware CL0P, l'incident MOVEit domine l'actualité de la cybersécurité depuis un certain temps, avec plus de 1 000 organisations touchées. Ce nombre devrait continuer à augmenter, ce qui en fait l'une des attaques les plus puissantes contre la chaîne d'approvisionnement en logiciels depuis Solarwinds en 2021.
Le catalyseur de cette violation généralisée a été un groupe de vulnérabilités d'injection SQL, qui ont reçu un score de gravité de 9,8 sur 10 de la part de MITRE. L'injection SQL est la bête noire des professionnels de la sécurité depuis la fin des années 90 et, bien qu'elle soit assez simple à corriger, elle continue à se frayer un chemin dans les logiciels modernes et à offrir aux acteurs de la menace un tapis rouge vers les données sensibles.
Le scénario MOVEit est un peu différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu connaître auparavant, et vous pouvez tester vos compétences de tueur de SQLi dans une simulation en direct ici :
>>> PLAY THE MOVEit MISSION (Jouez la mission MOVEit)
La vulnérabilité : Injection SQL
Comment l'injection SQL a-t-elle été utilisée pour exploiter l'application de transfert de fichiers MOVEit de Progress Software ?
Le groupe de ransomware CL0P a réussi à exploiter la vulnérabilité CVE-2023-34362 d'injection SQL, ce qui lui a permis d'accéder sans restriction et sans autorisation à la base de données de MOVEit. À partir de là, ils ont pu installer LEMURLOOT, un shell web qui leur a permis d'exécuter plusieurs processus critiques à haut risque, tels que la récupération des paramètres du système, l'énumération de la base de données SQL, la récupération de fichiers à partir du système de transfert MOVEit et la création d'un nouveau compte avec des privilèges d'administration complets.
Il va sans dire que ce vecteur d'attaque peut être le résultat d'une erreur relativement simple - que l'on pourrait mettre sur le compte de l'utilisation perpétuelle de mauvais modèles de codage - mais son potentiel à causer des problèmes continus au niveau de l'entreprise est immense.
Comparable à l'exploit MOVEit, jetons un coup d'œil à cet explicatif SQLi, qui simule la méthode d'injection et d'exécution d'un code SQL malveillant :
Chaîne de requête et variable :
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
aboutira à la requête suivante :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'" ;
... et avec une entrée malveillante :
string emailAddress = "contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--" ;
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
il deviendra :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--'" ;
Comment cela se présente-t-il en vol ?


Notez qu'en raison de la concaténation de chaînes, l'entrée est interprétée comme une syntaxe SQL. Tout d'abord, un guillemet simple est ajouté pour s'assurer que l'instruction SELECT est une syntaxe SQL valide. Ensuite, un point-virgule est ajouté pour terminer la première instruction.
Une fois que cela est en place, une instruction DELETE valide est ajoutée, suivie de deux traits d'union pour commenter les caractères de fin (le guillemet simple). Une instruction UPDATE pourrait tout aussi bien être ajoutée, par exemple, si le code SQL malveillant consistait à mettre à jour les rôles ou les mots de passe des utilisateurs.
Essayez-le vous-même dans cette mission jouable :
Bien que relativement simple, SQLi reste un vecteur d'attaque puissant et bien trop courant. Dans le cas de MOVEit, cet exploit a permis l'installation d'une porte dérobée préjudiciable et d'un groupe d'autres attaques de gravité similaire.
Comment réduire le risque d'injection SQL ?
Les entreprises qui utilisent MOVEit dans le cadre de leurs activités doivent impérativement suivre les conseils de Progress Software en matière de remédiation. Cela inclut, sans s'y limiter, l'application des correctifs de sécurité en tant que priorité de niveau d'urgence.
Pour l'injection SQL en général, consultez notre guide complet.
Vous voulez en savoir plus sur la façon d'écrire du code sécurisé et de réduire les risques ? Essayez gratuitement notre défi d'injection SQL.
Si vous souhaitez obtenir d'autres conseils de codage gratuits, consultez Secure Code Coach pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.


Le scénario MOVEit est un peu différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu connaître auparavant, et vous pouvez tester vos compétences de tueur de SQLi dans une simulation en direct ici même.

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démonstrationLaura Verheyde est développeuse de logiciels à l'adresse Secure Code Warrior . Elle se consacre à la recherche de vulnérabilités et à la création de contenu pour Missions et Coding labs.


Les cyberattaques contre la chaîne d'approvisionnement des logiciels sont de plus en plus fréquentes, suscitant une vague de changements législatifs au niveau du gouvernement américain, tandis que les entreprises s'efforcent d'atténuer leur profil de risque étendu et d'améliorer rapidement la qualité de leurs logiciels. Rien que cette année, trois vulnérabilités de type "zero-day" ont été liées à des services de partage de fichiers, la plus importante et la plus destructrice étant l'exploit de masse MOVEit.
Mené par le groupe de ransomware CL0P, l'incident MOVEit domine l'actualité de la cybersécurité depuis un certain temps, avec plus de 1 000 organisations touchées. Ce nombre devrait continuer à augmenter, ce qui en fait l'une des attaques les plus puissantes contre la chaîne d'approvisionnement en logiciels depuis Solarwinds en 2021.
Le catalyseur de cette violation généralisée a été un groupe de vulnérabilités d'injection SQL, qui ont reçu un score de gravité de 9,8 sur 10 de la part de MITRE. L'injection SQL est la bête noire des professionnels de la sécurité depuis la fin des années 90 et, bien qu'elle soit assez simple à corriger, elle continue à se frayer un chemin dans les logiciels modernes et à offrir aux acteurs de la menace un tapis rouge vers les données sensibles.
Le scénario MOVEit est un peu différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu connaître auparavant, et vous pouvez tester vos compétences de tueur de SQLi dans une simulation en direct ici :
>>> PLAY THE MOVEit MISSION (Jouez la mission MOVEit)
La vulnérabilité : Injection SQL
Comment l'injection SQL a-t-elle été utilisée pour exploiter l'application de transfert de fichiers MOVEit de Progress Software ?
Le groupe de ransomware CL0P a réussi à exploiter la vulnérabilité CVE-2023-34362 d'injection SQL, ce qui lui a permis d'accéder sans restriction et sans autorisation à la base de données de MOVEit. À partir de là, ils ont pu installer LEMURLOOT, un shell web qui leur a permis d'exécuter plusieurs processus critiques à haut risque, tels que la récupération des paramètres du système, l'énumération de la base de données SQL, la récupération de fichiers à partir du système de transfert MOVEit et la création d'un nouveau compte avec des privilèges d'administration complets.
Il va sans dire que ce vecteur d'attaque peut être le résultat d'une erreur relativement simple - que l'on pourrait mettre sur le compte de l'utilisation perpétuelle de mauvais modèles de codage - mais son potentiel à causer des problèmes continus au niveau de l'entreprise est immense.
Comparable à l'exploit MOVEit, jetons un coup d'œil à cet explicatif SQLi, qui simule la méthode d'injection et d'exécution d'un code SQL malveillant :
Chaîne de requête et variable :
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
aboutira à la requête suivante :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'" ;
... et avec une entrée malveillante :
string emailAddress = "contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--" ;
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
il deviendra :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--'" ;
Comment cela se présente-t-il en vol ?


Notez qu'en raison de la concaténation de chaînes, l'entrée est interprétée comme une syntaxe SQL. Tout d'abord, un guillemet simple est ajouté pour s'assurer que l'instruction SELECT est une syntaxe SQL valide. Ensuite, un point-virgule est ajouté pour terminer la première instruction.
Une fois que cela est en place, une instruction DELETE valide est ajoutée, suivie de deux traits d'union pour commenter les caractères de fin (le guillemet simple). Une instruction UPDATE pourrait tout aussi bien être ajoutée, par exemple, si le code SQL malveillant consistait à mettre à jour les rôles ou les mots de passe des utilisateurs.
Essayez-le vous-même dans cette mission jouable :
Bien que relativement simple, SQLi reste un vecteur d'attaque puissant et bien trop courant. Dans le cas de MOVEit, cet exploit a permis l'installation d'une porte dérobée préjudiciable et d'un groupe d'autres attaques de gravité similaire.
Comment réduire le risque d'injection SQL ?
Les entreprises qui utilisent MOVEit dans le cadre de leurs activités doivent impérativement suivre les conseils de Progress Software en matière de remédiation. Cela inclut, sans s'y limiter, l'application des correctifs de sécurité en tant que priorité de niveau d'urgence.
Pour l'injection SQL en général, consultez notre guide complet.
Vous voulez en savoir plus sur la façon d'écrire du code sécurisé et de réduire les risques ? Essayez gratuitement notre défi d'injection SQL.
Si vous souhaitez obtenir d'autres conseils de codage gratuits, consultez Secure Code Coach pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.

Les cyberattaques contre la chaîne d'approvisionnement des logiciels sont de plus en plus fréquentes, suscitant une vague de changements législatifs au niveau du gouvernement américain, tandis que les entreprises s'efforcent d'atténuer leur profil de risque étendu et d'améliorer rapidement la qualité de leurs logiciels. Rien que cette année, trois vulnérabilités de type "zero-day" ont été liées à des services de partage de fichiers, la plus importante et la plus destructrice étant l'exploit de masse MOVEit.
Mené par le groupe de ransomware CL0P, l'incident MOVEit domine l'actualité de la cybersécurité depuis un certain temps, avec plus de 1 000 organisations touchées. Ce nombre devrait continuer à augmenter, ce qui en fait l'une des attaques les plus puissantes contre la chaîne d'approvisionnement en logiciels depuis Solarwinds en 2021.
Le catalyseur de cette violation généralisée a été un groupe de vulnérabilités d'injection SQL, qui ont reçu un score de gravité de 9,8 sur 10 de la part de MITRE. L'injection SQL est la bête noire des professionnels de la sécurité depuis la fin des années 90 et, bien qu'elle soit assez simple à corriger, elle continue à se frayer un chemin dans les logiciels modernes et à offrir aux acteurs de la menace un tapis rouge vers les données sensibles.
Le scénario MOVEit est un peu différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu connaître auparavant, et vous pouvez tester vos compétences de tueur de SQLi dans une simulation en direct ici :
>>> PLAY THE MOVEit MISSION (Jouez la mission MOVEit)
La vulnérabilité : Injection SQL
Comment l'injection SQL a-t-elle été utilisée pour exploiter l'application de transfert de fichiers MOVEit de Progress Software ?
Le groupe de ransomware CL0P a réussi à exploiter la vulnérabilité CVE-2023-34362 d'injection SQL, ce qui lui a permis d'accéder sans restriction et sans autorisation à la base de données de MOVEit. À partir de là, ils ont pu installer LEMURLOOT, un shell web qui leur a permis d'exécuter plusieurs processus critiques à haut risque, tels que la récupération des paramètres du système, l'énumération de la base de données SQL, la récupération de fichiers à partir du système de transfert MOVEit et la création d'un nouveau compte avec des privilèges d'administration complets.
Il va sans dire que ce vecteur d'attaque peut être le résultat d'une erreur relativement simple - que l'on pourrait mettre sur le compte de l'utilisation perpétuelle de mauvais modèles de codage - mais son potentiel à causer des problèmes continus au niveau de l'entreprise est immense.
Comparable à l'exploit MOVEit, jetons un coup d'œil à cet explicatif SQLi, qui simule la méthode d'injection et d'exécution d'un code SQL malveillant :
Chaîne de requête et variable :
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
aboutira à la requête suivante :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'" ;
... et avec une entrée malveillante :
string emailAddress = "contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--" ;
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
il deviendra :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--'" ;
Comment cela se présente-t-il en vol ?


Notez qu'en raison de la concaténation de chaînes, l'entrée est interprétée comme une syntaxe SQL. Tout d'abord, un guillemet simple est ajouté pour s'assurer que l'instruction SELECT est une syntaxe SQL valide. Ensuite, un point-virgule est ajouté pour terminer la première instruction.
Une fois que cela est en place, une instruction DELETE valide est ajoutée, suivie de deux traits d'union pour commenter les caractères de fin (le guillemet simple). Une instruction UPDATE pourrait tout aussi bien être ajoutée, par exemple, si le code SQL malveillant consistait à mettre à jour les rôles ou les mots de passe des utilisateurs.
Essayez-le vous-même dans cette mission jouable :
Bien que relativement simple, SQLi reste un vecteur d'attaque puissant et bien trop courant. Dans le cas de MOVEit, cet exploit a permis l'installation d'une porte dérobée préjudiciable et d'un groupe d'autres attaques de gravité similaire.
Comment réduire le risque d'injection SQL ?
Les entreprises qui utilisent MOVEit dans le cadre de leurs activités doivent impérativement suivre les conseils de Progress Software en matière de remédiation. Cela inclut, sans s'y limiter, l'application des correctifs de sécurité en tant que priorité de niveau d'urgence.
Pour l'injection SQL en général, consultez notre guide complet.
Vous voulez en savoir plus sur la façon d'écrire du code sécurisé et de réduire les risques ? Essayez gratuitement notre défi d'injection SQL.
Si vous souhaitez obtenir d'autres conseils de codage gratuits, consultez Secure Code Coach pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.

Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.
Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Voir le rapportRéservez une démonstrationLaura Verheyde est développeuse de logiciels à l'adresse Secure Code Warrior . Elle se consacre à la recherche de vulnérabilités et à la création de contenu pour Missions et Coding labs.
Les cyberattaques contre la chaîne d'approvisionnement des logiciels sont de plus en plus fréquentes, suscitant une vague de changements législatifs au niveau du gouvernement américain, tandis que les entreprises s'efforcent d'atténuer leur profil de risque étendu et d'améliorer rapidement la qualité de leurs logiciels. Rien que cette année, trois vulnérabilités de type "zero-day" ont été liées à des services de partage de fichiers, la plus importante et la plus destructrice étant l'exploit de masse MOVEit.
Mené par le groupe de ransomware CL0P, l'incident MOVEit domine l'actualité de la cybersécurité depuis un certain temps, avec plus de 1 000 organisations touchées. Ce nombre devrait continuer à augmenter, ce qui en fait l'une des attaques les plus puissantes contre la chaîne d'approvisionnement en logiciels depuis Solarwinds en 2021.
Le catalyseur de cette violation généralisée a été un groupe de vulnérabilités d'injection SQL, qui ont reçu un score de gravité de 9,8 sur 10 de la part de MITRE. L'injection SQL est la bête noire des professionnels de la sécurité depuis la fin des années 90 et, bien qu'elle soit assez simple à corriger, elle continue à se frayer un chemin dans les logiciels modernes et à offrir aux acteurs de la menace un tapis rouge vers les données sensibles.
Le scénario MOVEit est un peu différent de ce que de nombreux développeurs et professionnels de l'AppSec ont pu connaître auparavant, et vous pouvez tester vos compétences de tueur de SQLi dans une simulation en direct ici :
>>> PLAY THE MOVEit MISSION (Jouez la mission MOVEit)
La vulnérabilité : Injection SQL
Comment l'injection SQL a-t-elle été utilisée pour exploiter l'application de transfert de fichiers MOVEit de Progress Software ?
Le groupe de ransomware CL0P a réussi à exploiter la vulnérabilité CVE-2023-34362 d'injection SQL, ce qui lui a permis d'accéder sans restriction et sans autorisation à la base de données de MOVEit. À partir de là, ils ont pu installer LEMURLOOT, un shell web qui leur a permis d'exécuter plusieurs processus critiques à haut risque, tels que la récupération des paramètres du système, l'énumération de la base de données SQL, la récupération de fichiers à partir du système de transfert MOVEit et la création d'un nouveau compte avec des privilèges d'administration complets.
Il va sans dire que ce vecteur d'attaque peut être le résultat d'une erreur relativement simple - que l'on pourrait mettre sur le compte de l'utilisation perpétuelle de mauvais modèles de codage - mais son potentiel à causer des problèmes continus au niveau de l'entreprise est immense.
Comparable à l'exploit MOVEit, jetons un coup d'œil à cet explicatif SQLi, qui simule la méthode d'injection et d'exécution d'un code SQL malveillant :
Chaîne de requête et variable :
string emailAddress ="contact@scw.com";
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
aboutira à la requête suivante :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com'" ;
... et avec une entrée malveillante :
string emailAddress = "contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--" ;
var query = $"SELECT u.UserName From Users as u WHERE u.Email = '{emailAddress}'";
il deviendra :
var query = $"SELECT u.UserName From Users as u WHERE u.Email = 'contact@scw.com' ; DELETE FROM Invoices WHERE Id = 2;--'" ;
Comment cela se présente-t-il en vol ?


Notez qu'en raison de la concaténation de chaînes, l'entrée est interprétée comme une syntaxe SQL. Tout d'abord, un guillemet simple est ajouté pour s'assurer que l'instruction SELECT est une syntaxe SQL valide. Ensuite, un point-virgule est ajouté pour terminer la première instruction.
Une fois que cela est en place, une instruction DELETE valide est ajoutée, suivie de deux traits d'union pour commenter les caractères de fin (le guillemet simple). Une instruction UPDATE pourrait tout aussi bien être ajoutée, par exemple, si le code SQL malveillant consistait à mettre à jour les rôles ou les mots de passe des utilisateurs.
Essayez-le vous-même dans cette mission jouable :
Bien que relativement simple, SQLi reste un vecteur d'attaque puissant et bien trop courant. Dans le cas de MOVEit, cet exploit a permis l'installation d'une porte dérobée préjudiciable et d'un groupe d'autres attaques de gravité similaire.
Comment réduire le risque d'injection SQL ?
Les entreprises qui utilisent MOVEit dans le cadre de leurs activités doivent impérativement suivre les conseils de Progress Software en matière de remédiation. Cela inclut, sans s'y limiter, l'application des correctifs de sécurité en tant que priorité de niveau d'urgence.
Pour l'injection SQL en général, consultez notre guide complet.
Vous voulez en savoir plus sur la façon d'écrire du code sécurisé et de réduire les risques ? Essayez gratuitement notre défi d'injection SQL.
Si vous souhaitez obtenir d'autres conseils de codage gratuits, consultez Secure Code Coach pour vous aider à rester au fait des meilleures pratiques en matière de codage sécurisé.
Table des matières

Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démonstrationTéléchargerRessources pour vous aider à démarrer
AI Coding Assistants : Un guide de navigation sécurisée pour la prochaine génération de développeurs
Les grands modèles linguistiques offrent des avantages irrésistibles en termes de rapidité et de productivité, mais ils présentent également des risques indéniables pour l'entreprise. Les garde-fous traditionnels ne suffisent pas à contrôler le déluge. Les développeurs ont besoin de compétences précises et vérifiées en matière de sécurité pour identifier et prévenir les failles de sécurité dès le début du cycle de développement du logiciel.
Sécurité dès la conception : Définir les meilleures pratiques, permettre aux développeurs et évaluer les résultats de la sécurité préventive
Dans ce document de recherche, les cofondateurs de Secure Code Warrior , Pieter Danhieux et Matias Madou, Ph.D., ainsi que des contributeurs experts, Chris Inglis, ancien directeur national américain de la cybernétique (aujourd'hui conseiller stratégique du Paladin Capital Group), et Devin Lynch, directeur principal du Paladin Global Institute, révèleront les principales conclusions de plus de vingt entretiens approfondis avec des responsables de la sécurité des entreprises, y compris des RSSI, un vice-président de la sécurité des applications et des professionnels de la sécurité des logiciels.
Ressources pour vous aider à démarrer
10 000+ activités d'apprentissage du code sécurisé : Une décennie de gestion des risques pour les développeurs
Célébration de plus de 10 000 activités d'apprentissage du code sécurisé et d'une décennie d'habilitation des développeurs à réduire les risques, à améliorer la qualité du code et à aborder en toute confiance le développement assisté par l'IA.
Définir la norme : SCW publie des règles de sécurité gratuites pour le codage de l'IA sur GitHub
Le développement assisté par IA n'est plus un horizon : il est bel et bien là, et il transforme rapidement la manière dont les logiciels sont écrits. Des outils comme GitHub Copilot, Cline, Roo, Cursor, Aider et Windsurf transforment les développeurs en copilotes, permettant des itérations plus rapides et accélérant tout, du prototypage aux projets de refactorisation majeurs.
Bouclez la boucle des vulnérabilités avec Secure Code Warrior + HackerOne
Secure Code Warrior est heureux d'annoncer sa nouvelle intégration avec HackerOne, un leader dans les solutions de sécurité offensive. Ensemble, nous construisons un écosystème puissant et intégré. HackerOne met le doigt sur les vulnérabilités dans les environnements réels, en exposant le "quoi" et le "où" des problèmes de sécurité.