Mensagem sobre o tópico
falhas de segurança em PHP (index sumindo)
Received: by 10.35.97.17 with SMTP id z17mr155399pyl.1174575689989;
Thu, 22 Mar 2007 08:01:29 -0700 (PDT)
Received: by e65g2000hsc.googlegroups.com with HTTP;
Thu, 22 Mar 2007 15:01:28 +0000 (UTC)
X-IP: 200.198.116.81
From: "Bruno Gross" <brunogr...@gmail.com>
To: "LISTA PHP" <listaphp@googlegroups.com>
Subject: =?iso-8859-1?q?Re:_falhas_de_seguran=E7a_em_PHP_(index_sumindo)?=
Date: Thu, 22 Mar 2007 15:01:28 -0000
Message-ID: <1174575688.711373.200580@e65g2000hsc.googlegroups.com>
In-Reply-To: <1174572395.021431.180140@y80g2000hsf.googlegroups.com>
References: <1174572395.021431.180140@y80g2000hsf.googlegroups.com>
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pt-BR; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3,gzip(gfe),gzip(gfe)
X-HTTP-Via: 1.1 S09RJ
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
N=E3o entendi bem tudo que vc escreveu, se vale de dica ou de d=FAvida.
Mas ressalto que se sua p=E1gina sumiu e vc toma esses cuidados que vc
citou, liga pro suporte de sua hospedagem e xinga, desde a faxineira
deles at=E9 o Papa!
Quanto ao Path aparecer no topo do site, n=E3o vejo grandes problemas
nisso. Solu=E7=F5es como a sua n=E3o s=E3o a galinha dos ovos de ouro a
respeito de seguran=E7a. Ainda fico com a op=E7=E3o de problemas com a
hospedagem. Arquivos n=E3o somem dessa forma, nem c=F3digo, 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=F3digo fonte
> da p=E1gina index havia sumido. Isso j=E1 ocorreu por tr=EAs vezes. Imagi=
no
> que, por alguma falha de seguran=E7a, algu=E9m est=E1 provocando isso.
>
> Para esclarecer melhor como contruir meu site, destado o seguinte:
> arquivo index: index.php
> p=E1ginas internas: nome.php
>
> Aparece no browser: Ex.:http://www.meusite.com/index.php?page=3Dartigos
>
> Coloquei um c=F3digo em php para que todas as p=E1ginas internas abram no
> meio do site, mantendo o resto co conte=FAdo intacto: topo, menu e
> rodap=E9. Coloque o seguinte c=F3digo no local onde inserir o conte=FAdo =
do
> centro do site: <?php if(isset($page)) { include
> ("$page.php"); }else{ include ("principal.php"); } ?>
>
> Minha pergunta =E9: o que pode est=E1 acontendo com o meu site e o que
> fazer para solucionar este problema?
> De acordo uma pesquisa que fiz, encontrei o c=F3digo abaixo que tarvez
> contenha a solu=E7=E3o. Mas, como inserir em minha p=E1gina substituindo o
> c=F3digo atual?
>
> "Um m=E9todo seguro de incluir arquivos seria como o abaixo:
>
> <?php
> //cabe=E7alho do site
> $page =3D $_GET['page'];
> //para ter certeza que $page =E9 alfanum=E9rico.
> if(eregi("^[a-z0-9\-_\.]+$", $page, $regs)) {
> $dir =3D "includes/"; //pode ser branco
> $ext =3D ".php"; //.php, .html, .txt, whatever
> if(file_exists($dir . $page . $ext)) {
> include($dir . $page . $ext); //ou outro tipo de extens=E3o se
> n=E3o for necessariamente um arquivo .php
> } else {
> echo '404 - Not Found'; //ou algo similar
> }} else {
>
> echo 'Naughty Naughty, very Naughty.'; /rodap=E9 do site}
>
> ?>
>
> Ent=E3o o link: index.php?page=3Dabout (assumiria about.php dentro do
> diret=F3rio 'includes').
>
> Se voc=EA sabe que o arquivo que ser=E1 inclu=EDdo n=E3o conte c=F3digo P=
HP e
> sim apenas texto, ent=E3o pode ser melhor usar readfile() ao inv=E9s de
> include()/require(), pois ambos ir=E3o executar qualquer c=F3digo PHP que
> eles encontrarem algo que o readifle n=E3o ir=E1.
>
> Usando um diret=F3rio separado para incluir arquivos, pode ser =F3timo
> como uma forma de parar urls do tipo: "includes/http://blah.com/
> lala.txt" que n=E3o ir=E1 funcionar. Isso n=E3o =E9 realmente necess=E1ri=
o se um
> utilizar um ereg como filtro nas urls.
>
> Algumas pessoas nomeiam os arquivos que ser=E3o inclu=EDdos com a extens=
=E3o
> '.inc', isso =E9 muito perigoso, pois .'inc' n=E3o =E9 interpretado como =
um
> c=F3digo PHP pelo Web server e ser=E1 visualiz=E1vel 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=E3o inclu=EDdos devem ter a extens=E3o .php, pode ser
> exemplo.inc.php se voc=EA realmente quer que o nome contenha '.inc',
> algo que eu acho desnecess=E1rio.
>
> Voc=EA deve mant=EA-los fora do diret=F3rio root por uma pequena quest=E3o
> adicional de seguran=E7a."