Formail hacké

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Lun Sep 12, 2005 8:30

J'ai le meme soucis; j'avais ouvert un topic à ce sujet: http://www.webrankinfo.com/forums/topic ... 5562_0.htm

Mon problème n'est toujours pas résolu....

bed
Nouveau WRInaute
 
Messages: 31
Inscription: Mar Avr 05, 2005 13:01

Message le Lun Sep 12, 2005 15:18

Puisque apparement c'est un robot, une idée serait de faire un lien javascript vers ton formulaire de contact, il semblerait que les robots n'aiment pas trop le javascript.

Voici quelques portions de code qui pourront peut être t'aider à sécuriser ton formulaire.
Sur ce site en anglais qui parle uniquement de ce problème :
http://www.anders.com/cms/75

Code: Tout sélectionner
This is what you need to do in PHP form:

Make sure you end your headers with \r\n\r\n.

change

$headers .= "From: " . $from . "\r\n";

to

$headers .= "From: " . $from . "\r\n\r\n";

It is always best to filter mail form inputs

// Strip \r and \n from the email address

$_POST['email'] = preg_replace("\r", "", $_POST['email']);
$_POST['email'] = preg_replace("\n", "", $_POST['email']);

// Remove injected headers

$find = array("/bcc\:/i","/Content\-Type\:/i","/cc\:/i","/to\:/i");

$_POST['email'] = preg_replace($find, "", $_POST['email']);
$comments = preg_replace($find, "", comments);

Ian

ou encore :
Code: Tout sélectionner
if (eregi("\r",$MailFrom) || eregi("\n",$MailFrom) || eregi("Content-Type:",$MailFrom)){
die("SPAM Injection Error :(");
}


Sur l'article de phpsecure.info :
Code: Tout sélectionner
sécuriser les failles d'injection d'headers mail, il doit y avoir plusieurs manières differentes. Une idée serait d'ajouter, après la ligne :


$from=$_POST["expediteur"];

le code suivant :


if (eregi("\r",$from) || eregi("\n",$from)){
die("Why ?? :(");
}


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Lun Sep 12, 2005 15:53

Je suis entrain de controler différentes choses... Je vous tiendrais au courant...

Je verifie si il y a pas de @ dans le nom \n et \r

Merci en tout cas


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Mer Sep 14, 2005 8:00

Premier retour,
pour le moment ça fonctionne....


BigDebutant
WRInaute discret
WRInaute discret
 
Messages: 67
Inscription: Lun Juil 26, 2004 10:13

de même

Message le Mer Sep 14, 2005 9:37

Salut,

moi aussi, cela fonctionne.

En fait j'ai ajouté le test sur le HTTP_REFERER. Pour vérifier de quel site la page a été appelé.
Et j'ai laissé les tests sur les \r et \n.

Bon c'est pas top pour avoir des mails formatés. C'est ce qui m'embête le plus.

Sandrine


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Mer Sep 14, 2005 9:56

Perso j'ai plusieurs champs dans mon formulaire et je fais le test seulement sur deux champs et pour l'instant ça suffit et ça me bouzille pas ma mise ne page


yeca
WRInaute passionné
WRInaute passionné
 
Messages: 950
Inscription: Mar Sep 02, 2003 10:14

Message le Mer Sep 14, 2005 10:05



AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Mer Sep 14, 2005 10:11

<?php
if (eregi(chr(10),$mail) || eregi(chr(13),$mail) || eregi('Content-Type:',$mail)) {
exit('SPAM Injection Error :(');
}
?>

Merci de l'info Yeca mais en fait ça correspond à la meme chose puisque:

Chr(13) et Chr(10) Combinaison de retour chariot et de saut de ligne.

donc c'est equivalent \n et \r

a priori c'est la seule solution.... sans passer par le captcha code ou les questions betes


yeca
WRInaute passionné
WRInaute passionné
 
Messages: 950
Inscription: Mar Sep 02, 2003 10:14

Message le Mer Sep 14, 2005 10:16

Oui oui tout à fait, ça ne fait que confirmer :)


yeca
WRInaute passionné
WRInaute passionné
 
Messages: 950
Inscription: Mar Sep 02, 2003 10:14

Message le Mer Sep 14, 2005 13:28

Bon : testé, pas approuvé, ça marche pas.


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Mer Sep 14, 2005 15:21

pas compris??


yeca
WRInaute passionné
WRInaute passionné
 
Messages: 950
Inscription: Mar Sep 02, 2003 10:14

Message le Mer Sep 14, 2005 15:24

Ben après installation de ce script, je reçois toujours les fameux spams.


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Mer Sep 14, 2005 15:34

fais voir le code de ta page (en mp stu veux)


yeca
WRInaute passionné
WRInaute passionné
 
Messages: 950
Inscription: Mar Sep 02, 2003 10:14

Message le Mer Sep 14, 2005 15:54

J'ai simplement ajouté le bout de code avant la fonction mail() :)


AW
WRInaute accro
WRInaute accro
 
Messages: 2274
Inscription: Mar Mai 31, 2005 14:41

Message le Jeu Sep 15, 2005 7:49

il faut que tu controles un des champs de ton formulaire...

Formail hacké Formail hacké

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité