Différences
Ci-dessous, les différences entre deux révisions de la page.
— |
contributions:protection_antispam [2013/04/22 17:43] (Version actuelle) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Protéger son site contre les différentes attaques ====== | ||
+ | Il arrive souvent de se lever le matin et de découvrir que son site Internet a été ravagé par des robots pendant la nuit (ou même la journée ! Un robot ne dors pas). | ||
+ | En règle générale ces attaques sont ciblées sur les blogs, les [[http:// | ||
+ | En général, c'est pour poster un message de publicité, ou faire l' | ||
+ | Il existe aussi une autre forme d' | ||
+ | |||
+ | ===== La protection contre l' | ||
+ | ==== La protection avec un champ caché ==== | ||
+ | C'est cette technique la plus simple à mettre en place. \\ | ||
+ | Les robots remplissent tous les champs, il suffit donc de mettre un champ qu'il ne faut surtout pas remplir et de vérifier son contenu en PHP.\\ | ||
+ | L' | ||
+ | |||
+ | Le fichier commenter.html : | ||
+ | <code html> | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | <!-- On cache le champ en CSS --> | ||
+ | < | ||
+ | input .use{display: | ||
+ | </ | ||
+ | </ | ||
+ | < | ||
+ | <form action=" | ||
+ | <p> | ||
+ | Nom : <input type=" | ||
+ | Commentaire :<br> | ||
+ | < | ||
+ | <!-- Le champ caché est tout à fait normal : --> | ||
+ | <input type=" | ||
+ | <input type=" | ||
+ | </p> | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | Le fichier commenter.php : | ||
+ | <code php> | ||
+ | <?php | ||
+ | if(isset($_POST[' | ||
+ | | ||
+ | exit(' | ||
+ | } | ||
+ | |||
+ | //... | ||
+ | //On peut poster le message (après avoir fait les vérifications | ||
+ | //sur les champs normaux bien sûr !) | ||
+ | //... | ||
+ | } | ||
+ | ?> | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== La protection du formulaire avec un captcha ==== | ||
+ | {{ http:// | ||
+ | |||
+ | L' | ||
+ | |||
+ | === Utiliser la librairie de Google - reCaptcha === | ||
+ | {{ http:// | ||
+ | |||
+ | == Première étape : Trouver votre clé privé et publique == | ||
+ | A quoi servent elles ? | ||
+ | La clé publique est utile pour le code coté serveur (PHP) qui servira à votre script à demander si le captcha entré par l' | ||
+ | La clé publique sera elle coté client, dans le JavaScript, et servira au navigateur coté client pour aller chercher un captcha. | ||
+ | Commencez par vous crée un compte ou vous identifier avec un compte Google, puis allez dans My Accouts puis dans Add a New Site : | ||
+ | |||
+ | {{http:// | ||
+ | |||
+ | Indiquez lui l' | ||
+ | |||
+ | {{http:// | ||
+ | |||
+ | Ensuite, rendez vous sur la page de formulaire, puis incluez ce code là ou le captcha sera placer : | ||
+ | <code html> | ||
+ | <script type=" | ||
+ | | ||
+ | </ | ||
+ | < | ||
+ | < | ||
+ | | ||
+ | < | ||
+ | </ | ||
+ | < | ||
+ | | ||
+ | </ | ||
+ | </ | ||
+ | (Code reprit de [[http:// | ||
+ | Puis coté serveur, commencez par télécharger la librairie ici : http:// | ||
+ | <code php> | ||
+ | <?php | ||
+ | require_once(' | ||
+ | $privatekey = "Votre clé privé"; | ||
+ | $resp = recaptcha_check_answer ($privatekey, | ||
+ | $_SERVER[" | ||
+ | $_POST[" | ||
+ | $_POST[" | ||
+ | | ||
+ | if (!$resp-> | ||
+ | // Ce qu'il se passe si le rentré captcha est invalide | ||
+ | die ("Le captcha n'a pas été rentré correctement, | ||
+ | } else { | ||
+ | // Votre code pour captcha correctement rentré | ||
+ | } | ||
+ | ?> | ||
+ | </ |