Andei procurando por um bom tempo uma solução segura para utilizar includes e cheguei a conclusão que o melhor para mim seria usar o script abaixo:
<?php
$de = $_GET['de'];
if (!isset($de))
include("paginas/principal.php");
else if(ereg("/",$de))
include("forbidden.php");
else {
if (file_exists("paginas/$de.php"))
include_once("paginas/$de.php");
else include("notfound.php");
}
?>
Obs: Se você for utilizar esse script no ruwindows lembre-se de trocar a / pela \, já que o padrão do endereço de diretórios no ruwindows é diferente.
Então... o que ele faz é ver se a variável $de está setada, se não ele da include em principal.php, caso sim ele verifica se na variável $de contém alguma /, mas porque verificar isso? Isso pode ser útil para que outras pessoas não vejam áreas do site restritas à você, com essa verificação se a pessoa tentar entrar por exemplo em suapagina.php?de=../../../../etc/texto ele não tentará dá include em /etc/texto.php e sim em forbidden.php, caso não tenha / ele irá verificar se o arquivo exite, caso sim ele irá da include no arquivo e se não ele irá da include em notfound.php, veja que estou usando um include_once que faz com que a página seja incluida apenas uma vez, pode ser útil caso por exemplo alguém desse acidentalmente um include na própria página, que então dá infinitos includes.
Se alguém vê ainda alguma falha de segurança no script acima por favor me informe que ficarei grato, meu email é henriquevicente@br.inter.net.
Sistema De Include Seguro.
Started By
Henrique Vicente
, 21/06/2003, 01:58
4 replies to this topic
#1 Henrique Vicente
Posted 21/06/2003, 01:58
#2
Posted 12/07/2003, 06:12
?????????/ não entendi isso cara.. como poso usalo na minha pagina tipo... coloquele para tres links do menu
inicial.html
contatos.html
servicos.html
inicial.html
contatos.html
servicos.html
...
#3
Posted 14/07/2003, 01:39
Quer um include seguro?
faca:
Que vai incluir uma pagina de modo seguro.
Veja oq eh Include();
E veja oq eh Estrutura de controle if () { }
[]'s
faca:
<?php include("PaginaQueVoceQuiser.ExtensaoQueVoceQuiser"); ?>
Que vai incluir uma pagina de modo seguro.
Veja oq eh Include();
E veja oq eh Estrutura de controle if () { }
[]'s
Renan Gonçalves
renan.saddam@gmail.com
(WebSite / Gmail / orkut / Windows Live! Messenger)
"Aquele que se define se limita."
#4
Posted 15/07/2003, 04:44
Com a ajuda de quase metade do fórum ( ) eu montei um sistema legal de includes que ainda mostra o link, caminho e o nome da seção, quando tiver tempo posto ae :ok:
-++==++-
#5 Henrique Vicente
Posted 15/07/2003, 15:10
Newbie foi mal não ter respondido mas no teu caso acho que não precisaria, já que é pouca quantidades de páginas seria mais seguro você utilizar como deve está utilizando agora (o link normal para a página HTML).
Renan_Gonçalves eu não utilizo isso porque, como eu creio, vários pessoas(incluindo eu) precisam de uma solução simples para não ter que fazer um script enorme e que seja dificil de ser elaborado porque possuem muitas páginas se você sabe alguma outra solução mais segura para quem possui milhares de páginas diga Infelizmente não tenho tempo para ver isso :/
Renan_Gonçalves eu não utilizo isso porque, como eu creio, vários pessoas(incluindo eu) precisam de uma solução simples para não ter que fazer um script enorme e que seja dificil de ser elaborado porque possuem muitas páginas se você sabe alguma outra solução mais segura para quem possui milhares de páginas diga Infelizmente não tenho tempo para ver isso :/
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)