Problemas con funcion MAIL()

Miguel MS arjwinzip en gmail.com
Mie Sep 14 12:55:26 CLT 2005


Hola.
En un sitio del que soy webmaster hace unos dias nos estan llegando
correos (unos 15 diarios) enviados de nuestro formulario de contacto,
que usa la funcion mail() de php.

El problema es que estos emails siguen un formato completamente
distinto al configurado, ya que a񡤥n letras al asunto, e incluyen en
el cuerpo cosas como:

Content-Type: multipart/mixed; boundary=\"===============0600614357==\"
MIME-Version: 1.0
Subject: 8309cbbd
To: uaw@[misitio].cl
bcc: jrubin3546 en aol.com
From: uaw@[misitio].cl

This is a multi-part message in MIME format.

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

zrteh
--===============0600614357==--


Es decir, insertan codigo al formulario. 

Yo supongo que estan atacando mediante algun script o exploit, ya que
los mails deberian indicar desde que navegador se enviaron con:

$cuerpo .= "Navegador: ". getenv"HTTP_USER_AGENT")."\n";

pero en este tipo de email no llegan esos datos.

Por ahi vi que la funcion mail() de php es vulnerable a inyeccion de
contenido MIME, pero no encuentro como evitar esto.

Lo que uso para seguridad en los campos de envio es "strip_tags", como en:

$cuerpo .= "Nombre: " . strip_tags($HTTP_POST_VARS["nombre"]) . "\n"; 

pero eso solo filtra el contenido html.

Alguien sabe como evitar esto????'
La funcion mail la uso de la siguiente forma:
mail("arjwinzip en gmail.com,[misitio]@[misitio.cl]","Formulario
[misitio]",$cuerpo,"From: $correo"))
 {

Gracias,
Miguel.



Más información sobre la lista de distribución PHP