Comment un tel systeme peut etre mis en place?C'est une configuration du serveur qui permet de traiter d'abord les parties apres le "?" puis apres d'afficher la page demander?
C'est une possibilité, oui. Par exemple, sous Apache, on a le module mod_security qui permet de filtrer les requêtes (et les réponses !) suivant des expressions rationnelles.
Pourquoi un tel systeme n'est jamais proposé dans les solutions de protection , au lieu de devoir faire des protections sur ce que l'on recois a chaque fois?
Il est proposé parfois. Cela dit, il faut bien se rendre compte qu'un filtre, ça se contourne. Une injection SQL ou une XSS ne comporte pas forcément de quotes, et il existe des méthodes pour s'en passer. Mais cela ne doit pas être une raison pour coder une application avec les pieds, sous prétexte qu'on travaille avec un filet. Dans le domaine de la sécurité, on utilise ceinture ET bretelles (et si on peut ajouter une corde ou un élastique, c'est mieux). Du reste, seule l'application «sait» ce qui est une valeur valide et invalide, et c'est à elle de faire le tri. Mod_security, c'est bien, mais il n'existe aucune expression rationnelle capable de bloquer toutes injections SQL (ou XSS) possibles.
En fait, c'est juste une protection supplémentaire, et la seule situation dans laquelle c'est vraiment utile, c'est lorsqu'on utilise une application «boite noire» (par exemple, un binaire cgi fourni par une boite qui ne le maintient plus, dont le code source est indisponible). Il vaut mieux alors se méfier et multiplier les barrières, y compris pour éviter une éventuelle backdoor intégrée (ça s'est déjà vu).