El spam es un problema que todos los propietarios de sitios web tienen dificultades para resolver. La simple verdad es que si tiene formularios web para recopilar información de sus clientes en su sitio, obtendrá algunos envíos de spam. En algunos casos, puede recibir montones y montones de envíos de spam.
El spam es un gran problema incluso en formularios que no hacen nada que pueda beneficiar al spammer (como volver a publicar en el sitio web donde podrían agregar backlinks a otros sitios). Los spammers usan formularios web para tratar de promover sus propios negocios y sitios, y también los usan para fines más maliciosos. Bloquear a los spammers de sus formularios web puede ser una herramienta de productividad importante y evitará que la sección de comentarios de su sitio web se vea en mal estado.
Para proteger sus formularios web, debe dificultar o imposibilitar que una herramienta automatizada rellene o envíe el formulario, al mismo tiempo que facilita lo más posible a sus clientes el llenado del formulario. Esto a menudo es un acto de equilibrio, ya que si hace que el formulario sea demasiado difícil de llenar, sus clientes no lo llenarán, pero si lo hace demasiado fácil, obtendrá más spam que envíos reales. ¡Bienvenido a los momentos divertidos de administrar un sitio web!
Agregar campos Que Solo los Robots de Spam Pueden Ver y Rellenar
Este método se basa en CSS o JavaScript o ambos para ocultar campos de formulario de los clientes que visitan el sitio legítimamente mientras los muestran a los robots que solo leen el HTML. Luego, cualquier envío de formulario que contenga ese campo de formulario que se está llenando puede considerarse spam (ya que un bot lo envió claramente) y eliminarlo con tu script de acción de formulario. Por ejemplo, podría tener el siguiente HTML, CSS y JavaScript:
Dirección de correo electrónico:
Correo electrónico:
CSS
styles.css
data-type=»código»>
archivo
#email2 { display: none; }
data-type=»código»>
JavaScript
script.js
data-type=»código»>
archivo
$(document).ready(
function() {
$('#email2').hide()
}
);
data-type=»código»>
Los robots de spam va a ver el código HTML con los dos campos de correo electrónico, y rellenar tanto de ellos porque ellos no ven la CSS y JavaScript que se esconde de los clientes reales. A continuación, puede filtrar los resultados y los envíos de formularios que incluyan el campo
email_add
data-type=»code»>
son spam y se pueden eliminar automáticamente antes de que tenga que lidiar con ellos manualmente.
Este método funciona bien con bots de spam menos sofisticados, pero muchos de ellos se están volviendo más inteligentes y ahora leen CSS y JavaScript. Usar CSS y JavaScript ayudará, pero no detendrá todo el spam. Este es un buen método para usar si no está terriblemente preocupado por el spam, pero le gustaría hacerlo un poco más difícil para los robots de spam. Sus clientes no lo notarán en absoluto.
Use a
A es un script para impedir que los robots de spam accedan a sus formularios mientras que los humanos pueden (en su mayor parte) pasar. Si alguna vez ha llenado un formulario y ha tenido que volver a escribir esas letras onduladas, ha utilizado a . Puede obtener una solución gratuita de Re.
s puede ser eficaz para bloquear el spam. Algunos sistemas han sido hackeados, pero sigue siendo un bloqueo efectivo. El problema con s es que pueden ser muy difíciles de leer para la gente. Re incluye una versión audible para personas ciegas, pero muchas personas no se dan cuenta de que pueden escuchar algo y pasar. Nunca es una buena idea frustrar a los usuarios, y estos formularios a menudo hacen precisamente eso.
Este método funciona bien para formularios importantes que desea proteger, como los formularios de registro. Pero debes evitar usar s en todos los formularios de tu página, ya que eso puede disuadir a los clientes de usarlos.
Use una Pregunta de prueba Amigable con el humano
La idea detrás de esto es poner una pregunta que un humano pueda responder, pero un robot no tendría idea de cómo completarla. Luego filtra los envíos para buscar la respuesta correcta. Estas preguntas son a menudo en forma de un simple problema matemático como » ¿qué es 1 + 5?». Por ejemplo, aquí está el HTML de un formulario con una pregunta como esta:
Dirección de correo electrónico:
Una cebra es negra y
data-type = «code» >
Entonces, si el valor
stripes
no es «blanco», sabrá que es un spambot y podrá eliminar los resultados.data-type= «código» >
Use Tokens de sesión Que se aplican a Nivel del Sitio y que se requieren en el Formulario
Este método utiliza cookies para establecer tokens de sesión cuando un cliente visita el sitio web. Este es un excelente elemento disuasorio para los robots de spam porque no establecen cookies. De hecho, la mayoría de los robots de spam llegan directamente a los formularios, y si tiene la cookie de sesión no establecida en el formulario, eso asegurará que solo las personas que visitaron el resto del sitio llenen el formulario. Por supuesto, esto podría bloquear a las personas que marcaron el formulario. Aprende a escribir tu primera cookie HTTP.
Registre Datos De los Envíos de Formularios, como la Dirección IP, y Utilícelos para Bloquear a los Spammers
Este método es menos una defensa de primera línea y más una forma de bloquear a los spammers después del hecho. Al recopilar la dirección IP en sus formularios, puede detectar patrones de uso. Si recibe 10 envíos de la misma IP en un período de tiempo muy corto, es casi seguro que esa IP es spam.
Puede recopilar la dirección IP utilizando PHP o ASP.Net y luego envíalo con los datos del formulario.
PHP:
$ip = getenv("REMOTE_ADDR") ;
data-type= «code» >
ASP.Net
ip = '
data-type=»code»>
Este método funciona bien si no recibe mucho spam continuo, sino que recibe ráfagas periódicas de actividad, como un formulario de inicio de sesión. Cuando ve a personas que intentan acceder a sus áreas protegidas varias veces, conocer su IP para que pueda bloquearlas puede ser una protección sólida.
Use una herramienta como Akismet para Escanear y Eliminar Envíos de Spam
Akismet está configurado para ayudar a los bloggers a bloquear el spam de comentarios en sus formularios, pero también puede comprar planes para ayudarlo a bloquear el spam en otros formularios.
Este método es muy popular entre los bloggers porque es muy fácil de usar. Solo tienes que obtener una API de Akismet y luego configurar el plugin.
La Mejor Estrategia de Gestión de Spam Utiliza una Combinación de Métodos
El Spam es un gran negocio. Como tal, los spammers son cada vez más creativos en sus formas de sortear las herramientas de bloqueo de spam. Tienen programas de spam más sofisticados y muchos incluso emplean a personas mal pagadas para publicar sus mensajes de spam directamente. Es casi imposible bloquear a un humano real que envía spam manualmente a través de un formulario. Ninguna solución va a atrapar todo tipo de spam. Por lo tanto, el uso de múltiples métodos puede ayudar.
Pero recuerde, no use varios métodos que el cliente pueda ver. Por ejemplo, no uses una pregunta con respuesta humana en el mismo formulario. Esto molestará a algunos clientes y te hará perder envíos legítimos.
Herramientas específicas para combatir el spam de comentarios
Uno de los lugares más comunes que la gente ve spam es en los comentarios, y esto a menudo se debe a que usan un paquete de blogs estándar como WordPress. Si usted mismo está alojando WordPress, hay algunas cosas que puede hacer para combatir específicamente el spam de comentarios. Y estos funcionan para cualquier sistema de blogs al que tenga acceso a los archivos:
- No uses URLs estándar para formularios, la mayoría de los comentarios de spam se automatizan, y van a WordPress y otros sitios de blogs y simplemente atacan el formulario directamente. Esta es la razón por la que a veces verás spam de comentarios, incluso si tienes comentarios eliminados de tu plantilla. Si el archivo de comentarios (generalmente llamado
comments.php
) existe en su sitio, los spammers pueden usarlo y lo usarán para publicar comentarios de spam en su blog. Al cambiar el nombre del archivo a otra cosa, puede bloquear estos robots de spam automatizados.
- Mueve tus páginas de formulario periódicamente, incluso si no usas un nombre de archivo estándar para tus comentarios o campos de formulario, los spammers pueden encontrarlos si están vinculados en tu sitio. Y hay muchos negocios de spam donde todo lo que hacen es vender listas de URL a formularios donde los spammers pueden escribir sus publicaciones. Tengo un par de páginas de formularios que no han estado activas en más de cinco años y que aún reciben visitas periódicas de los spammers. Obtienen un 404 y lo veo en mis estadísticas, así que sé que no debería volver a usar esa página.
- Cambie el nombre de sus scripts de acción de formulario periódicamente — pero al igual que las páginas de formulario, debe cambiar periódicamente el nombre de cualquier script al que apunte en el atributo
action
de sus formularios. Muchos spammers apuntan directamente a estos scripts, evitando los formularios por completo, por lo que incluso si mueves la página de tu formulario, pueden enviar su spam. Al mover el script, los conduce a una página de error 404 o 501 en su lugar. Y al igual que la sugerencia anterior, tengo scripts que han sido eliminados de mi servidor durante años que los spammers aún intentan golpear.
Los spammers son realmente molestos, y mientras el costo de enviar el spam sea mucho más bajo que el retorno, siempre habrá spammers. Y la carrera armamentista de herramientas de protección contra bots de spammer seguirá aumentando. Pero, con suerte, con una combinación de las herramientas enumeradas aquí, tendrá una estrategia que durará unos años.