Bonjour,
Je viens de penser à un petit (gros ?) trou de sécurité dans le forum que j'ai programmé.
J'ai des liens comme ça :
ici ?debut=10 c'est le nombre de tuples à aller chercher. C'est une variable dont la valeur sert de paramètre à la requête sql.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
Si on entre quoi que ce soit d'autre qu'un chiffre, la requête génère l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
Bien sûr je filtre la variable $_GET[debut] par htmlspecialchars et mysql_real_escape_string.
Mais tout de même, je pense que le fait d'afficher ces erreurs est mauvais pour la sécurité, ne serait-ce que parce que cela donne des informations sur le serveur (même si pour le moment c'est un mutualisé).
Une solution consiste donc à n'exécuter la requête que si le masque est corrrect, sinon on ne fait rien.
Dans les autres pages je n'ai pas ce problème car il y a un url rewriting qui génère une page d'erreur.
Voilà, qu'en pensez-vous ? Je fais un preg_replace pour tester le masque de la variable ? Je le fais aussi sur les pages de l'url rewriting où c'est pas la peine sur celle-ci ?(j'ai déjà vu que yahoo affiche les pages avec des urls non rewritées).
Merci pour vos conseils (de pros si possible)

 

 
		
		 
         
 

 
			
			


 
   


 Facile de déclencher une erreur mysql_fetch_array
 Facile de déclencher une erreur mysql_fetch_array
				 Répondre avec citation
  Répondre avec citation
Partager