| |
LISTA PHP |
Outra: Não diga que isso é falha de segurança do PHP pois não é! Ou a falha é On 22 mar, 12:01, "Bruno Gross" <brunogr...@gmail.com> wrote: > Quanto ao Path aparecer no topo do site, não vejo grandes problemas > Muito estranho isso... > On 22 mar, 11:06, "leogois" <camposgue...@gmail.com> wrote: > > Pessoal, > > Coloquei um site com linguagem PHP. Logo, me deparei com um grande > > Para esclarecer melhor como contruir meu site, destado o seguinte: > > Aparece no browser: Ex.:http://www.meusite.com/index.php?page=artigos > > Coloquei um código em php para que todas as páginas internas abram no > > Minha pergunta é: o que pode está acontendo com o meu site e o que > > "Um método seguro de incluir arquivos seria como o abaixo: > > <?php > > echo 'Naughty Naughty, very Naughty.'; /rodapé do site} > > ?> > > Então o link: index.php?page=about (assumiria about.php dentro do > > Se você sabe que o arquivo que será incluído não conte código PHP e > > Usando um diretório separado para incluir arquivos, pode ser ótimo > > Algumas pessoas nomeiam os arquivos que serão incluídos com a extensão > > Arquivos que serão incluídos devem ter a extensão .php, pode ser > > Você deve mantê-los fora do diretório root por uma pequena questão
sua ou é da hospedagem...
> Mas ressalto que se sua página sumiu e vc toma esses cuidados que vc
> citou, liga pro suporte de sua hospedagem e xinga, desde a faxineira
> deles até o Papa!
> nisso. Soluções como a sua não são a galinha dos ovos de ouro a
> respeito de segurança. Ainda fico com a opção de problemas com a
> hospedagem. Arquivos não somem dessa forma, nem código, nem porcaria
> nenhuma!
> > problema: simplesmente um belo dia fui acessar o site e o código fonte
> > da página index havia sumido. Isso já ocorreu por três vezes. Imagino
> > que, por alguma falha de segurança, alguém está provocando isso.
> > arquivo index: index.php
> > páginas internas: nome.php
> > meio do site, mantendo o resto co conteúdo intacto: topo, menu e
> > rodapé. Coloque o seguinte código no local onde inserir o conteúdo do
> > centro do site: <?php if(isset($page)) { include
> > ("$page.php"); }else{ include ("principal.php"); } ?>
> > fazer para solucionar este problema?
> > De acordo uma pesquisa que fiz, encontrei o código abaixo que tarvez
> > contenha a solução. Mas, como inserir em minha página substituindo o
> > código atual?
> > //cabeçalho do site
> > $page = $_GET['page'];
> > //para ter certeza que $page é alfanumérico.
> > if(eregi("^[a-z0-9\-_\.]+$", $page, $regs)) {
> > $dir = "includes/"; //pode ser branco
> > $ext = ".php"; //.php, .html, .txt, whatever
> > if(file_exists($dir . $page . $ext)) {
> > include($dir . $page . $ext); //ou outro tipo de extensão se
> > não for necessariamente um arquivo .php
> > } else {
> > echo '404 - Not Found'; //ou algo similar
> > }} else {
> > diretório 'includes').
> > sim apenas texto, então pode ser melhor usar readfile() ao invés de
> > include()/require(), pois ambos irão executar qualquer código PHP que
> > eles encontrarem algo que o readifle não irá.
> > como uma forma de parar urls do tipo: "includes/http://blah.com/
> > lala.txt" que não irá funcionar. Isso não é realmente necessário se um
> > utilizar um ereg como filtro nas urls.
> > '.inc', isso é muito perigoso, pois .'inc' não é interpretado como um
> > código PHP pelo Web server e será visualizável no navegador como um
> > texto na pagina. Isso parece algo banal, mas infelizmente muitos usam
> > arquivos do tipo 'config.inc' que contem senhas de banco de dados etc,
> > algo que torna o sistema muito inseguro...
> > exemplo.inc.php se você realmente quer que o nome contenha '.inc',
> > algo que eu acho desnecessário.
> > adicional de segurança."