8791 sujets

Développement web côté serveur, CMS

Pages :
(reprise du message précédent)

shaihulud1979 a écrit :
Jette voir un oeil là dessus, je pense que tu pourras t'en inspirer pour faire un contrôle de ton champ de saisi. Le principe c'est de vérifier lors de la saisie à chaque levé de touche si l'expression saisie correspond à un interdit. En l'adaptant tu pourras interdire les http et les www.

Sauf qu'une vérification en JavaScript n'est pas suffisante. D'ailleurs, il n'est pas exclu que les robots spammeurs ne lisent pas le JavaScript. Smiley cligne
c'est sûr l'idéal serait un filtrage juste avant l'insertion dans la base de données. Tout dépend de ce que notre ami veut faire, mais au moins il a un début de solution Smiley cligne
shaihulud1979 a écrit :
c'est sûr l'idéal serait un filtrage juste avant l'insertion dans la base de données.
Il faut surtout se rappeler que le JavaScript est facultatif (il peut être désactivé délibérément ou non) et qu'il permet donc simplement d'éviter des requêtes inutiles au serveur et d'améliorer l'ergonomie lors de la saisie du formulaire. Dans tout les cas toutes les données devront obligatoirement être (re)vérifiées côté serveur.
Je suis aussi une victime depuis cette nuit :

a écrit :

Email : vkfmqn@snllgh.com
Nom : fftqxgv
Prénom : fftqxgv
Téléphone : 20039360548
Message fftqxgv fftqxgv :
PGJ3SA <a href="http://monkgcpfncfg.com/">monkgcpfncfg</a>, ipdtmjlahclc, [link=http://vpfqeytrwkbn.com/]vpfqeytrwkbn[/link], http://azwrdetlvojl.com/


Je suis en train de tester ce script php qui permet de vérifier le referer et donc d’interdire l’accès extérieur de la page du formulaire. Qu'en pensez vous? efficace ou pas?


// On récupère le Référent   
$Referer = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : 'Aucun';
// Formatage du référent   
$Referer = preg_replace( "/http:\/\//","", $Referer );  
$Referer = preg_replace( "/\/.*/", "", $Referer );
// On vérifie le domaine 
if( $Referer == 'www.monsite.fr' || $Referer == 'monsite.fr' )
{
// Affichage du formulaire   
}
// Sinon on Interdit l'accès   
else
{
// Envoie d'un mail pour vous avertir de la tentative de spam
mail('monnom@gmail.com','Tentative de spam','Page: monformulaire.php - IP:'.$_SERVER['REMOTE_ADDR'],'From: monnom@gmail.com');
// die() pour empècher le spammeur d'envoyer son spam
die('<div style="text-align:center;color:#FF0000">You are a Spammer : '.$_SERVER['REMOTE_ADDR'].'</div>');
}
Modérateur
Bonjour,

Sclormu, le REFERER n'est pas une donnée fiable. Un utilisateur honnête peut le désactiver, et un utilisateur malhonnête peut le modifier.

Pour bloquer ce type de robot, je pense qu'une bonne vieille question anti-spam pourrait faire l'affaire (ex : Combien font 2+4?).
Pages :