Blog

Les codeurs conquièrent la sécurité : série Share & Learn - Information Exposure

May 2, 2019
Jaap Karan Singh

«Loose Lips fait couler des navires« est une expression qui est devenue populaire aux États-Unis pendant la Seconde Guerre mondiale. En Grande-Bretagne, vous avez entendu « Les propos insouciants coûtent des vies ». L'essentiel de ce dicton était que le fait de parler imprudemment d'informations sensibles pouvait être entendu par des espions et entraîner de graves conséquences.

Le même principe s'applique lors de la création d'applications Web. Lorsque votre application Web révèle trop d'informations, elle peut permettre aux attaquants de s'y introduire plus facilement.

Dans cet article, nous expliquerons ce qu'est l'exposition à l'information, pourquoi elle est dangereuse et comment la prévenir.

Comprendre l'exposition aux informations

L'exposition aux informations fait référence aux applications Web qui exposent des informations internes à ceux qui ne devraient pas les voir. Cela peut également faire référence à l'exposition d'informations sensibles sur les clients via des fichiers journaux ou l'interface utilisateur. Dans les deux cas, les attaquants peuvent utiliser les informations qu'ils trouvent pour attaquer vos systèmes ou vos utilisateurs.

Souvent, la première étape pour un attaquant est d'essayer de créer une erreur dans votre application. Une gestion des erreurs et une mauvaise configuration des applications Web entraînent une exposition d'informations sous forme de messages d'erreur. Que se passe-t-il si l'attaquant crée une erreur dans votre application ? Si un message d'erreur technique apparaît, y compris des détails techniques tels qu'une trace de pile, cela signifie que vous avez révélé trop d'informations. Ces informations peuvent inclure la base de données que vous utilisez ou la version du serveur d'applications que vous utilisez.

La divulgation d'informations sensibles peut se faire par d'autres moyens. Un formulaire contient-il des champs masqués contenant des informations sensibles ? Les attaquants peuvent simplement consulter la source de la page et en voir les valeurs.

En résumé, l'exposition d'informations se produit lorsque des informations qui devraient être demandées à vos utilisateurs sont rendues trop facilement accessibles.

Comprenez pourquoi l'exposition à l'information est dangereuse

Que peut faire un attaquant avec les informations exposées par l'application ? Si les informations sont de nature sensible, un attaquant pourrait voler des identités ou des informations d'identification utilisateur. Cela pourrait entraîner des dommages financiers, des violations de la vie privée et des amendes réglementaires

Si un attaquant utilise des messages d'erreur pour obtenir des informations sur une application, ces informations pourraient être utilisées lors d'une attaque future. En fait, le Guide de test OWASP contient une section complète sur collecte d'informations.

Le guide de test OWASP encourage l'utilisation des moteurs de recherche pour trouver des informations sur votre site Web qui ne vous intéressent peut-être pas. Par exemple, vos pages administratives sont-elles exposées aux moteurs de recherche ? Utilisez le fichier robots.txt pour indiquer aux moteurs de recherche de ne pas indexer certaines pages. Dans le même temps, le fichier robots.txt peut également divulguer des informations. Des URL sensibles peuvent parfois se trouver dans le fichier robots.txt. Les attaquants extraient le fichier et commencent à apprendre une partie de la structure des répertoires du site.

Google propose des options de moteur de recherche avancées qui permettent une inspection approfondie des sites Web. Par exemple, vous pouvez effectuer une recherche sur un site spécifique en utilisant la <domain>syntaxe « site : ». Vous pouvez consulter les pages mises en cache qui ont peut-être été supprimées mais qui se trouvent toujours dans le cache d'une tâche d'indexation précédente. L'utilisation de différents moteurs de recherche, tels que Bing et DuckDuckGo, peut donner des résultats différents. Testez donc sur chaque moteur de recherche ce qui est révélé à propos</domain> de votre application Web.

Les en-têtes HTTP, les bannières de sites Web et même les commentaires dans le code HTML et JavaScript peuvent contenir des informations que les attaquants ne devraient pas voir. Les en-têtes HTTP peuvent révéler les serveurs d'applications et les numéros de version. Les attaquants peuvent utiliser ces informations pour trouver des exploits à utiliser contre ces versions spécifiques. Assurez-vous de bien comprendre les différents endroits où les attaquants peuvent trouver vos informations et comment les masquer de manière appropriée.

Éliminez l'exposition à l'information

La divulgation d'informations est souvent un problème lié à la configuration des applications Web. Par défaut, de nombreux serveurs d'applications renvoient des traces de pile dans des messages d'erreur. Assurez-vous de modifier ce paramètre pour que les applications de production soient redirigées vers une page d'erreur générique lors de l'enregistrement de l'erreur à des fins de dépannage. Les messages d'erreur détaillés ne doivent jamais être renvoyés au navigateur de l'utilisateur.

Si certains fichiers nécessaires à l'application contiennent des informations sensibles, assurez-vous qu'un contrôle d'accès approprié garantit que seule l'application peut les lire. Désactivez la liste des répertoires sur le serveur et déplacez ces fichiers en dehors du répertoire racine Web. Cela empêche les attaquants d'accéder au fichier à l'aide du navigateur à l'aide d'un attaque par traversée de répertoires.

Les journaux peuvent être utilisés pour recueillir des informations lorsqu'ils ne sont pas configurés correctement. En cas d'erreur, n'enregistrez pas d'informations sensibles telles que les mots de passe, les jetons de session ou les informations personnelles identifiables (PII). Si un attaquant pouvait accéder aux fichiers journaux, il trouverait une mine d'informations sensibles à dérober. N'enregistrez pas plus que ce qui est nécessaire. Il s'agit généralement d'un identifiant de compte, d'un message d'erreur détaillé et peut-être de la méthode dans laquelle l'erreur s'est produite ou de l'opération en cours d'exécution. Supposez que les fichiers journaux ne sont pas secrets et vous ne serez pas tenté d'y placer des informations sensibles.

Ne supprimez pas vos applications Web

Auriez-vous vraiment pu divulguer des informations en parlant à un ami, menant directement à la perte d'un cuirassé pendant la Seconde Guerre mondiale ? Peut-être pas. Mais pourquoi courir ce risque ? C'est la leçon du dicton : « Des lèvres lâches font couler des navires ».

De même, il n'y a aucune raison d'exposer le fonctionnement interne de votre application Web au monde extérieur. Il n'y a aucune raison de consulter l'intégralité des numéros de cartes de crédit ou des mots de passe. Il n'y a aucune raison d'avoir des données PII dans les fichiers journaux. Alors ne le fais pas. Consultez nos ressources pédagogiques pour en savoir plus sur l'exposition à l'information.

Conservez le fonctionnement interne de vos applications à leur place. Ne supprimez pas vos applications Web.

Pensez-vous pouvoir mettre un terme à l'exposition à l'information dès maintenant ? Relevez le défi, guerrier : [Commencez ici]

Slogan

Govern AI-driven development before it ships

Measure AI-assisted risk, enforce secure coding policy at commit, and accelerate secure delivery across your SDLC.

book a demo
Slogan

Explore more blogs

Lorem ipsum diam quis enim lobortis scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis eu volutpat odio facilisis.

browse all
Case Study
Filter Label
This is some text inside of a div block.
This is some text inside of a div block.

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Learn More
Case Study
Filter Label
This is some text inside of a div block.
This is some text inside of a div block.

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

Learn More
Case Study
Filter Label
This is some text inside of a div block.
This is some text inside of a div block.

One Culture of Security: How Sage built their security champions program with agile secure code learning

Discover how Sage enhanced security with a flexible, relationship-focused approach, creating 200+ security champions and achieving measurable risk reduction.

Learn More
Blog
Filter Label
This is some text inside of a div block.
This is some text inside of a div block.

Named in the Gartner® Hype Cycle™ for Application Security 2026

Secure Code Warrior is named in the Gartner® Hype Cycle™ for Application Security, 2026 for Agentic Coding Security and Secure Coding Training. Here's why.

Learn More
Blog
Filter Label
This is some text inside of a div block.
This is some text inside of a div block.

Are you a CISO or Engineering Leader worried about the Security and Cost of LLM code generation?

Review the SCW AI Trust Index, our proprietary LLM benchmarking data, before going all-in on an AI model.

Learn More
Blog
Filter Label
This is some text inside of a div block.
This is some text inside of a div block.

Enabler 6: Regular Reporting to Leadership

Executive buy-in doesn't sustain itself. Enabler 6 shows how regular reporting keeps leadership engaged, informed, and invested in program success.

Learn More

Secure AI-driven development before it ships

See developer risk, enforce policy, and prevent vulnerabilities across your software development lifecycle.

Réserver une démo
trust score
No items found.