Pergunta

Eu tenho um site, blog de agregação

as histórias são ordenados pelo número de visitas

Eu acho que eu estou enfrentando um spam de visitas

porque as histórias de alguns blogs recebem um monte de visitas no mesmo segundo com endereço ip eferente

meu site não permite visitas do mesmo ip; no entanto, os meus visitantes de alguma forma mudar seus ips.

é a sua qualquer solução para detectar este visitas de spam ?, eu me pergunto como o Google AdSense resolve esse problema um?

Graças

Foi útil?

Solução

A resposta curta é que é impossível parar um atacante determinado se uma única visita não verificado é a única coisa necessária para alterar a ordem de sua história. Você pode querer pensar sobre a implementação de um sistema de votação utilizador registado.

No entanto, você pode coletar vários pedaços de informações e combinar todos eles:

1) User Agent
2) Endereço IP
3) X-transmitido-Para cabeçalho (se disponível)

Muitas vezes os atacantes serão preguiçosos e não ciclo através de diferentes agentes de usuário. Se você configurar o seu sistema para informações processo de visita em um determinado intervalo (e não em tempo real), você poderia filtrar grandes coleções de visitas que ocorrem ao mesmo tempo com o mesmo agente de usuário exato.

Você pode sempre baixar bases de dados de procurações a partir de sites como antiproxy.com, mas a verdade é que os ataques mais bem planejado hoje vêm de botnet nós que ainda têm de ser documentados. É totalmente possível para o seu site para ser alvo de um ataque com tráfego heterogêneo que é indistinguível de visitantes normais.

No mínimo, gostaria de sugerir mudar sua implementação de modo que os usuários podem votar em histórias e exigem um captcha.

Outras dicas

Com PHP você pode verificar o $ _SERVER [ "HTTP_X_FORWARDED_FOR"] variável contra o endereço IP para um pouco mais de garantia de que o cliente é quem ele diz ser. Isso vai ajudar a identificar as pessoas através de alguns proxies.

Eu uso essa função algumas vezes. Mas, como já foi dito, pode ser difícil para obter o correto IP 100 por cento do tempo.

Não me lembro onde eu tenho a função a partir, mas parece ser bastante comum na internet.

function getRealIpAddr()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP']))   
    {
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
    {
      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    else
    {
      $ip=$_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}

Você não pode detectar com segurança um IP.

Ele pode estar chegando através de um proxy ou pode ser falsificado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top