Formulários de contato, bots e spam sem vergonha

Depositphotos 52422737 s

O anti-spam é um grande tópico com e-mail. As pessoas vêm tentando manter sua caixa de entrada limpa há anos, com tudo, desde o irritante Spamarrest ferramentas para filtros simples de lixo eletrônico com sua incrível capacidade de falsos positivos. Na verdade, o spam de e-mail tornou-se um incômodo tão grande que o governo até interveio (imagine isso) e escreveu leis a respeito. Mas há uma forma de spam que ainda depende do vigilante ... e espero que você me ajude.

Tudo começou como um aborrecimento, mas cresceu para uma interrupção total dos negócios. Cada envio de formulário aciona automaticamente um lead em meu CRM. O que significa que no último ano ou assim, tive um monte de oportunidades para vender para empresas de SEO que podem me colocar na página 1 do Google. Então, comecei a criar um manipulador de formulários caseiro que começasse a identificar e eliminar esses spammers desagradáveis ​​SEM risco de falso-positivo. Porque, afinal, embora eu odeie spam, odeio ainda mais uma oportunidade perdida.

Para começar, reduzi os tipos de spam que eu poderia eliminar em duas categorias:

  1. O ser humano real que envia dados errôneos apenas para chegar ao cookie por trás do formulário ... a avaliação gratuita, o white paper gratuito, o marketing de gotejamento conteúdo, etc.
  2. Os bots que rastreiam a web enviando links de afiliados e dados errôneos para qualquer forma que possam encontrar.

Além disso, como parte deste pequeno projeto colaborativo (ao qual você pode participar por meio de comentários aqui), deixe-me adicionar o seguinte parâmetro: NO CAPTCHA. Não consigo ler as malditas coisas sozinho metade do tempo e há motivos para temer que o próprio CAPTCHA reduza a conversão de leads apenas por meio da dificuldade.

Portanto, o truque é criar uma série de testes lógicos contra os quais é possível executar os dados enviados do formulário que identificarão positivamente o spam em uma porcentagem significativa do tempo, enquanto quase nunca bloquearão leads legítimos.

É aqui que estou:

  1. Insira uma entrada no formulário, digite = texto, mas estilo = ”display: nenhum;”. Os bots irão naturalmente injetar um valor em qualquer campo de entrada de texto em um esforço para contornar os verificadores de campo necessários. No entanto, se esse campo específico fosse submetido com dados, podemos saber com certeza que um ser humano não o fez.
  2. Verifique se há “asdf”. Simples, eu sei, mas um relatório de spam histórico mostrou que essa era uma forma bastante popular de envios falsos. Se a string asdf aparecer em qualquer campo, é spam.
  3. Verifique se há caracteres repetidos. Eu tentei e tentei, mas não conseguia pensar em um motivo legítimo para que qualquer caractere se repetisse mais de 3 vezes em um nome, nome de empresa ou campo de endereço. Se você pode me convencer do contrário, ótimo. Por enquanto, “XXXX Consulting Company” não será um lead para mim.
  4. Verifique se há strings idênticas. Além do vizinho de Tim Allen, Wilson Wilson, ninguém que eu conheço tem o mesmo valor de string em todos os campos de um formulário de contato. Se muitos campos forem idênticos, é spam.
  5. Finalmente, e esta é a chave: verifique os URLs aos quais eles não pertencem. Um dos casos mais clássicos de spam é colocar um URL em um campo ao qual ele não pertence. Fora da caixa de “mensagem” da área de texto, um URL não deve ser usado para o nome, número de telefone, nome da empresa ou de outra forma. Se tentarem, é spam.

Esses 5 testes lógicos reduziram os envios de spam em bem mais de 70% no mês passado em nosso formulário de contato grátis produtos. Eu adoraria aumentar esse número ainda mais. O maior número de envios de spam que ainda escapam são ofertas de SEO de má reputação. Então, aqui está o próximo desafio: Você pode criar uma série de termos-chave e limite para densidade que indique razoavelmente que o conteúdo do envio está falando sobre SEO? Claro, isso pode ser uma má ideia para os caras do SlingShot implementar em seu site, mas para o resto de nós, serviria.

Os desenvolvedores da Web se unem: o que mais deve ser testado?

5 Comentários

  1. 1

    Eu absolutamente amo a ideia de adicionar um campo com display:none. É engenhoso! Eu escrevi um post muitas luas atrás sobre o quão terrível é a tecnologia Captcha… ela pune os inocentes e adiciona um passo adicional e desnecessário para os usuários. É a antítese da experiência do usuário. Posso testar seu campo oculto!

  2. 2

    Eu absolutamente amo a ideia de adicionar um campo com display:none. É engenhoso! Eu escrevi um post muitas luas atrás sobre o quão terrível é a tecnologia Captcha… ela pune os inocentes e adiciona um passo adicional e desnecessário para os usuários. É a antítese da experiência do usuário. Posso testar seu campo oculto!

  3. 3

    Ele funciona muito bem, mas se você o lançar em formulários existentes, pode demorar um pouco para o efeito se propagar. Os bots geralmente armazenam seu formulário em cache e publicam nele como o viram semanas atrás, até que voltem e o vejam novamente. Então, enquanto eles estiverem postando no seu formulário em cache, eles passarão. Dentro de cerca de um mês, você deve começar a ver os resultados.

  4. 4

    1. Um temporizador;
    2. Nomes de campos de formulário difíceis de adivinhar;
    3. validação de formulário do lado do servidor;
    4. um campo de formulário que não deve ter um valor;
    5. fazer com que o JavaScript atualize um campo oculto com um envio de formulário;
    6. alterar os atributos do formulário ao enviar com JavaScript;

    #1 é o meu favorito. Inicie um cronômetro assim que a página de contato (ou qualquer página) for carregada. No lado do servidor, defina um tempo necessário esperado para preencher o formulário. Se enviado muito cedo, o usuário verá uma mensagem/conta desativada/o administrador recebe um email/etc. Este realmente elimina 99.9% de qualquer tipo de atividade de bot.

    #2 armazena os nomes dos campos em uma sessão e dá aos campos nomes aleatórios. Torna difícil para um bot aprender.

    #3 este é importante. O email pode ser verificado com muita precisão com expressões regulares, um campo de número de telefone deve conter 10 números, 2 ou mais campos com o mesmo valor = bot, etc.

    #4 explicou em seu artigo, 5 e 6 algumas opções de script.

  5. 5

    Obrigado pelo post, Nick. Valorize a partilha.

    Martin – Acho que o cronômetro é uma ótima ideia. Suponho que um bot passaria por ele e o limite seria um pouco baixo... talvez 5 segundos? Estou curioso por causa de formulários pré-preenchidos para usuários reais, bem como usuários que voltam à página e sabem imediatamente que desejam preencher o formulário. apenas meus dois centavos. eu sei que estou cerca de um ano atrasado neste post, então não espero muita resposta, apenas publicando na esperança 🙂

    obrigado novamente!

    -Dave

O que você acha?

Este site usa o Akismet para reduzir o spam. Saiba como seus dados de comentário são processados.