Spam formulaire

bj33 Messages postés 145 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 1 mai 2012 - 14 mai 2006 à 15:28
sylvain64520 Messages postés 130 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 7 juin 2013 - 24 oct. 2012 à 15:33
bonjour

je reçois régulierement ce type de mail par le biais de formulaires en ligne.

identite = [mailto:under4166@aol.com under4166@aol.com]
musique = days
Content-Type: multipart/alternative; boundary=ffb04a579d97a320aac349fe32e49cad
MIME-Version: 1.0
Subject: lahertys setting yourself up
bcc: [mailto:bajfla1@aol.com bajfla1@aol.com]

This is a multi-part message in MIME format.

--ffb04a579d97a320aac349fe32e49cad
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit

they should travel. he evening previous, tto paid his last visit to the preacher. hey spoke together a long time about the deceased grandfather. he preacher gave up several papers to tto among them also
--ffb04a579d97a320aac349fe32e49cad--

ce n'est qu'une partie, j'ai tester plusieurs solutions, sans succés, il(s) arrive(nt) toujours à passer.la dernière en date ressemble à ceçi :

$header = 'from:adresse.com';
if (eregi("%0A|%0D|\\n+|\\r+)/i",$header)){
die("tentative de modification des paramétres! le message ne sera pas envoyé.");
}
$recipient = [mailto:'envoi@aol.com' 'envoi@aol.com'];
if (eregi("/(%0A|%0D|\\n+|\\r+)(content-type:|to:|cc:|bcc:)/i",$recipient)){
die("tentative de modification des paramétres! le message ne sera pas envoyé.");
}
$subject = 'Formulaire';
if (eregi("%0A|%0D|\\n+|\\r+)/i",$subject)){
die("tentative de modification des paramétres! le message ne sera pas envoyé.");
}

d'après ceçi : http://www.phpsecure.info/v2/article/MailHeadersInject.php

je cherche à comprendre comment il arrive à remplir des champs qui ne sont que des checkbox ou radio, comme par exemple

identite = [mailto:under4166@aol.com under4166@aol.com]
musique = days

ces deux champs correspondent à des boutons radios...est ce qu'il est possible qu'il lise le fichier php servant au traitement du formulaire? si oui, comment le protéger? j'ai aussi tenter çà : http://ppan.net/webdev/formulaire-anti-spam.php

le captcha n'est pas non plus très fiable.que faire? subir?

ils ne savaient pas que c'était impossible, alors ils l'on fait. [http://www.guitweb.com/ mon modeste site]

11 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 mai 2006 à 16:18
Salut,

quel est ton code xhtml et PHP qui te permet de lire ton formulaire et d'envoyer un mail en fonction du dit formulaire ?

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
bj33 Messages postés 145 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 1 mai 2012
14 mai 2006 à 17:25
salut anthomicro

çà n'à rien à voir mais ta classe template version php5, top.

les variables sont initialisés comme çà :

$niveau = $_POST['niveau']; //box et radios
$repcours = trim(htmlentities($_POST['repcours'])); //champ txt

je teste comme çà :

if (isset($_POST['envoi'])){


if (empty($ident)&&empty($musique)...etc) {
unset($ident,$musique..etc);
echo "vous tentez de soumettre un formulaire vide&hellip;ce qui ne sert &agrave; rien.http://www.guitweb.com/ mon modeste site]
0
bj33 Messages postés 145 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 1 mai 2012
14 mai 2006 à 17:31
oups!

il manque la question que je voulais poser.

$message ="
identite = $ident
musique = $musique";

le retour à la ligne après la variable message est t'il judicieux? n'est-ce pas là la faille? htmlentities est t'il utile sur les checkbox et radios?

ils ne savaient pas que c'était impossible, alors ils l'on fait. [http://www.guitweb.com/ mon modeste site]
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 mai 2006 à 17:52
En fait j'aimerais voir ce que tu mets dans le $header et dans le $recipient

sinon vaudrait mieux utiliser isset() avant de déclarer des variables car

$niveau = $_POST['niveau']; //box et radios
$repcours = trim(htmlentities($_POST['repcours'])); //champ txt

pourra renvoyer une erreur.

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 mai 2006 à 17:57
Heu je viens de revoir ton premier post pour ces variables...

$header = 'from:adresse.com';
if (eregi("%0A|%0D|\\n+|\\r+)/i",$header)){
die("tentative de modification des param&eacute;tres! le message ne sera pas envoy&eacute;.");
}

en fait à mon avis, vérifie plutôt que l'adresse mail a bien le format d'une adresse mail plutôt que de rechercher d'hypothétiques des \n dans les headers ;) le site expreg.com pourra t'aider.

Sinon rajoutes un code imagé qui empêchera les robots de poster via ton formulaire :)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
bj33 Messages postés 145 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 1 mai 2012
14 mai 2006 à 18:23
<< Sinon rajoutes un code imagé qui empêchera les robots de poster via ton formulaire :)

j'y pense.mais comme certains robots sont capables de lire le code de l'image...

<< à mon avis, vérifie plutôt que l'adresse mail a bien le format d'une adresse mail

malheureusement ce n'est pas la solution miracle car ce qu'il s'agit d'éviter c'est l'injection dans les headers.

ils ne savaient pas que c'était impossible, alors ils l'on fait. [http://www.guitweb.com/ mon modeste site]
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 mai 2006 à 18:43
"j'y pense.mais comme certains robots sont capables de lire le code de l'image..."

Trouves m'en un et après on en reparle (lol)

"malheureusement ce n'est pas la solution miracle car ce qu'il s'agit d'éviter c'est l'injection dans les headers."

Justement, si l'injection peut se faire, c'est que le mec rentre une adresse email de contact fausse, qui n'a donc pas le format d'une vraie adresse mail.
<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
bj33 Messages postés 145 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 1 mai 2012
14 mai 2006 à 18:48
<< Trouves m'en un et après on en reparle (lol)

j'ai pû lire çà sur nombre de site.c'est faux?

<< Justement, si l'injection peut se faire, c'est que le mec rentre une adresse email de contact fausse, qui n'a donc pas le format d'une vraie adresse mail.

ok! enregistrer.merçi.

ils ne savaient pas que c'était impossible, alors ils l'on fait. [http://www.guitweb.com/ mon modeste site]
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
14 mai 2006 à 18:53
"j'ai pû lire çà sur nombre de site.c'est faux?"

C'est pas faux, mais le nombre de ces robots pouvant lire les images est comment dire... proche de zéro. Pourquoi ? parce que c'est très compliqué à faire, et que le jeu n'en vaut pas la chandelle.

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
bj33 Messages postés 145 Date d'inscription vendredi 13 juin 2003 Statut Membre Dernière intervention 1 mai 2012
14 mai 2006 à 19:13
ok.je vais voir ce qu'expreg.com peut m'apporter.merci pour ces pistes.

ils ne savaient pas que c'était impossible, alors ils l'on fait. [http://www.guitweb.com/ mon modeste site]
0
sylvain64520 Messages postés 130 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 7 juin 2013
24 oct. 2012 à 15:33
Perso j'utilise des captcha sur mes sites et je n'ai plus de problème de robot.

Tu peux utiliser un autre système plus simple est qui n'est pas visible niveau html dans le formulaire : le système d'opération : tu demandes à l'utilisateur de résoudre une opération mathématique et de l'écrire dans un champ.

Ca fonctione très bien aussi.
0
Rejoignez-nous