Section LANGAGES. Le 29-01-2022, il est 14:28

Éric Bourgeois

Conception, réalisation de site web

  • Internet : publier un site web ;
  • Langages : html, css, php, sql ;
  • Graphisme : retouches photos, cadrage, détourage ;
  • Bureautique : traitement de texte, tableur, base de données.

La faille XSS : attention au code HTML que vous recevez !

Pourquoi les formulaires ne sont pas sûrs ...

La faille XSS (pour cross-site scripting) est vieille comme le Web :-° et on la trouve encore sur de nombreux sites, même sur des sites web professionnels ! C'est une technique qui consiste à injecter du code HTML contenant du Javascript dans vos pages pour le faire exécuter à vos visiteurs.

Javascript déclenché à l'ouverture :

Je sais comment tu t'appelles, hé hé. Tu t'appelles ! <script type="text/javascript">alert('Badaboum')</script> !

Éviter la faille XSS en échappant le HTML

Pour échapper le code HTML, utiliser la fonction htmlspecialchars qui va transformer les chevrons des balises HTML <> en &lt; et &gt; respectivement. Cela provoquera l'affichage de la balise plutôt que son exécution.

code PHP :

Je sais comment tu t'appelles, hé hé. Tu t'appelles <?php echo htmlspecialchars($_POST['prenom']); ?> !

Le code HTML qui en résultera sera propre et protégé car les balises HTML insérées par le visiteur auront été échappées :

code HTML :

Je sais comment tu t'appelles, hé hé. Tu t'appelles <strong>Badaboum</strong> !

xhtml   Valid XHTML 1.0 Strict   css CSS Valide !   cc