Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1324 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Protection contre injection HTML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Protection contre injection HTML

n°1949912
liouan
Posté le 13-12-2009 à 21:06:11  profilanswer
 

Salut tout le monde,
 
je fais une application J2EE qui contiendra pour chaque personne inscrite un blog.  
Par nature, le blog permet à la personne qui l'utilise d'y écrire ce qu'elle veut. Je pose donc une question assez générale :
comment protéger l'application de blog contre l'injection de code HTML malicieux ?
 
Exemple: supposons que je sois naïf et que je décide simplement d'inclure le contenu de l'utilisateur comme ceci:
 
<p>
{contenu}
</p>
 
Il suffit donc à l'utilisateur de mettre ce contenu: "</p> Je fais ce que je veux avec ton site <!--"
 
et mon bout de site devient alors
 
<p>
</p> Je fais ce que je veux avec ton site <!--
</p>

 
l'utilisateur peut donc remplacer le contenu de mon site par n'importe quoi.
 
Pour régler la faille décrite précédemment, je propose de remplacer dans le {contenu} tous les '<' par des '&lt;' et tous les '>' par des '&gt;'
 
Mais est-ce suffisant? connaissez vous d'autres failles dues à l'injection de code HTML non désiré et connaissez vous des solutions possibles?

mood
Publicité
Posté le 13-12-2009 à 21:06:11  profilanswer
 

n°1949936
NewsletTux
&lt;Insérez ici votre vie /&gt;
Posté le 13-12-2009 à 23:35:06  profilanswer
 

en PHP, t'as les fonctions htmlentities et htmlspecialchars pour éviter ce genre de souci à l'affichage.
 
Mais si tu parles de J2EE, c'est que tu dois faire référence au Java (et non javascript) ... donc mauvaise cat'.


---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1950201
liouan
Posté le 14-12-2009 à 16:29:48  profilanswer
 

Au depart, j'ai pense a le mettre dans la categorie Java, mais ce n'est pas un probleme lie a Java en particulier, c'est un probleme qui concerne la generation de code HTML a partir de n'importe quel langage cote serveur
 
Ici, le probleme fondamental, c'est HTML et j'aimerais trouver une solution qui soit valable quelque soit le langage de script cote serveur
 
Pour info, j'ai analyse le code source de mon message precedent (click droit -> view source) avec firefox et on dirait bien que le site hardware.fr resout le probleme comme je le suggerais : remplacer tous les '<' par des '&lt;' et tous les '>' par des '&gt;'  de maniere a ne pas interpreter les balises entrees par l'utilisateur.
 
Je voudrais juste savoir s'il y a que le probleme des balises contre lequel il faut se proteger ou s'il y a autre chose.
 
Ce probleme peut paraitre benin mais un journal en ligne a pris une forte amende apres qu'un hacker ait reussi a inserer un article faux par un procede similaire a celui-ci.  
 
Le hacker a juste profite d'une faille de ce type pour remplacer un article de journal par un article de son cru. Une personne a ensuite porte plainte parce que le journal diffusait des informations fausses...

n°1950206
tpierron
Posté le 14-12-2009 à 16:41:11  profilanswer
 

Il faut aussi remplacer le caractère & par &amp;. Et si jamais tu injectes tu code dans un attribut (genre <input type="text" value="%{blabla}%"> ) faudra aussi remplacer ' par &#39; et/ou " par &#34;


Message édité par tpierron le 14-12-2009 à 16:43:28
n°1950215
skeye
Posté le 14-12-2009 à 16:56:02  profilanswer
 

liouan a écrit :

Ici, le probleme fondamental, c'est HTML et j'aimerais trouver une solution qui soit valable quelque soit le langage de script cote serveur


Pas possible, ça.
La seule solution efficace c'est de virer tout tag html dans le texte saisi par l'utilisateur (en l'échappant), ce que tu peux faire soit au moment de sa saisie (déconseillé, mieux vaut conserver le message original dans tous les cas), soit à l'affichage.


Message édité par skeye le 14-12-2009 à 16:56:48

---------------
Can't buy what I want because it's free -

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Protection contre injection HTML

 

Sujets relatifs
Importer donné XML vers une page HTMLhtml et object image dans le lecteur avant visualisation
ouvrir une page html en plein écran avec flashGros probleme de syntaxe php et/ou html
Besoin d'aide pour la programmation d'un menu en htmlurl du SWF (et non pas de l'HTML)
comment supprimer certains tags HTMLla code PHP et le code HTML qui se trouve aprés ne fonctionnent pas!
où trouver un tuto pour shoutbox html ?Besoin aide recuperation liens html
Plus de sujets relatifs à : Protection contre injection HTML


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR