iconomujer

LA WEB DE LOS JUEGOS ERÓTICOS
(y de otras cosas morbosas)

iconohombre

Hosting Gratis
Pagina hospedada gratuitamente en Hostinger, pulsa aquí y compruébalo

Cosas sobre el spam...

¿De donde me atacan?

¿Como lo he solucionado?

 

¿De donde me atacan?

Estos son los principales ataques por intento de "email injection" sufridos por mi pagina (desde que los intercepto):

(Información sobre qué son ataques "email injection" aquí: http://www.honesting.es/evitar-spam-en-formularios-php/)

Acciones:

"Publi"= Envía publicidad con nombre de email falso, usando el sistema de email de otros. Así no queda registrado de donde se envió. En mi caso aparentaban ser enviados desde mi pagina y quien quedaba registrado era yo.

"Email"=Email del host al que he realizado la pertinente reclamación/denuncia

 

IP

ISP

Día / hora

Ubicación/Comentarios

146.0.74.205 146.0.74.205 Fri, 11 Apr 2014 09:39:27 pm
Sun, 13 Apr 2014 08:00:15 am
Sun, 13 Apr 2014 12:42:14 pm
Tue, 15 Apr 2014 02:01:46 pm
Thu, 17 Apr 2014 02:52:03 am
UbicaciónHolanda
Acción=Publi
Email: abuse@hostkey.ru
37.187.142.194 ns413667.ip-37-187-142.eu Fri, 11 Apr 2014 11:13:05 pm
Fri, 11 Apr 2014 11:13:06 pm
Fri, 11 Apr 2014 11:13:07 pm
Fri, 11 Apr 2014 11:13:07 pm
Fri, 11 Apr 2014 11:13:07 pm
UbicaciónFrancia
Acción=Publi
Email: abuse@ovh.net
62.210.142.7 62-210-142-7.rev.poneytelecom.eu Sat, 12 Apr 2014 01:14:43 pm
Sat, 12 Apr 2014 01:14:45 pm
Sat, 12 Apr 2014 01:14:47 pm
Sat, 12 Apr 2014 01:14:48 pm
Sat, 12 Apr 2014 01:14:51 pm
UbicaciónFrancia
Acción=Publi
Email: abuse@iliad-entreprises.fr
192.99.4.25 ns4009624.ip-192-99-4.net Sun, 13 Apr 2014 03:01:52 am
Sun, 13 Apr 2014 03:01:53 am
Sun, 13 Apr 2014 03:01:55 am
Sun, 13 Apr 2014 03:01:56 am
Sun, 13 Apr 2014 03:01:57 am
UbicaciónCanada
Acción=Publi
Email: abuse@ovh.ca
94.23.233.204 ns307835.ovh.net Sun, 13 Apr 2014 03:20:35 pm
Sun, 13 Apr 2014 03:20:36 pm
Sun, 13 Apr 2014 03:20:37 pm
Sun, 13 Apr 2014 03:20:38 pm
Sun, 13 Apr 2014 03:20:40 pm
UbicaciónFrancia
Acción=Publi
Email: abuse@ovh.net
188.143.232.111

Bloqueado

188.143.232.111 Wed, 16 Apr 2014 11:43:16 am
Mon, 28 Apr 2014 03:02:00 am
Mon, 28 Apr 2014 03:02:01 am
Mon, 28 Apr 2014 03:02:03 am
Mon, 28 Apr 2014 03:02:04 am
Tue, 10 Jun 2014 09:09:17 am
Tue, 10 Jun 2014 09:09:22 am
Tue, 10 Jun 2014 09:09:23 am
Tue, 10 Jun 2014 09:09:35 am
Tue, 10 Jun 2014 09:09:43 am
Sun, 15 Jun 2014 08:02:31 am
Sun, 15 Jun 2014 08:02:32 am
Sun, 15 Jun 2014 08:02:32 am
Sun, 15 Jun 2014 08:02:33 am
Sun, 15 Jun 2014 08:02:37 am
UbicaciónRusia
Acción=Publi
Email: address hidden
188.143.232.31 188.143.232.31 Fri, 18 Apr 2014 05:23:02 am
Fri, 18 Apr 2014 05:23:03 am
Fri, 18 Apr 2014 05:23:04 am
Fri, 18 Apr 2014 05:23:06 am
Fri, 18 Apr 2014 05:23:06 am
UbicaciónRusia
Acción=Publi
Email: address hidden
91.121.170.197 ns361899.ovh.net Sun, 27 Apr 2014 09:10:26 pm
Sun, 27 Apr 2014 09:10:26 pm
Sun, 27 Apr 2014 09:10:28 pm
Sun, 27 Apr 2014 09:10:31 pm
Sun, 27 Apr 2014 09:10:32 pm
UbicaciónFrancia
Acción=Publi
Email: abuse@ovh.net
188.143.232.230

Bloqueado

188.143.232.230 Tue, 10 Jun 2014 05:13:45 am
Tue, 10 Jun 2014 05:13:46 am
Tue, 10 Jun 2014 05:13:46 am
Tue, 10 Jun 2014 05:13:47 am
Tue, 10 Jun 2014 05:13:45 am
Mon, 16 Jun 2014 08:47:23 am
Mon, 16 Jun 2014 08:47:24 am
Mon, 16 Jun 2014 08:47:25 am
Mon, 16 Jun 2014 08:47:26 am
Mon, 16 Jun 2014 08:47:27 am
UbicaciónRusia
Acción=Publi
Email: abuse@pinspb.ru
121.205.199.205

Bloqueado

205.199.205.121.broad.
pt.fj.dynamic.163data.com.cn
Tue, 19 Jun 2014 04:25:17 am
Tue, 19 Jun 2014 06:08:06 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
27.153.211.87

 

87.211.153.27.broad.
pt.fj.dynamic.163data.com.cn

Thu, 26 Jun 2014 02:16:30 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
188.143.232.6

Bloqueado

188-143-232-6.server.com Fri, 04 Jul 2014 02:08:02 pm
Sat, 12 Jul 2014 05:09:33 am
UbicaciónRusia
Acción=Publi
Email: abuse@pinspb.ru
120.37.208.228 228.208.37.120.broad.
pt.fj.dynamic.163data.com.cn
Sat, 05 Jul 2014 10:04:42 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
120.37.211.201

Bloqueado

201.211.37.120.broad.
pt.fj.dynamic.163data.com.cn
Thu, 10 Jul 2014 02:52:13 pm
Fri, 11 Jul 2014 03:19:20 pm
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.153.238.196

Bloqueado

196.238.153.27.broad.
pt.fj.dynamic.163data.com.cn

Fri, 18 Jul 2014 02:42:02 am
Mon, 21 Jul 2014 10:16:35 pm
Tue, 22 Jul 2014 01:45:16 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

140.237.6.230

140.237.6.230

Mon, 21 Jul 2014 06:49:23 am UbicaciónChina
Acción=Publi
Email:
search-apnic-not-arin@apnic.net

27.153.239.69

69.239.153.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 07:24:46 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.150.234.66

66.234.150.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 09:39:07 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
110.89.22.31

31.22.89.110.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 11:24:18 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
27.153.237.103

Bloqueado

103.237.153.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 02:36:59 pm
Tue, 22 Jul 2014 02:49:15 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
110.89.22.222

222.22.89.110.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 03:17:41 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
27.153.238.67

Bloqueado

67.238.153.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 03:45:19 pm
Tue, 22 Jul 2014 12:52:49 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
27.150.247.94

Bloqueado

94.247.150.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 05:15:01 pm
Mon, 21 Jul 2014 05:56:23 pm
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
140.237.13.10

140.237.13.10

Mon, 21 Jul 2014 05:41:06 pm UbicaciónChina
Acción=Publi
Email:
search-apnic-not-arin@apnic.net
121.205.215.39

39.215.205.121.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 06:02:24 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
125.78.199.104

Bloqueado

104.199.78.125.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 07:19:40 pm
Tue, 22 Jul 2014 12:41:27 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
117.26.77.64

64.77.26.117.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 07:46:05 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
117.26.117.75

75.117.26.117.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 07:57:54 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn
140.237.7.127 140.237.7.127.broad.
pt.fj.dynamic.163data.com.cn
Mon, 21 Jul 2014 10:10:37 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.153.236.234

234.236.153.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 21 Jul 2014 11:50:53 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.150.220.248

248.220.150.27.broad.
pt.fj.dynamic.163data.com.cn

Tue, 22 Jul 2014 01:22:50 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

125.78.199.237

237.199.78.125.broad.
pt.fj.dynamic.163data.com.cn

Tue, 22 Jul 2014 03:30:31 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.153.203.120

Bloqueado

120.203.153.27.broad.
pt.fj.dynamic.163data.com.cn

Thu, 24 Jul 2014 03:41:10 am
Thu, 24 Jul 2014 05:07:08 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

59.58.156.223

223.156.58.59.broad.
pt.fj.dynamic.163data.com.cn

Sat, 26 Jul 2014 01:17:37 am UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.159.232.160

Bloqueado

160.232.159.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 11 Aug 2014 09:46:56 pm
Tue, 12 Aug 2014 12:48:48 am
Tue, 12 Aug 2014 06:20:03 am
Tue, 12 Aug 2014 06:31:30 am
Tue, 12 Aug 2014 06:39:19 am
Tue, 12 Aug 2014 07:41:02 am
Tue, 12 Aug 2014 07:41:03 am
Tue, 12 Aug 2014 07:42:59 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.150.247.88

Bloqueado

88.247.150.27.broad.
pt.fj.dynamic.163data.com.cn

Mon, 11 Aug 2014 10:35:56 pm
Mon, 11 Aug 2014 11:12:38 pm
Mon, 11 Aug 2014 11:32:10 pm
Tue, 12 Aug 2014 12:40:45 am
Tue, 12 Aug 2014 07:38:14 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

121.205.243.238

Bloqueado

238.243.205.121.broad.
pt.fj.dynamic.163data.com.cn

Mon, 11 Aug 2014 11:11:23 pm
Mon, 11 Aug 2014 11:11:24 pm
Mon, 11 Aug 2014 11:13:45 pm
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

120.37.243.120

Bloqueado

120.243.37.120.broad.
pt.fj.dynamic.163data.com.cn

Mon, 11 Aug 2014 11:42:04 pm
Tue, 12 Aug 2014 12:05:49 am
Tue, 12 Aug 2014 12:05:52 am
Tue, 12 Aug 2014 12:34:28 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

222.77.227.176

176.227.77.222.broad.
pt.fj.dynamic.163data.com.cn

Mon, 11 Aug 2014 11:55:42 pm UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.153.136.3

Bloqueado

3.136.153.27.broad.
pt.fj.dynamic.163data.com.cn

Tue, 12 Aug 2014 12:00:43 am
Tue, 12 Aug 2014 12:19:58 am
Tue, 12 Aug 2014 12:19:59 am
Tue, 12 Aug 2014 12:51:34 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

125.78.199.78

Bloqueado

78.199.78.125.broad.
pt.fj.dynamic.163data.com.cn

Tue, 12 Aug 2014 01:06:22 am
Tue, 12 Aug 2014 01:24:23 am
Tue, 12 Aug 2014 01:39:34 am
Tue, 12 Aug 2014 01:50:26 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

27.150.220.253

Bloqueado

253.220.150.27.broad.
pt.fj.dynamic.163data.com.cn

Tue, 12 Aug 2014 01:12:25 am
Tue, 12 Aug 2014 01:20:39 am
Tue, 12 Aug 2014 01:26:45 am
Tue, 12 Aug 2014 01:52:27 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

222.77.225.40

Bloqueado

40.225.77.222.broad.
pt.fj.dynamic.163data.com.cn

Tue, 12 Aug 2014 06:30:57 am
Tue, 12 Aug 2014 08:01:44 am
UbicaciónChina
Acción=Publi
Email: abuse@fjdcb.fz.fj.cn

¿Como lo he solucionado?

 

La verdad, el resultado de mi sistema ha sido tan espectacular que no puedo menos que compartir lo que he hecho con vosotros.

Cuando empece a recibir ataques a mi pagina, me mosqueé, pero la verdad tampoco me preocupe mucho, lo consideraba algo "normal". Hasta que Hostinguer me la bloqueó, ya que estaba enviando 350 emails por hora, por eso anule todos sistemas de envío de mi pagina (ver historial)

A partir de aquí empece a informarme de como lo hacían (http://www.honesting.es/evitar-spam-en-formularios-php/) para sacar ideas de como evitarlo.

Lo primero que vi (y por el que tuve que entonar el "mea culpa") es que siempre hay que validar los campos de texto que sean modificables por el usuario. Ahí pueden insertar cadenas de texto que modifican los valores de "Para" y ademas insertar tantas "Copia para" como quieran. Así envían esos correos. Y claro, el emisor eres tú, no ellos.

En muchos sitios recomendaban simplemente detectar el ataque y no enviar el correo. Pero, para mi, no era suficiente. Quería más. Quería saber quien había sido y que había enviado.

Una vez conseguí eso, pensé en que aún no era suficiente. Tanto si lo hacían manualmente, como con algún programa informático, quería reenviarle algo, diciéndole que hacer lo que estaba haciendo es muy feo.

¿El resultado? mano de santo. Una vez reactivado el correo empece a recibir ataques casi de inmediato. Y en menos de 10 días han dejado de intentarlo. Repiten de cuando en cuando, pero la frecuencia se ha casi detenido.

Es por todo ello que no puedo dejar de compartir como lo he hecho.

En primer lugar, partimos de un código típico de formulario HTML de envío de correo, tal que así:

<form action="php/correo.php" method="post" name="contacto" id="contacto">
<input name="De" type="email" id="De" value="" size="50" />
<input name="Nombre" type="text" id="Nombre" size="50" />
<input name="Edad" type="text" id="Edad" size="50" />
<input name="Sexo" type="text" id="Sexo" size="50" />
<input name="Tema" type="text" id="Tema" size="80" />
<textarea name="Mensaje" id="Mensaje" cols="80" rows="10"></textarea>
<input type="submit" name="enviar" id="enviar" value="Enviar" />
</form>

Como veis se trata de un simple formulario con los campos de texto para rellenar los datos y finalmente un botón de "enviar".

A continuación tienes el código php para recibir la información y enviar efectivamente el email:

<?php
$to = 'labibliadelsexo@hotmail.com';
$subject = $_POST['Tema'];
$message = "De: ".$_POST['De']."\n";
$message.= "Nombre: ".$_POST['Nombre']."\n";
$message.= "Edad: ".$_POST['Edad']."\n";
$message.= "Sexo: ".$_POST['Sexo'];
$message.= "Mensaje: ".$_POST['Mensaje']."\n";

$headers = 'From: '.$_POST['De'].'' . "\r\n" .
'Reply-To: '.$_POST['De'].'' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

mail ($to, $subject, $message, $headers) or die("Email no enviado!");
header ("Location: ../gracias.html");
?>

Hasta aquí todo normal. Pero en este punto es donde, ante de pasar los datos a la orden "mail" hay que validarlos. Para eso adapté unas funciones encontradas por internet, modificándolas. Para que me sirviera para todos los casos la coloque en archivo externo llamado "validate.php", que incluyo ahora en cada uno de los php de envío de correo. Para poder realizar la validación, el php original queda así:

<?php
$contenido = "\r\nDe: " . $_POST["De"] . "\r\nNombre: " . $_POST["Nombre"] . "\r\nEdad: " . $_POST["Edad"] . "\r\nSexo: " . $_POST["Sexo"] . "\r\nTema: " . $_POST["Tema"] . "\r\nMensaje: " . $_POST["Mensaje"] . "\r\n";

include("ValidarCampos.php");

$to = 'labibliadelsexo@hotmail.com';
$subject = $_POST['Tema'];
$message = "De: ".$_POST['De']."\n";
$message.= "Nombre: ".$_POST['Nombre']."\n";
$message.= "Edad: ".$_POST['Edad']."\n";
$message.= "Sexo: ".$_POST['Sexo'];
$message.= "Mensaje: ".$_POST['Mensaje']."\n";

$headers = 'From: '.$_POST['De'].'' . "\r\n" .
'Reply-To: '.$_POST['De'].'' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

ValidarDatos($_POST['De'],$contenido);
ValidarDatos($_POST['Nombre'],$contenido);
ValidarDatos($_POST['Edad'],$contenido);
ValidarDatos($_POST['Sexo'],$contenido);
ValidarDatos($_POST['Tema'],$contenido);
ValidarDatos($_POST['Mensaje'],$contenido);

mail ($to, $subject, $message, $headers) or die("Email no enviado!");
header ("Location: ../gracias.html");
?>

Las diferencias fundamentales es que por un lado, genero la cadena "$contenido" con la totalidad de los datos del email original, después incluyo la función de php y mas tarde, justo antes de la orden "mail", hago la llamada para validar cada uno de los campos.

Y ahora, la madre del cordero, la función validar es la siguiente:

<?php
function ValidarDatos($campo,$contenido){

//Array con las posibles cabeceras a utilizar por un spammer

$badHeads = array("To:",
"Content-Type:",
"MIME-Version:",
"Content-Transfer-Encoding:",
"Return-path:",
"Subject:",
"From:",
"Envelope-to:",
"bcc:",
"http:",
"%0A",
"cc:");

//Comprobamos que entre los datos no se encuentre alguna de las cadenas del array. Si se encuentra alguna de esas cadenas, me envía un email con el contenido del mail original, mediante la función "enviarmail" y se redirige al atacante a una página de "Forbidden" (403correo.php). Si esto no ha sucedido, simplemente el código termina y retorna a la función de origen para enviar el correo normalmente.

foreach($badHeads as $valor){
if(strpos(strtolower($campo), strtolower($valor)) !== false){
      enviaremail($contenido);
      header("Location: ../403correo.php");
      exit;
      }
   }
}

function enviaremail($contenido){

//Puesto que nos vamos a reenviar el correo original, con su código correspondiente, procedemos a invalidar cualquier orden, poniéndolas entre paréntesis. Así la función "mail" no lo interpreta como orden.

$contenido = str_replace('To:','(To):',$contenido);
$contenido = str_replace('TO:','(TO):',$contenido);
$contenido = str_replace('to:','(to):',$contenido);
$contenido = str_replace('From:','(From):',$contenido);
$contenido = str_replace('FROM:','(FROM):',$contenido);
$contenido = str_replace('from:','(from):',$contenido);
$contenido = str_replace('Bcc:','(Bcc):',$contenido);
$contenido = str_replace('BCC:','(BCC):',$contenido);
$contenido = str_replace('bcc:','(bcc):',$contenido);
$contenido = str_replace('Cc:','(Cc):',$contenido);
$contenido = str_replace('CC:','(CC):',$contenido);
$contenido = str_replace('cc:','(cc):',$contenido);

// Predefinimos las variables a usar

$nombre = 'Jose Luis';
$destinatario = "labibliadelsexo@hotmail.com";
$asunto = "Intento de inyectar spam el ".date("D, d M Y - h:i:s a ");
$remote_ip = (isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : "(Sin IP)";
$remote_isp = gethostbyaddr($remote_ip);
$agent = $_SERVER['HTTP_USER_AGENT'];
$referer = (isset($_SERVER['HTTP_REFERER'])) ? strtolower($_SERVER['HTTP_REFERER']) : "Sin referido";
$headers = 'From: '.$nombre.'<'.$destinatario.'>'."\r\n";

// Armamos el cuerpo del mensaje

$msg = "-------------------------------------------- \n";
$msg.= " Información de atacante \n";
$msg.= "-------------------------------------------- \n";
$msg.= "PAGINA: ".$_SERVER['PHP_SELF']."\n";
$msg.= "IP/ISP: ".$remote_ip." (".$remote_isp.")"."\n";
$msg.= "HORA: ".date("h:i:s a ")."\n";
$msg.= "FECHA: ".date("D, d M Y")."\n";
$msg.= "NAVEGADOR: ".$agent."\n";
$msg.= "DESDE: ".$referer."\n";
$msg.= "------------------------------------------ \n\n";
$msg.= "Copia de los datos originales: \n";
$msg.= $contenido."\n";
$msg.= "Fin de los datos originales \n";

// Finalmente enviamos el correo

mail($destinatario, $asunto, $msg, $headers);
}
?>

Y ya esta. En caso de que el email sea valido, lo recibiremos normalmente. Pero si es un mail con códigos extraños, recibiremos algo como esto:

De: labibliadelsexo@hotmail.com
Asunto: Intento de inyectar spam el Thu, 17 Apr 2014 - 03:03:12 pm

--------------------------------------------
Información de atacante
--------------------------------------------
PAGINA: /403correo.php
IP/ISP: 80.174.229.44 (80.174.229.44.dyn.user.ono.com)
HORA: 03:03:12 pm
FECHA: Thu, 17 Apr 2014
NAVEGADOR: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20100101 Firefox/29.0
DESDE: http://lawebdelascosasmorbosas.besaba.com/test_inocencia.html
------------------------------------------

Copia de los datos originales

¿De que tipo? (vaginal): respuesta a
¿De que tipo? (anal): respuesta b
¿De que tipo? (bucal): respuesta c
¿De que tipo? (homosexual): respuesta d
¿Donde ocurrio? (vaginal): respuesta aa
¿Donde ocurrio? (anal): respuesta bb
¿Donde ocurrio? (bucal): respuesta cc
¿Donde ocurrio? (homosexual): respuesta dd
¿Que cambiarias? (vaginal): respuesta aaa
¿Que cambiarias? (anal): respuesta bbb (from):
¿Que cambiarias? (bucal): respuesta ccc
¿Que cambiarias? (homosexual): respuesta ddd
Nombre:Jose Luis
De:jldominguezd@gmail.com
Edad:52

Fin de los datos originales

Como veis, en la linea "Que cambiarias", respuesta "bbb", se encuentra "deshabilitado" un from:. Por ese motivo actúa la rutina.

Y ademas el atacante recibe una una pagina de aviso que es esta: 403correo.php

Es cierto que pueden darse "falsos positivos". Por ese motivo propongo que se me avise por email.

Pero ademas, antes de publicar una IP como spam, la compruebo en una de las múltiples paginas que hay como comprobación. Para verlo, simplemente tomad una IP de las de la lista de arriba y ponerla en el Google. Si es emisor de spam, veréis como sale reflejada.

Y por ultimo, para los que se ponen pesaditos pesaditos, que hasta te molesta recibir por enesima vez el mensajito de "Intento de inyectar spam...", queda la solucion final. Bloquearlos para siempre.

Esa decision hay que tomarla con cuidado, ya que si la IP en cuestion es dinamica, en tal caso la usan varias personas y por tanto pudiera ser que usuarios inocentes se vean afectados y no puedan acceder a tu web.

Pero la cosa es facil, si hay reincidencia, es casi seguro de que se trata de un spamer. Ademas, si pones la IP en un buscador y aparece en alguna de las muchas listas de emisores de correo basura... no hay duda.

Bien, para realizarlo, simplemente hay que crear (si no lo tienes ya creado) un archivo con el nombre ".htaccess". Ojito que tu ordenador no le añada automaticamente la extension ".txt" al crearlo con el bloc de notas. El nombre ha de ser exclusivamente ".htaccess", con el punto delante. Nada mas.

hecho esto, se añade el siguiente codigo:

<Limit GET HEAD POST>
order allow,deny
deny from 188.143.232.230
deny from 188.143.232.111
allow from all
</limit>

y pones tantas lineas "deny from" como quieras, cada una con la IP a bloquear. Lo descargas en el directorio raiz de tu web y listos.

Si pones algo como:

deny from 124.115.1.0-255

se niega todo el rango completo, desde 124.115.1.0 hasta 124.115.1.255

Un aviso: aunque es muy corriente, puede darse el caso de que tu servidor no soporte ".htcaccess". En ese caso ponte en contacto con el servicio tecnico y seguro que te hechan una mano.