Sécurité pour formulaires de messages
Posté : 25 oct. 2006, 00:18
Bonjour,
J'ai l'impression que quelqu'un utilise mon formulaire de contact pour faire du spam.
Voilà le mail que j'ai reçu (+ 5 autres du même type) par mon formulaire de contact :
Si quelqu'un peut me confirmer ce problème et m'indiquer la marche à suivre pour le résoudre.
Je me souviens avoir lu quelquepart des choses à ce sujet avec htmlentities et ereg pour traiter les variables Post, je crois, mais je ne connais pas cela.
J'espère que vous pourrez m'aider,
Merci
J'ai l'impression que quelqu'un utilise mon formulaire de contact pour faire du spam.
Voilà le mail que j'ai reçu (+ 5 autres du même type) par mon formulaire de contact :
Je vous montre aussi le code de ce formulaire :> ************ Le 24/10/2006 09:19:30 ***********
>
> NOM : *********@monsite.com
> PRENOM : hams
> Content-Type: multipart/alternative;
> boundary=9dc1ee9749a696f5b8f6d4ed87d3b95e
> X-Mailer: AOL 5.0 for Mac sub 28
> Subject: arma) and the panish amon serrano (notably the
> to: *********@yahoo.com
> to: *********@yahoo.com
> to: *********@hotmail.com
> to: *********@network2000-hi.com
> to: *********@yahoo.com
> to: *********@aol.com
> to: *********@yhaoo.com
> to: *********@telus.net
> to: *********@yahoo.net
>
> This is a multi-part message in MIME format.
>
> --9dc1ee9749a696f5b8f6d4ed87d3b95e
> Content-Transfer-Encoding: 7bit
> Content-Type: text/plain
>
> edit rance ayonne am e ambon de ayonne aking its name from the ancient
> port
> city of ayonne in the
>
> --9dc1ee9749a696f5b8f6d4ed87d3b95e
> Content-Transfer-Encoding: 7bit
> Content-Type: text/plain
>
> no steroids, no fish oils, no
>
> --9dc1ee9749a696f5b8f6d4ed87d3b95e--
> .
>
> MAIL : *********@monsite.com
> TEL : *********@monsite.com
> MESSAGE : *********@monsite.com
>
> *****************************************************
> *********@monsite.com
> *****************************************************
>
>
Code : Tout sélectionner
if ($submit)
{
$Lang = 'FR';
switch ($Lang)
{
case 'FR':
$OK = 'Votre demande a bien été enregistrée.<br>'
.'Nous vous contacterons prochainement.';
$ERR = 'Il y a eu un problème<BR>lors de la transmission'
.'Veuillez re-essayer un peu plus tard<BR>ou envoyez nous un E-mail'
.'<A href="mailto:[email protected]">[email protected]</A>';
break;
case 'EN':
$OK = 'Your request has been well sent We will contact you soon';
$ERR = 'There was a problem during the transmission'
.'Please try again later<BR>or send us an E-mail'
.'<A href="mailto:[email protected]">[email protected]</A>';
break;
}
/* Verif & Init variables */
if (empty($mail)) $mail = "(pas d'email)";
$host = gethostbyaddr($REMOTE_ADDR);
$date = date("d/m/Y H:i:s");
$f_sujet='**** Site Web : '.$sujet;
$f_msg = "************ Le $date ***********\n\n";
$f_msg .= "NOM : $nom\n";
$f_msg .= "PRENOM : $prenom\n";
$f_msg .= "MAIL : $mail\n";
$f_msg .= "TEL : $tel\n";
$f_msg .= "MESSAGE : $message\n";
$f_msg .= "\n";
$f_msg .= "*****************************************************\n";
$f_msg .= $message;
$f_msg .= "\n*****************************************************\n";
// $f_msg .= "Envoyé par $host ($REMOTE_ADDR),\n";
$entetedate = date("D, j M Y H:i:s -0600");
$entetemail = "From: $mail\n";
$entetemail .= "Cc:\n";
$entetemail .= "Bcc:\n";
$entetemail .= "Reply-To: $mail\n";
$entetemail .= "X-Priority: 1\n";
$entetemail .= "X-Mailer: PHP/" . phpversion() . "\n" ;
$entetemail .= "Date: $entetedate";
$resp = @mail ( '[email protected]', $f_sujet, $f_msg, $entetemail );
if ($resp) echo $OK; else echo $ERR;
}
?>
<form action="contact.php" method="post">
<fieldset>
<legend>Contactez-nous*</legend>
<p>
<label>
<input name="nom" type="text" id="nom" value="Nom" size="25" maxlength="50" />
</label>
<label>
<input name="prenom" type="text" id="prenom" value="Prénom" size="25" maxlength="50" />
</label>
</p>
<p>
<label>
<input name="mail" type="text" id="mail" value="Mail" size="25" maxlength="50" />
</label>
<label>
<input name="tel" type="text" id="mail" value="Téléphone" size="25" maxlength="50" />
</label>
</p>
<p>
<label>
<textarea name="message" cols="42" rows="4" id="message">Message</textarea>
</label>
</p>
<input name="submit" type="submit" class="bouton" value="Envoyer">
</fieldset>
</form>Je me souviens avoir lu quelquepart des choses à ce sujet avec htmlentities et ereg pour traiter les variables Post, je crois, mais je ne connais pas cela.
J'espère que vous pourrez m'aider,
Merci