邮件php中的奇怪隐藏脚本

时间:2013-05-22 07:32:57

标签: javascript email

我的form2mail php有两个问题。

  1. 我过去常常收到表格,但昨天出现了一些新内容:“bcc”在实际消息之前。所以我猜有人也在收到我的邮件副本!
  2. 所以我请求了一些帮助,他发现了一个隐藏的脚本,只有在论坛上复制/粘贴时才出现! 这是:

    <script type="text/javascript">
    /* <![CDATA[ */
    (function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
    /* ]]> */
    </script>
    
    1. 我们一直尝试到深夜(清早)各种解决方案都是徒劳的。我从我的网站收到了一两封邮件,然后什么都没收到!
    2. 以下是原始代码:

      <!--------------------------------------------
                  TRAITEMENT DES DONNEES DU FORMULAIRE ---->
                  <?php
                  // variables éditables par vous 
                  // destinataire de l'email
                  $dest = 'xxxx@xxxxxxx.fr';
                  // sujet de l'email 
                  $objet = '[xxxxxxx] contact depuis le site';
      
                  // on s'assure que les info ont bien été postées depuis le site ensino.fr
                  // if ((eregi($_SERVER['SERVER_NAME'], $_SERVER['HTTP_REFERER'])) || 1) {
      
                      // transfert des variables postées avec epurage antispam 
                      foreach ($_POST as $key=>$val){
                          $val = nl2br($val);
                          list($val, $foo) = split('<',$val,2);
                          $$key = utf8_decode($val) ;             
                      }
      
                      // on vérifie que les champs ont bien été renseignés, en préparant au fur et à mesure le message d'erreur
                      $errorMsg = '';
                      if ($name_input == '')              $errorMsg .= "<li>Votre nom n'est pas pr&eacute;cis&eacute;<br></li>\n";
                      if ($email_input == '')             $errorMsg .= "<li>Votre adresse email n'est pas pr&eacute;cis&eacute;<br></li>\n";
                      if (! eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email_input ))    $errorMsg .= "<li>Votre adresse email n'est pas valide<br></li>\n"; 
                      if ($service_input == '')           $errorMsg .= "<li>Vous n'avez pas pr&eacute;cis&eacute; le service souhait&eacute;<br></li>\n";
                      if ($categorieclient_input == '')   $errorMsg .= "<li>Vous n'avez pas pr&eacute;cis&eacute; votre qualit&eacute;<br></li>\n";
                      if ($telephone == '')               $errorMsg .= "<li>Vous n'avez pas pr&eacute;cis&eacute; votre num&eacute;ro de t&eacute;l&eacute;phone<br></li>\n";
      
                      // traitement des données
                      if ($errorMsg == '') { // il n'a pa pas d'erreur : envoi du formulaire
                          $headers  = "From: " . $name_input . "<" . $email_input . ">\n";
                          $headers  .= "MIME-version: 1.0\n";
                          $headers  .= "Content-type: text/html; charset= iso-8859-1\n";
                          $message =   '<b>Le message suivant a &eacute;t&eacute; laiss&eacute; sur le site xxxxxx.fr : </b><br><br> ';
                          $message .=  '<b>Nom : </b> ' . $name_input . '<br>'; 
                          $message .=  '<b>Email : </b> ' . $email_input . '<br>';
                          $message .=  '<b>Service : </b> ' . $service_input . '<br>';
                          $message .=  '<b>Type client : </b> ' . $categorieclient_input . '<br>';
                          $message .=  '<b>T&eacute;l&eacute;phone: </b> ' . $telephone . '<br>';
                          $res = mail($dest, $objet, $message, $headers);
                          if ($res ) {
                              ?>
                  <!--indiquez ici le message de remerciement / confirmation -->
                  Merci ! Votre message a été transmis <br />
                  à un conseiller xxxxxxxx.</p>
                <p><br />
                    <br />
                  Thanks ! Your message has been sent <br />
                  to our team.<br />
                  <br />
                  <?php
                          } else { // erreur technique du système (extrèmement rare !!!)
                              ?>
                  <!--indiquez ici le message d'erreur -->
                  Une erreur inconnue est survenue lors de l'envoi de votre message. </p>
                <p><a href='javascript:history.back()'>retour</a></p>
                <?php
                          }
      
      
                      } else { // il y a des d'erreur : on l'indique avec un lien retour
                          ?>
                <!--indiquer ici le message d'erreur -->
                ERREUR ! le formulaire est incomplet ou mal renseign&eacute;.
        <!-- nous pouvons intégrer le détail des erreurs commises, champs manquants, adresse email invalide-->
        <?php
                                  echo "<ul class='contact_erreur'>" . $errorMsg ."</ul>"; // je n'ai pas crée la classe "contact_erreur";
                              ?>
        <p><a href='javascript:history.back()'>retour</a></p>
        <?php 
                      }
                  /*} else {
                      // les données ont été transmises sepuis un autre site 
                      // A priori, c'est une tentative de fraude, donc ce n'est 
                      // pas la peine de s'étendre sur les commentaires ;-)
                      echo "Erreur de sécurité<br>Le message n'a pas été envoyé"; 
                  }
                  */                      
                  ?>
        <!--FIN DU TRAITEMENT DES DONNEES DU FORMULAIRE 
                      ---------------------------------------------->
      

      你能帮助我吗?

      非常感谢!

0 个答案:

没有答案