Quando faço sites para clientes, e para mim mesmo, utilizo inúmeros include files para tornar mais fácil a manutenção do site. Podem ver um pouco mais sobre include files AQUI. Esses include files podem:
Segurança – Confidencialidade, Integridade e Disponibilidade
- Ser compostos apenas por HTML, sem programação voltada ao servidor
- Ser classes PHP usadas no site
- Composto por PHP e HTML
- Código PHP para proceder a uma acção específica, muitas vezes, scripts em AJAX
Obviamente, se uma pessoa tiver sorte e adivinhar o path e o nome do ficheiro do meu script include, pode resultar em problemas, especialmente se se tratar de um script não seguro em AJAX (mas eu não faço isso — nem vocês, pois não?). Por exemplo, tomemos o exemplo deste fraco código PHP que iria ser executado aquando de uma chamada feita com AJAX:
//includes/ajax/apagar_id.inc $query = 'DELETE FROM minha_tabela WHERE id = '.$_GET['id']; mysql_query($query);
Imagina, que o utilizador altera o ID na querystring para “‘ or 1″ — toda a informação será apagada!
Mesmo que os meus scripts sejam seguros (significa que uso uma validação apropriada para certificar-me que foi chamado correctamente), um utilizador/hacker não terá nenhum problema em chamar um ficheiro include.
É aqui que entra o “truque”, utilizando .htaccess, podemos evitar qualquer tentativa de um utilizador chegar a incluir qualquer ficheiro:
<files ~ "\.inc$"> Order allow,deny Deny from all </files>
O código acima diz ao servidor para rejeitar todos os pedidos feito pelo utilizador, para qualquer ficheiro que termine em .inc. Podes facilmente modificar o .htaccess acima para a tua própria estrutura.
FEV











Sobre o Autor
Carlos Gonçalves é um Freelancer com bastante experiência em linguagens de programação e webdesign. Vocacionado para as novas tecnologias, aposta na qualidade dos serviços, atendimento rápido e sempre disponível para melhor satisfazer os seus clientes. Autor do site cgoncalves.com