Icônes SCW
héros bg sans séparateur
Blog

Coders Conquer Security OWASP Top 10 API-Serie — Sicherheitsfunktionen deaktiviert/Debug-Funktionen aktiviert/Unzulässige Berechtigungen

Matias Madou, Ph.D.
Publié le 11 novembre 2020
Dernière mise à jour le 9 mars 2026

Si la plupart des vulnérabilités de cette liste sont assez spécifiques aux API, le problème des fonctions de sécurité désactivées, des fonctions de débogage activées et des autorisations incorrectes peut se poser n'importe où. Il est probablement un peu plus répandu dans les API, mais les attaquants tentent souvent de trouver des failles non corrigées et des fichiers ou répertoires non protégés n'importe où dans un réseau. Le fait de tomber sur une API dont le débogage est activé ou dont les fonctions de sécurité sont désactivées ne fait que faciliter leur travail infâme. Pire encore, il existe des outils automatisés permettant de détecter et d'exploiter les mauvaises configurations de sécurité. Si vous en avez dans votre environnement, il y a donc de fortes chances qu'elles soient exploitées, ce qui explique pourquoi cette vulnérabilité figure sur la liste de l'OWASP des failles dangereuses des API.

Avant de passer aux choses sérieuses, essayez de résoudre ce problème de débogage :

Comment les fonctions de sécurité désactivées, les fonctions de débogage activées et les autorisations incorrectes se glissent-elles dans une API ?

Pour comprendre comment cette faille multidimensionnelle de l'API est ajoutée aux réseaux, nous devons la décomposer en ses éléments constitutifs. Commençons par le problème des fonctions de débogage activées. Le débogage est un outil utile qui aide les développeurs à comprendre pourquoi les applications ne fonctionnent pas correctement ou font des erreurs. Lorsque le débogage est activé, les erreurs et les exceptions génèrent des pages d'erreur détaillées permettant aux développeurs de voir ce qui n'a pas fonctionné et de résoudre les problèmes. Il est tout à fait possible d'activer le débogage lorsqu'une application est encore en cours de développement.

Cependant, il y a une raison pour laquelle la plupart des frameworks sont accompagnés d'avertissements concernant l'utilisation du mode débogage dans un environnement de production, probablement directement dans le code où le débogage est activé. Par exemple, dans le code où le débogage est activé :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le débogage activé en production !
DEBUG = True

Dans cet exemple, le débogage a été activé. L'application Django génère des pages d'erreur détaillées lorsqu'une exception est levée. Si cela est fait dans un environnement de production, un adversaire aurait accès à ces pages d'erreur, qui contiennent des métadonnées sur l'environnement. Bien que le débogage soit désactivé par défaut dans la plupart des frameworks, il est facile d'oublier de le réactiver s'il est activé au cours d'un long processus de développement. Ensuite, lorsque l'application est transférée dans un environnement de production, elle fournit aux attaquants de nombreuses informations sur la manière de compromettre une application, voire un serveur ou un réseau entier.

Si l'activation du mode débogage est généralement un problème isolé, les vulnérabilités liées aux autorisations incorrectes et aux fonctions de sécurité désactivées sont souvent associées. Par exemple, dans un scénario réel fourni par l'OWASP, un attaquant a utilisé un moteur de recherche pour trouver une base de données qui était accidentellement connectée à l'internet. Comme le système de gestion de base de données populaire utilisait sa configuration par défaut, l'authentification était désactivée. Ainsi, en combinant les vulnérabilités liées aux autorisations inappropriées et aux fonctions de sécurité désactivées, l'attaquant a pu accéder à des millions d'enregistrements contenant des informations confidentielles, des préférences personnelles et des données d'authentification.

Élimination des vulnérabilités liées aux fonctions de sécurité désactivées, aux fonctions de débogage activées et aux autorisations incorrectes

Vous devrez probablement adopter une double approche pour éliminer cette vulnérabilité. Pour éliminer la partie du problème liée à l'activation du débogage, ajoutez simplement une vérification au processus de développement afin de vous assurer que le débogage est désactivé avant de transférer une API ou une application dans l'environnement de production. Dans notre exemple, la commande appropriée serait la suivante :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le debug activé en production !
DEBUG = False

Les fonctionnalités de débogage de l'application Django sont maintenant désactivées avec l'indicateur DEBUG configuré à False. Aucune page d'erreur ne sera générée en réponse aux erreurs. Si un adversaire accède quand même aux pages d'erreur, elles ne contiendront pas de métadonnées utiles et ne constitueront pas un risque pour l'application.

Il est un peu plus difficile d'éliminer les vulnérabilités liées aux fonctions de sécurité désactivées et aux autorisations inappropriées, car elles peuvent englober un large éventail de vulnérabilités spécifiques. La meilleure façon de les arrêter est de développer un processus standard et reproductible pour permettre le déploiement rapide et facile des actifs verrouillés dans l'environnement de production.

Même dans ce cas, vous devez créer un processus dans lequel les fichiers d'orchestration, les composants d'API et les services en nuage tels que les autorisations de seau Amazon S3 sont constamment examinés et mis à jour. Cet examen doit également évaluer l'efficacité globale des paramètres de sécurité dans l'ensemble de l'environnement au fil du temps, afin de s'assurer que l'organisation améliore constamment la sécurité de ses API.

Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo de la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.


Consulter la ressource
Consulter la ressource

Es ist wahrscheinlich etwas häufiger in APIs, aber Angreifer versuchen oft, ungepatchte Fehler und ungeschützte Dateien oder Verzeichnisse überall in einem Netzwerk zu finden. Wenn sie auf eine API stoßen, bei der Debugging aktiviert oder Sicherheitsfunktionen deaktiviert sind, wird ihre schändliche Arbeit nur ein wenig einfacher.

Souhaitez-vous en savoir davantage ?

Matias Madou, Ph.D. ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent in Anwendungssicherheit mit Schwerpunkt auf statischen Analyselösungen. Später kam er zu Fortify in den USA, wo er feststellte, dass es nicht ausreichte, ausschließlich Codeprobleme zu erkennen, ohne Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, die Sicherheitslast verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht als Teil von Team Awesome an seinem Schreibtisch sitzt, steht er gerne auf der Bühne und präsentiert auf Konferenzen wie der RSA Conference, BlackHat und DefCon.

En savoir plus

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.

Réserver une démonstration
Partager sur :
marques LinkedInSocialLogo x
Auteur
Matias Madou, Ph.D.
Publié le 11 novembre 2020

Matias Madou, Ph.D. ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent in Anwendungssicherheit mit Schwerpunkt auf statischen Analyselösungen. Später kam er zu Fortify in den USA, wo er feststellte, dass es nicht ausreichte, ausschließlich Codeprobleme zu erkennen, ohne Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, die Sicherheitslast verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht als Teil von Team Awesome an seinem Schreibtisch sitzt, steht er gerne auf der Bühne und präsentiert auf Konferenzen wie der RSA Conference, BlackHat und DefCon.

Matias ist Forscher und Entwickler mit mehr als 15 Jahren praktischer Erfahrung in der Softwaresicherheit. Er hat Lösungen für Unternehmen wie Fortify Software und sein eigenes Unternehmen Sensei Security entwickelt. Im Laufe seiner Karriere hat Matias mehrere Forschungsprojekte zur Anwendungssicherheit geleitet, die zu kommerziellen Produkten geführt haben, und verfügt über mehr als 10 Patente. Wenn er nicht an seinem Schreibtisch ist, war Matias als Ausbilder für fortgeschrittene Schulungen zur Anwendungssicherheit tätig und hält regelmäßig Vorträge auf globalen Konferenzen wie RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec und BruCon.

Matias hat an der Universität Gent in Computertechnik promoviert, wo er Anwendungssicherheit durch Programmverschleierung studierte, um das Innenleben einer Anwendung zu verbergen.

Partager sur :
marques LinkedInSocialLogo x

Si la plupart des vulnérabilités de cette liste sont assez spécifiques aux API, le problème des fonctions de sécurité désactivées, des fonctions de débogage activées et des autorisations incorrectes peut se poser n'importe où. Il est probablement un peu plus répandu dans les API, mais les attaquants tentent souvent de trouver des failles non corrigées et des fichiers ou répertoires non protégés n'importe où dans un réseau. Le fait de tomber sur une API dont le débogage est activé ou dont les fonctions de sécurité sont désactivées ne fait que faciliter leur travail infâme. Pire encore, il existe des outils automatisés permettant de détecter et d'exploiter les mauvaises configurations de sécurité. Si vous en avez dans votre environnement, il y a donc de fortes chances qu'elles soient exploitées, ce qui explique pourquoi cette vulnérabilité figure sur la liste de l'OWASP des failles dangereuses des API.

Avant de passer aux choses sérieuses, essayez de résoudre ce problème de débogage :

Comment les fonctions de sécurité désactivées, les fonctions de débogage activées et les autorisations incorrectes se glissent-elles dans une API ?

Pour comprendre comment cette faille multidimensionnelle de l'API est ajoutée aux réseaux, nous devons la décomposer en ses éléments constitutifs. Commençons par le problème des fonctions de débogage activées. Le débogage est un outil utile qui aide les développeurs à comprendre pourquoi les applications ne fonctionnent pas correctement ou font des erreurs. Lorsque le débogage est activé, les erreurs et les exceptions génèrent des pages d'erreur détaillées permettant aux développeurs de voir ce qui n'a pas fonctionné et de résoudre les problèmes. Il est tout à fait possible d'activer le débogage lorsqu'une application est encore en cours de développement.

Cependant, il y a une raison pour laquelle la plupart des frameworks sont accompagnés d'avertissements concernant l'utilisation du mode débogage dans un environnement de production, probablement directement dans le code où le débogage est activé. Par exemple, dans le code où le débogage est activé :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le débogage activé en production !
DEBUG = True

Dans cet exemple, le débogage a été activé. L'application Django génère des pages d'erreur détaillées lorsqu'une exception est levée. Si cela est fait dans un environnement de production, un adversaire aurait accès à ces pages d'erreur, qui contiennent des métadonnées sur l'environnement. Bien que le débogage soit désactivé par défaut dans la plupart des frameworks, il est facile d'oublier de le réactiver s'il est activé au cours d'un long processus de développement. Ensuite, lorsque l'application est transférée dans un environnement de production, elle fournit aux attaquants de nombreuses informations sur la manière de compromettre une application, voire un serveur ou un réseau entier.

Si l'activation du mode débogage est généralement un problème isolé, les vulnérabilités liées aux autorisations incorrectes et aux fonctions de sécurité désactivées sont souvent associées. Par exemple, dans un scénario réel fourni par l'OWASP, un attaquant a utilisé un moteur de recherche pour trouver une base de données qui était accidentellement connectée à l'internet. Comme le système de gestion de base de données populaire utilisait sa configuration par défaut, l'authentification était désactivée. Ainsi, en combinant les vulnérabilités liées aux autorisations inappropriées et aux fonctions de sécurité désactivées, l'attaquant a pu accéder à des millions d'enregistrements contenant des informations confidentielles, des préférences personnelles et des données d'authentification.

Élimination des vulnérabilités liées aux fonctions de sécurité désactivées, aux fonctions de débogage activées et aux autorisations incorrectes

Vous devrez probablement adopter une double approche pour éliminer cette vulnérabilité. Pour éliminer la partie du problème liée à l'activation du débogage, ajoutez simplement une vérification au processus de développement afin de vous assurer que le débogage est désactivé avant de transférer une API ou une application dans l'environnement de production. Dans notre exemple, la commande appropriée serait la suivante :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le debug activé en production !
DEBUG = False

Les fonctionnalités de débogage de l'application Django sont maintenant désactivées avec l'indicateur DEBUG configuré à False. Aucune page d'erreur ne sera générée en réponse aux erreurs. Si un adversaire accède quand même aux pages d'erreur, elles ne contiendront pas de métadonnées utiles et ne constitueront pas un risque pour l'application.

Il est un peu plus difficile d'éliminer les vulnérabilités liées aux fonctions de sécurité désactivées et aux autorisations inappropriées, car elles peuvent englober un large éventail de vulnérabilités spécifiques. La meilleure façon de les arrêter est de développer un processus standard et reproductible pour permettre le déploiement rapide et facile des actifs verrouillés dans l'environnement de production.

Même dans ce cas, vous devez créer un processus dans lequel les fichiers d'orchestration, les composants d'API et les services en nuage tels que les autorisations de seau Amazon S3 sont constamment examinés et mis à jour. Cet examen doit également évaluer l'efficacité globale des paramètres de sécurité dans l'ensemble de l'environnement au fil du temps, afin de s'assurer que l'organisation améliore constamment la sécurité de ses API.

Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo de la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.


Consulter la ressource
Consulter la ressource

Veuillez remplir le formulaire ci-dessous pour télécharger le rapport.

Nous sollicitons votre autorisation pour vous envoyer des informations sur nos produits et/ou des sujets connexes liés au codage sécurisé. Nous traitons toujours vos données personnelles avec le plus grand soin et ne les vendons jamais à d'autres entreprises à des fins de marketing.

Soumettre
icône de réussite scw
icône d'erreur scw
Pour envoyer le formulaire, veuillez activer les cookies « Analytics ». Une fois que vous avez terminé, vous pouvez les désactiver à tout moment.

Si la plupart des vulnérabilités de cette liste sont assez spécifiques aux API, le problème des fonctions de sécurité désactivées, des fonctions de débogage activées et des autorisations incorrectes peut se poser n'importe où. Il est probablement un peu plus répandu dans les API, mais les attaquants tentent souvent de trouver des failles non corrigées et des fichiers ou répertoires non protégés n'importe où dans un réseau. Le fait de tomber sur une API dont le débogage est activé ou dont les fonctions de sécurité sont désactivées ne fait que faciliter leur travail infâme. Pire encore, il existe des outils automatisés permettant de détecter et d'exploiter les mauvaises configurations de sécurité. Si vous en avez dans votre environnement, il y a donc de fortes chances qu'elles soient exploitées, ce qui explique pourquoi cette vulnérabilité figure sur la liste de l'OWASP des failles dangereuses des API.

Avant de passer aux choses sérieuses, essayez de résoudre ce problème de débogage :

Comment les fonctions de sécurité désactivées, les fonctions de débogage activées et les autorisations incorrectes se glissent-elles dans une API ?

Pour comprendre comment cette faille multidimensionnelle de l'API est ajoutée aux réseaux, nous devons la décomposer en ses éléments constitutifs. Commençons par le problème des fonctions de débogage activées. Le débogage est un outil utile qui aide les développeurs à comprendre pourquoi les applications ne fonctionnent pas correctement ou font des erreurs. Lorsque le débogage est activé, les erreurs et les exceptions génèrent des pages d'erreur détaillées permettant aux développeurs de voir ce qui n'a pas fonctionné et de résoudre les problèmes. Il est tout à fait possible d'activer le débogage lorsqu'une application est encore en cours de développement.

Cependant, il y a une raison pour laquelle la plupart des frameworks sont accompagnés d'avertissements concernant l'utilisation du mode débogage dans un environnement de production, probablement directement dans le code où le débogage est activé. Par exemple, dans le code où le débogage est activé :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le débogage activé en production !
DEBUG = True

Dans cet exemple, le débogage a été activé. L'application Django génère des pages d'erreur détaillées lorsqu'une exception est levée. Si cela est fait dans un environnement de production, un adversaire aurait accès à ces pages d'erreur, qui contiennent des métadonnées sur l'environnement. Bien que le débogage soit désactivé par défaut dans la plupart des frameworks, il est facile d'oublier de le réactiver s'il est activé au cours d'un long processus de développement. Ensuite, lorsque l'application est transférée dans un environnement de production, elle fournit aux attaquants de nombreuses informations sur la manière de compromettre une application, voire un serveur ou un réseau entier.

Si l'activation du mode débogage est généralement un problème isolé, les vulnérabilités liées aux autorisations incorrectes et aux fonctions de sécurité désactivées sont souvent associées. Par exemple, dans un scénario réel fourni par l'OWASP, un attaquant a utilisé un moteur de recherche pour trouver une base de données qui était accidentellement connectée à l'internet. Comme le système de gestion de base de données populaire utilisait sa configuration par défaut, l'authentification était désactivée. Ainsi, en combinant les vulnérabilités liées aux autorisations inappropriées et aux fonctions de sécurité désactivées, l'attaquant a pu accéder à des millions d'enregistrements contenant des informations confidentielles, des préférences personnelles et des données d'authentification.

Élimination des vulnérabilités liées aux fonctions de sécurité désactivées, aux fonctions de débogage activées et aux autorisations incorrectes

Vous devrez probablement adopter une double approche pour éliminer cette vulnérabilité. Pour éliminer la partie du problème liée à l'activation du débogage, ajoutez simplement une vérification au processus de développement afin de vous assurer que le débogage est désactivé avant de transférer une API ou une application dans l'environnement de production. Dans notre exemple, la commande appropriée serait la suivante :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le debug activé en production !
DEBUG = False

Les fonctionnalités de débogage de l'application Django sont maintenant désactivées avec l'indicateur DEBUG configuré à False. Aucune page d'erreur ne sera générée en réponse aux erreurs. Si un adversaire accède quand même aux pages d'erreur, elles ne contiendront pas de métadonnées utiles et ne constitueront pas un risque pour l'application.

Il est un peu plus difficile d'éliminer les vulnérabilités liées aux fonctions de sécurité désactivées et aux autorisations inappropriées, car elles peuvent englober un large éventail de vulnérabilités spécifiques. La meilleure façon de les arrêter est de développer un processus standard et reproductible pour permettre le déploiement rapide et facile des actifs verrouillés dans l'environnement de production.

Même dans ce cas, vous devez créer un processus dans lequel les fichiers d'orchestration, les composants d'API et les services en nuage tels que les autorisations de seau Amazon S3 sont constamment examinés et mis à jour. Cet examen doit également évaluer l'efficacité globale des paramètres de sécurité dans l'ensemble de l'environnement au fil du temps, afin de s'assurer que l'organisation améliore constamment la sécurité de ses API.

Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo de la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.


Veuillez consulter le webinaire.
Veuillez commencer
En savoir plus

Veuillez cliquer sur le lien ci-dessous et télécharger le PDF de cette ressource.

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.

Consulter le rapportRéserver une démonstration
Télécharger le PDF
Consulter la ressource
Partager sur :
marques LinkedInSocialLogo x
Souhaitez-vous en savoir davantage ?

Partager sur :
marques LinkedInSocialLogo x
Auteur
Matias Madou, Ph.D.
Publié le 11 novembre 2020

Matias Madou, Ph.D. ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent in Anwendungssicherheit mit Schwerpunkt auf statischen Analyselösungen. Später kam er zu Fortify in den USA, wo er feststellte, dass es nicht ausreichte, ausschließlich Codeprobleme zu erkennen, ohne Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, die Sicherheitslast verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht als Teil von Team Awesome an seinem Schreibtisch sitzt, steht er gerne auf der Bühne und präsentiert auf Konferenzen wie der RSA Conference, BlackHat und DefCon.

Matias ist Forscher und Entwickler mit mehr als 15 Jahren praktischer Erfahrung in der Softwaresicherheit. Er hat Lösungen für Unternehmen wie Fortify Software und sein eigenes Unternehmen Sensei Security entwickelt. Im Laufe seiner Karriere hat Matias mehrere Forschungsprojekte zur Anwendungssicherheit geleitet, die zu kommerziellen Produkten geführt haben, und verfügt über mehr als 10 Patente. Wenn er nicht an seinem Schreibtisch ist, war Matias als Ausbilder für fortgeschrittene Schulungen zur Anwendungssicherheit tätig und hält regelmäßig Vorträge auf globalen Konferenzen wie RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec und BruCon.

Matias hat an der Universität Gent in Computertechnik promoviert, wo er Anwendungssicherheit durch Programmverschleierung studierte, um das Innenleben einer Anwendung zu verbergen.

Partager sur :
marques LinkedInSocialLogo x

Si la plupart des vulnérabilités de cette liste sont assez spécifiques aux API, le problème des fonctions de sécurité désactivées, des fonctions de débogage activées et des autorisations incorrectes peut se poser n'importe où. Il est probablement un peu plus répandu dans les API, mais les attaquants tentent souvent de trouver des failles non corrigées et des fichiers ou répertoires non protégés n'importe où dans un réseau. Le fait de tomber sur une API dont le débogage est activé ou dont les fonctions de sécurité sont désactivées ne fait que faciliter leur travail infâme. Pire encore, il existe des outils automatisés permettant de détecter et d'exploiter les mauvaises configurations de sécurité. Si vous en avez dans votre environnement, il y a donc de fortes chances qu'elles soient exploitées, ce qui explique pourquoi cette vulnérabilité figure sur la liste de l'OWASP des failles dangereuses des API.

Avant de passer aux choses sérieuses, essayez de résoudre ce problème de débogage :

Comment les fonctions de sécurité désactivées, les fonctions de débogage activées et les autorisations incorrectes se glissent-elles dans une API ?

Pour comprendre comment cette faille multidimensionnelle de l'API est ajoutée aux réseaux, nous devons la décomposer en ses éléments constitutifs. Commençons par le problème des fonctions de débogage activées. Le débogage est un outil utile qui aide les développeurs à comprendre pourquoi les applications ne fonctionnent pas correctement ou font des erreurs. Lorsque le débogage est activé, les erreurs et les exceptions génèrent des pages d'erreur détaillées permettant aux développeurs de voir ce qui n'a pas fonctionné et de résoudre les problèmes. Il est tout à fait possible d'activer le débogage lorsqu'une application est encore en cours de développement.

Cependant, il y a une raison pour laquelle la plupart des frameworks sont accompagnés d'avertissements concernant l'utilisation du mode débogage dans un environnement de production, probablement directement dans le code où le débogage est activé. Par exemple, dans le code où le débogage est activé :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le débogage activé en production !
DEBUG = True

Dans cet exemple, le débogage a été activé. L'application Django génère des pages d'erreur détaillées lorsqu'une exception est levée. Si cela est fait dans un environnement de production, un adversaire aurait accès à ces pages d'erreur, qui contiennent des métadonnées sur l'environnement. Bien que le débogage soit désactivé par défaut dans la plupart des frameworks, il est facile d'oublier de le réactiver s'il est activé au cours d'un long processus de développement. Ensuite, lorsque l'application est transférée dans un environnement de production, elle fournit aux attaquants de nombreuses informations sur la manière de compromettre une application, voire un serveur ou un réseau entier.

Si l'activation du mode débogage est généralement un problème isolé, les vulnérabilités liées aux autorisations incorrectes et aux fonctions de sécurité désactivées sont souvent associées. Par exemple, dans un scénario réel fourni par l'OWASP, un attaquant a utilisé un moteur de recherche pour trouver une base de données qui était accidentellement connectée à l'internet. Comme le système de gestion de base de données populaire utilisait sa configuration par défaut, l'authentification était désactivée. Ainsi, en combinant les vulnérabilités liées aux autorisations inappropriées et aux fonctions de sécurité désactivées, l'attaquant a pu accéder à des millions d'enregistrements contenant des informations confidentielles, des préférences personnelles et des données d'authentification.

Élimination des vulnérabilités liées aux fonctions de sécurité désactivées, aux fonctions de débogage activées et aux autorisations incorrectes

Vous devrez probablement adopter une double approche pour éliminer cette vulnérabilité. Pour éliminer la partie du problème liée à l'activation du débogage, ajoutez simplement une vérification au processus de développement afin de vous assurer que le débogage est désactivé avant de transférer une API ou une application dans l'environnement de production. Dans notre exemple, la commande appropriée serait la suivante :

# AVERTISSEMENT DE SECURITE : ne pas exécuter avec le debug activé en production !
DEBUG = False

Les fonctionnalités de débogage de l'application Django sont maintenant désactivées avec l'indicateur DEBUG configuré à False. Aucune page d'erreur ne sera générée en réponse aux erreurs. Si un adversaire accède quand même aux pages d'erreur, elles ne contiendront pas de métadonnées utiles et ne constitueront pas un risque pour l'application.

Il est un peu plus difficile d'éliminer les vulnérabilités liées aux fonctions de sécurité désactivées et aux autorisations inappropriées, car elles peuvent englober un large éventail de vulnérabilités spécifiques. La meilleure façon de les arrêter est de développer un processus standard et reproductible pour permettre le déploiement rapide et facile des actifs verrouillés dans l'environnement de production.

Même dans ce cas, vous devez créer un processus dans lequel les fichiers d'orchestration, les composants d'API et les services en nuage tels que les autorisations de seau Amazon S3 sont constamment examinés et mis à jour. Cet examen doit également évaluer l'efficacité globale des paramètres de sécurité dans l'ensemble de l'environnement au fil du temps, afin de s'assurer que l'organisation améliore constamment la sécurité de ses API.

Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo de la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.


Table des matières

Télécharger le PDF
Consulter la ressource
Souhaitez-vous en savoir davantage ?

Matias Madou, Ph.D. ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent in Anwendungssicherheit mit Schwerpunkt auf statischen Analyselösungen. Später kam er zu Fortify in den USA, wo er feststellte, dass es nicht ausreichte, ausschließlich Codeprobleme zu erkennen, ohne Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, die Sicherheitslast verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht als Teil von Team Awesome an seinem Schreibtisch sitzt, steht er gerne auf der Bühne und präsentiert auf Konferenzen wie der RSA Conference, BlackHat und DefCon.

En savoir plus

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.

Réserver une démonstrationTélécharger
Partager sur :
marques LinkedInSocialLogo x
Centre de ressources

Ressources pour débuter

Plus d'articles
Centre de ressources

Ressources pour débuter

Plus d'articles