E ae
Victor Sato..
Para proteger uma página existem
n opções...
1) Você pode usuar Cookies ou Sessions para proteger uma página.
Nesses casos, a diferença entre eles é que Cookies é como se fosse um arquivo texto que é gerado automaticamente e fica no seu computador e toda vez que precisa da autentificação, ele busca nesse arquivo texto. Ao sair, ele apaga esse arquivo texto do seu computador.
Já Sessions funciona praticamente do mesmo jeito, só que esses arquivos textos ficam dentro do servidor (computador remoto, onde sua página fica) e toda vez que precisa de autentificar, ele busca nesse arquivo, dentro do servidor, gerado automaticamente quando se faz o login.
2) Você pode proteger usando um código em todas as páginas.. Usado para um administrador.. Use o código abaixo para isso:
<?
$user = "Seu Usuário aqui! ";
$pass = "Sua Senha aqui! ";
if ($PHP_AUTH_USER != $user || $PHP_AUTH_PW != $pass) {
header("WWW-Authenticate: basic realm='Victor Sato - Administrador'");
header("HTTP/1.0 401 Unauthorized");
echo "<font face='verdana' size='4'>Acesso negado...</font><br><br><font face='verdana' size='2'>Certifique-se que o usuário e a senha foram digitados<br>corretamente. Verifique se o CAPS-LOCK do seu teclado não está ativado.<br><br>Em caso de dúvidas, favor entrar em contato com o Webmaster.</font>";
exit;
} else {
?>
AQUI VAI O CÓDIGO DA SUA PÁGINA NORMALMENTE!
<? } ?> //Coloque isso no fim para fechar o código da proteção da página!
Mas eu concordo com o
PHPMAN.
Acho que alguém descobriu alguma ou várias senhas sua. As senhas que vc tem que tomar mais cuidado, obviamente são todas, mas principalmente do FTP e do MySQL. Existem várias maneiras de hackear uma página.. O cara pode ter rodado um script que verifica as permissões do arquivo e se vc vacilou em alguma permissão (deu permissão demais pra onde não precisava), ele aproveitou.
Pode ser feito também outras coisas pra quebrar o sistema de login do MySQL. Esse que praticamente todos os scripts usam. Você digita um login e senha na caixa de texto da página, o .php confere se tem no MySQL, ou outro lugar, e aceita.. Só que existem códigos maliciosos que podem quebrar esse sistema sem que o cara saiba sua senha e usuário. Para evitar isso, utilize padrões, como por exemplo, coloque em suas caixas de texto do login.php (na maioria dos casos) limites pra números de caracteres máximos(
maxlength="10"), mínimos.. e/ou só números.. etc.. Até o FrontPage ou mesmo um JavaScript faz isso beleza..
Verifique também se dentro das pastas internas do seu site tenha um arquivo index (index.html ou .htm mesmo já serve). Isso evita que ao entrar numa pasta sua interna e se não tiver um arquivo index desses, o servidor pode listar todos os arquivos seus para quem quiser..
Procure mais por segurança em PHP (nesse fórum, o WebFórum mesmo, acho que tem) ou no Google por exemplo..
Desculpem por escrever muito, mas achei importante e que talvez possa ajudar....
É só por enquanto.. hehehe

.. Qualquer dúvida, posta ae.. Se eu souber te ajudarei..
Até mais

..
Thiago.
Edição feita por: SmarThi, 22/05/2005, 15:47.