Les attaques XSS :« Cross site scripting » permettent à un intrus d’injecter des scripts
clients dans les navigateurs des utilisateurs. Le principe général est de
stocker les scripts malveillants dans la base de données d’où ils seront repris
et affichés pour d’autres utilisateurs, ou encore d’amener les utilisateurs Ã
cliquer sur un lien qui va provoquer l’exécution du JavaScript de l’attaquant
dans le navigateur des utilisateurs. Cependant, les attaques XSS peuvent
provenir de n’importe quelle source de données non fiable, comme les cookies ou
les services Web, à chaque fois que les données ne sont pas suffisamment
nettoyées avant d’être incluses dans une page.
L’utilisation des gabarits Django vous protège de la
majorité des attaques XSS. Cependant, il est important de comprendre les
protections appliquées et leurs limites.
Les gabarits de Django échappent des caractères spécifiques
qui sont particulièrement dangereux en HTML. Bien que cela protège les utilisateurs
de la plupart des saisies malveillantes, cela ne constitue pas une protection
absolue. Par exemple, cela ne protège pas contre ceci :
<style class={{ var }}>...</style>
Si var contient 'class1 onmouseover=jav * ascript:func()',
cela peut amener à une exécution de JavaScript non autorisée, selon la manière
dont le navigateur produit le HTML imparfait (l’ajout de guillemets autour de
cette valeur d’attribut réglerait ce cas).
0 commentaires:
Enregistrer un commentaire