Talvez ataques de spam sejam tão pervasivos que o que está acontecendo conosco seja apenas normal.
Acredito que usamos SSO, mas ele é limitado apenas ao nosso site. Não utilizamos nenhuma autenticação externa.
O padrão é muito claro:
Eles sempre preenchem nosso campo “Gênero” com uma sequência aleatória de letras maiúsculas e minúsculas.
O nome de usuário quase sempre é um primeiro e último nome que soa “real”, seguido por uma sequência de números.
O e-mail utilizado é sempre algum domínio personalizado, geralmente com aparência muito incomum. Nunca um serviço popular.
Não ajustamos nada em nossos filtros de spam. Podemos receber três ou quatro desses por dia. Talvez dez por semana ou mais. Até agora, tenho apenas excluído os registros para que não tenham tempo de publicar.
Talvez. De qualquer forma, estou feliz que isso aconteça. É difícil acreditar que um bot baseado em IA não saberia a próxima resposta lógica para uma pergunta sobre gênero, embora.
Sim, eu tive isso também, e parou depois que mudei para aprovar manualmente as postagens de usuários TL0.
Tenho um campo personalizado que permite aos usuários em registro selecionar seu(s) sistema(s) operacional(is) (minha comunidade é para um aplicativo), e essas contas de bot tinham dados aleatórios nesse campo.
Usei uma consulta personalizada do Data Explorer para listar todos os usuários com um valor de sistema operacional inválido, ou seja, um valor não incluído na lista predefinida de opções para o campo de usuário personalizado.
SELECT
u.id,
u.username,
ucf.value AS user_field_1
FROM
users AS u
LEFT JOIN user_custom_fields AS ucf ON u.id = ucf.user_id
AND ucf.name = 'user_field_1'
WHERE
ucf.value IS NOT NULL
AND ucf.value NOT IN (
SELECT
ufo.value
FROM
user_field_options AS ufo
WHERE
ufo.user_field_id = 1
)
Sim, também tenho bloqueado o IP e o e-mail. Apenas uma vez dois contas usaram o mesmo IP, mas, honestamente, parei de verificar.
Estou um pouco preocupado que, ao bloquear tantos IPs, possa acabar impedindo usuários reais de acessar. Talvez eu não esteja entendendo quantos IPs existem e a probabilidade de um usuário legítimo ser bloqueado.
Devo sempre verificar se o IP é compartilhado antes de bloqueá-lo?
Sim, um campo personalizado no cadastro pode frequentemente capturar esse tipo de spam; essa consulta do dataexplorer é uma boa maneira de tentar detectar isso agora… mas acho que devemos fornecer algum tipo de automação que torne isso mais fácil.
Temos feito isso no Meta há anos e o cadastro de novas contas tem permanecido bastante estável.
Também forneço um endereço de e-mail no meu site para que os usuários do meu aplicativo entrem em contato comigo diretamente, então, sempre que um usuário real não conseguir se registrar, provavelmente ficarei sabendo (mas ainda não aconteceu).
Não tenho certeza se você deve, mas eu não faço isso
Oh não! Acredito que seja uma preocupação legítima — muitas partes do mundo não têm muitos endereços IP, e é muito mais comum vê-los agrupados do que costumava ser.
Hmm, não acho que isso seja garantia de que não estamos excluindo muitas pessoas.
Acho que a ideia de bloquear o endereço IP de um spammer é uma tática que vem dos EUA e da época de agentes individuais mal-intencionados e acesso doméstico via internet fornecida por cabo. Acredito que isso seja bastante inadequado hoje em dia.
Pode ser útil verificar um endereço IP contra uma lista de bloqueio bem mantida, ou verificar o ASN do endereço contra uma lista de fontes improváveis (provedores de nuvem, por exemplo). Ainda assim, não é ideal bloquear com base nisso, se você deseja permitir que as pessoas se cadastrem usando VPNs.
Claro, isso pode causar problemas para as VPNs, mas elas também são uma fonte desproporcional de abuso… então há o ônus de não tomar nenhuma ação contra elas. Acho que, idealmente, teríamos algum tipo de sistema de reputação de IP para que não fosse tudo ou nada.
É possível resolver com o Cloudflare. Use o explorador de logs e, em seguida, bloqueie e desafie conforme necessário, usando as configurações do WAF e regras personalizadas:
O plugin oficial do hCaptcha para o Discourse pode ser uma grande ajuda aqui. Ele foi especificamente projetado para ajudar a mitigar cadastros de bots.
(Pessoalmente, também adoraria ver suporte do Discourse para o Cloudflare Turnstile, já que o plano gratuito do Turnstile inclui um modo sem atrito e não interativo, enquanto funcionalidade semelhante com o hCaptcha exige a migração para o nível de preços “pro” deles, a US$ 99/mês — o que é absolutamente absurdo para quem faz hospedagem própria.)
Se eu me deparasse com isso como um possível novo usuário, provavelmente desistiria.
Eu normalmente nem mesmo excluo usuários de spam. Eu os suspendo para sempre. Assim, posso extrair informações deles com mais facilidade para identificar padrões, o que facilita minha reação rápida conforme as táticas mudam.
Se eu bloqueio um IP, eles simplesmente obtêm um novo IP. Se eu não bloqueio, alguns deles voltam com o mesmo IP e posso reagir rapidamente.
Ao mesmo tempo, tenho muitos spammers novos cujo IP de registro e último IP utilizado são diferentes.
Recebo bastante uso legítimo via VPNs, então bloquear IPs aleatórios que não correspondem realmente a spammers causaria falhas aleatórias.
Acho que deveríamos ter uma opção para bloquear o e-mail, mas não bloquear o IP ao excluir uma conta de spam. Bloquear o IP acaba sendo um custo oculto que você não pode medir diretamente. Acho que é muito
Hmm, talvez eu devesse tentar fazer isso. Desde um recente surto, estou operando no modo de aprovação de novos usuários, o que, na minha escala, é bastante gerenciável e permite que eu (ou outros moderadores) verifique no StopForumSpam.