[FUGSPBR] problema de seguranca!!

Marcos Machado listas em istf.com.br
Qua Jul 14 10:31:23 BRT 2004


Martin, acho que nesse caso só remover o register_globals não 
resolveria. O que tá sendo feito é o include de um arquivo remoto, 
localizado no endereço:

http://teranova.fr/2003/lila.jpg

A variável path é legítima dentro do index.php, só que o include remoto 
traz para dentro do index.php o arquilo lila.jpg que, a despeito da 
extensão, deve ser um outro script php com um conteúdo semelhante a:

<? system($cmd); ?>

Se você remover o register_globals e o invasor adicionar um 
$cmd=$_REQUEST['cmd'] no início do seu (dele) lila.jpg, o system 
continuará funcionando.

O que você deve fazer é impedir o include remoto. O mais seguro, do meu 
ponto de vista, é relacionar todas as páginas do site que podem ser 
incluídas pelo index.php e usar um ninho de IFs para associar um 
parâmetro da variável "$path" a um determinado arquivo. Exemplo:

if($path=="2") include('/path/www/cadastro.php');

Espero ter ajudado.

-- 
[]s, Marcos Machado
Analista de Segurança
InfoSecurity (www.istf.com.br)

Mail: mmachado em istf.com.br
Fone: (21) 8111-2011
ICQ : 188-288



Fernando Costa de Almeida wrote:

 >  Essa eh uma falha classica de programacao em php, e ate foi explicada
 > em uma edicao da Revista Hacker (nao me lembro qual edicao)..
 >
 >  Retirando register_globals resolveria o seu problema, mas de qq modo eh
 > um erro de programacao.
 >
 > _______________________________________
 > ALMEIDA, Fernando Costa de
 > Computeasy Informática
 > www.computeasy.com.br
 > BSD USER BSD050945
 > ICQ 72293951

_______________________________________________________________
Para enviar um novo email para a lista: fugspbr em fugspbr.org
Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/



Mais detalhes sobre a lista de discussão freebsd