Esse área é só para dicas de segurança de códigos fonte, pastas, etc...
Moderador: web
por web Offline » Dom Ago 24, 2008 10:22 pm
|
O objetivo desse tópico é mostrar como bloquear o acesso a uma página quando é acessada via proxy, ou seja, um usuário acessa um site da internet que oferece a opção de navegar pela net via proxy.
Não testei com todos os proxys da internet, portanto, teste bem o script antes de usar no site.
A base do script é em php.
A primeira coisa a fazer é obter o DNS REVERSE, que é praticamente o servidor que oferece o seu IP para conexão.
$ip = $_SERVER['REMOTE_ADDR'];
$completo = gethostbyaddr($ip);
$host = preg_replace("/^[^.]+./", "*.", $completo);
echo "[".$host."]";
No script acima entre [ e ] vai aparecer o Dns Reverse
Fiz alguns testes e notei aqui que proxy geralmente tem números, outros vem vazio, outros com ., etc...
Então fiz um if com o que consegui obter testando o script com alguns proxys.
Fica o script acima, mais o seguinte
if(ereg("([0-9])", $host)
|| $host==""
|| $host=="."
|| $host=="*.net"
|| $host=="*.info"
|| $host=="*.com"
|| $host=="*.hostforweb.com"
|| $host=="*.ip.secureserver.net"
|| $host=="*.techentrance.com"
|| $host=="*.guardster.com"
|| $host=="*.corenetworks.net"
|| $host=="*.proxysitehosting.com"){
echo "via proxy";
} else {
echo "acesso normal";
}
Você pode fazer alguns testes, crie um arquivo com o script acima, acesse algum site que permite acessar outro site via o proxy do site, e veja o valor retornado entre o [ e ], para adicionar ao if.
Rode também o script em seu servidor, e acesse ele sem um proxy para ver o resultado para comparação.

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12407
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
Voltar para Dicas de segurança
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes