8792 sujets

Développement web côté serveur, CMS

Bonjour à tous, Smiley biggrin

depuis qq semaines j'ai plusieurs fois par jour des retours de mon formulaire avec ce type de message, quelqu'un pourrait me dire à quoi ca lui fait penser comme erreur ? Je cherche un meilleur script sécurisé pour mes formulaires avec captcha ou non, mais rien n'y fait, ca passe toujours

Bonjour à tous, je me ramasse ceci sur un de mes formulaires, le langage vous dit quelque chose sur mon erreur ?

Nom : bacon7960@koloss.be
Prénom : bacon7960@koloss.be
Adresse : bacon7960@koloss.be
Code Postal : bacon7960@koloss.be
Localité : home Content-Transfer-Encoding: base64 Content-Type: text/plain X-Mailer: AOL 9.0 for Windows US sub 672 Subject: back as the to: jessie82385@yahoo.com,ramz7492@comcast.net,deckman21157@comcast.net, whitewolf632003@yahoo.com,legaltronics2@yahoo.com,iynchjiynchj@aol.com cGVvcGxlIGVhdCBoZWFydHkgYnJlYWtmYXN0cy4gZSBzZW50CgoK 64e7a98b1f79bdadbc37e8da96afc456 . Téléphone : bacon7960@koloss.beFax : bacon7960@koloss.be
GSM : bacon7960@koloss.be
Email : bacon7960@koloss.be
Message : bacon7960@koloss.be

Mon code pour l'envoi est le suivant :

$headers ="X-Sender: <www.domaine.be>\\n"; 
$headers.="X-auth-smtp-user: infosss@domaine.be \\n"; 
$headers.="X-abuse-contact: infosss@kdomaine.be";
$headers.="X-Mailer: PHP\\n"; 
$headers.="MIME-Version: 1.0\n"; 
$headers.="Content-type: text/html; charset=iso-8859-1\n";
$headers.="From: $prenom $nom<$email>\n"; 
$headers.="Reply-To: <$email>\n";
$headers.="Bcc:quelqun@skynet.be\n";


$message=htmlspecialchars(stripslashes($_POST["message"]), ENT_QUOTES);


$destinataire="quelqun"; 
$sujet="DEMANDE D'INFORMATIONS (CINEY)";
 
$contenu ="<html><head><title>KOLOSS</title></head>";
$contenu.="<body bgColor=#ffffff leftMargin=0 topMargin=0 marginwidth=0 marginheight=0><font size=2 face=arial><img src=http://www.quelqun.be/images/quelqun_mailer.jpg><br><br>Bonjour,<br><br>Ce message provient de votre formulaire en ligne et contient les informations suivantes :<br><br>";
$contenu.="<b>Nom</b> : {$_POST['nom']}<br>";
$contenu.="<b>Pr&eacute;nom</b> : {$_POST['prenom']}<br>";
$contenu.="<b>Adresse</b> : {$_POST['adresse']}<br>";
$contenu.="<b>Code Postal</b> : {$_POST['cp']}<br>";
$contenu.="<b>Localité</b> : {$_POST['localite']}<br>";
$contenu.="<b>Téléphone</b> : {$_POST['tel']}<br>";
$contenu.="<b>Fax</b> : {$_POST['fax']}<br>";
$contenu.="<b>GSM</b> : {$_POST['gsm']}<br>";
$contenu.="<b>Email</b> : {$_POST['email']}<br>";
$contenu.="<b>Message</b> : {$_POST['message']}<br>";
$contenu.="<br>Vous pouvez directement r&eacute;pondre &agrave; cette personne en utilisant la commande \"r&eacute;pondre\" de votre logiciel de messagerie.</font>";
$contenu.="</body></html>";
 
mail ($destinataire,$sujet,$contenu,$headers); 
header("Location:  http://mapage.htm");
 
} 



Tres grand merci à vous les gars! Smiley biggrin
Apparament, "l'erreur" serait dûe au non filtrage des données postées: par exemple interdire l'usage du @ dans tous les champs sauf celui prévu à cet effet.
Sinon, il existe une astuce pour faire échouer les robots spammeurs , c'est de poser une devinette à celui qui poste du genre "quelle est la couleur du cheval blanc d'henri IV?". Ce qui est bien avec cette méthode, c'est que ça reste accessible aux non-voyants contrairement aux images qui générent un code à recopier.
Modifié par ilhooq (15 Sep 2006 - 23:27)
Administrateur
Bonjour,

il y a effectivement d'une part le problème du Spam et d'autre part la non-sécurisation du formulaire ...
Si le formulaire, plutôt que d'être envoyé à toto@domaine.com, est envoyé à:
toto@domaine.com
Bcc: jetespamme@commejeveux.net

la 2ème adresse va se retrouver spammée à l'insu de tous Smiley ohwell

Voir Injection d'headers dans la fonction mail() de PHP pour quelques beaux exemples édifiants Smiley murf et alt.php.faq How do I stop spammers using header injection with my PHP Scripts? (Webmasters), Secure PHP Wiki: Email Injection ou encore PHP Security Guide: Form Processing pour des pistes (si quelqu'un a de meilleurs liens, en français par exemple ...)