Ir para a pagina inicial dos Grupos do Google    LISTA PHP
Re: falhas de segurança em PHP (index sumindo)

Bruno Gross <brunogr...@gmail.com>

Outra:

Não diga que isso é falha de segurança do PHP pois não é! Ou a falha é
sua ou é da hospedagem...

On 22 mar, 12:01, "Bruno Gross" <brunogr...@gmail.com> wrote:

> Não entendi bem tudo que vc escreveu, se vale de dica ou de dúvida.
> 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!

> Quanto ao Path aparecer no topo do site, não vejo grandes problemas
> 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!

> 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
> > 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.

> > Para esclarecer melhor como contruir meu site, destado o seguinte:
> >  arquivo index: index.php
> > páginas internas: nome.php

> > 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
> > 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"); } ?>

> > Minha pergunta é: o que pode está acontendo com o meu site e o que
> > 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?

> > "Um método seguro de incluir arquivos seria como o abaixo:

> > <?php
> > //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 {

> >     echo 'Naughty Naughty, very Naughty.'; /rodapé do site}

> > ?>

> > Então o link: index.php?page=about (assumiria about.php dentro do
> > diretório 'includes').

> > Se você sabe que o arquivo que será incluído não conte código PHP e
> > 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á.

> > Usando um diretório separado para incluir arquivos, pode ser ótimo
> > 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.

> > Algumas pessoas nomeiam os arquivos que serão incluídos com a extensão
> > '.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...

> > Arquivos que serão incluídos devem ter a extensão .php, pode ser
> > exemplo.inc.php se você realmente quer que o nome contenha '.inc',
> > algo que eu acho desnecessário.

> > Você deve mantê-los fora do diretório root por uma pequena questão
> > adicional de segurança."