Hola gente..
Mi pregunta es la siguiente:
Supongamos que desde mi web, quiero que me DESCARGUEN, un archivo .PHP... no que se "ejecute"... o sea.. no quiero ABRIR un archivo.php, sino, DESCARGARLO..
Como hago???
Un link del tipo:
<a href="index.php">click aca</a>, lo que hace, es ABRIR esa web.. pero yo quiero que el usuario la DESCARGUE.. a su pc..
COmo hago?
O como hago para poder VER ese codigo en el browser.. o sea. que me VEAN el codigo PHP que tengo dentro del archivo.. que no se EJECUTE el php en su servidor APACHE, sino que se muestre como texto.. como hago?
y que se guarde con extension PHP ???? mm..medio imposible
por que no lo "renombras" a TXT y fuerzas la descarga ;)
EDIT: o sino, lee tu propio archivo PHP y "echa" (muestra) el codigo en si :E
Amigo. Encontre una vulnerabilidad en una web... Por el metodo GET, le pasan el nombre de una imagen a ejecutar.. a mostrar..
Yo logro hacer que se direccione a el index.php...
Pero quiero DESCARGARLO... no ABRIR el index.php
:)
No es para mi web.. es obvio que quiero "valeme" de una vulnerabilidad..
No, por mucho que puedas cambiar el contenido de la propiedad src de la etiqueta img no significa que puedas bajar phps. De hecho no lo clasificaria como vulnerabilidad grave.
A menos que no sea asi, y que utilicen un metodo estupido para mostrar imagenes, en todo caso cuentanos mas :D
Puedo escribir en el codigo fuente, un <script>xxxxxxxxxxxxxx</script>
El unico problemita, es que al poner un ' o ", le agrega una \ antes...
nada mas...
Algun codigo javascript para mostrarme el contenido del archivo?? o algo?? tengo acceso a escribir LO QUE QUIERA en el codigo fuente...
Nada, modificando el html no llegaras a ningun sitio, javascript es del lado del cliente, no lo olvides ;)
SIgue investigando, si tienen ese fallo quizas haya dejado pasar alguno de mas importancia :D
Y NO HAY NINGUN TAG DE HTML!!!?!?!?!?!?
Ningun tag de HTML que me FORCE la descarga de un archivo?? Ningun codigo fuente de nada??? imposible!
Miren:
http://geeks.ms/blogs/sergiotarrillo/archive/2007/03/16/11769.aspx
Ahí utilizan algo de: http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1
Miren:
http://www.mcanam.com/articulos/PHP.php?id=9
Ni un codigo html que llame a un archivo .php de mi servidor, y lo ejecute en el sullo? :) nada por el estilo???
Tiene que haber algo para colocar en algun lado, por ejemplo, en el header, o algo... que me OBLIGUE a descargar el archivo... no puede ser que no!!!....
Estoy en contra total de aprovechar vulnerabilidades para afectar, reportala al webmaster.
Para que descargue un archivo .php tienes que forzar la descargar desde otro php.
El servidor tiene configurada las extensiones "que son paginas" php html htm etc puedes cambiarlas y configuras el archivo a la que tu quieras.
Es por eso que no puedes descargar <a href="pagina.php">Descarga el PHP</a>
PERO puedes meter un shell si tienes un bug RFI http://es.wikipedia.org/wiki/Remote_File_Inclusion
Y bueno tantas cosas que hay en la vida :rolleyes: :rolleyes: :rolleyes: :rolleyes:
Y ya que estamos en este tema...
En un include() de PHP, puedo hacer una COMA (,) para incluir 2 o mas archivos?
algo como:
include($uno, $dos)
??
mejor llamas a un archivo y el arcvhivo que llamas haces 2 includes con los archivos que quieres llamar.
Pero como esto se esta tornando de html a php nos vamos a php ;-) ;-) y de ahi seguro de mandan a hacking nivel web :xD.
Fooo.. todo bien con ustedes chicos, pero siempre lo mismo, responden cosas que no tienen nada que ver :P
Si yo pregunto si se pueden "incluir" 2 archivos, con 1 COMA (,), es porque quiero saber, SI SE PUEDEN INCLUIR 2 ARCHIVOS CON 1 COMA (,)
:)
No quiero otras soluciones...
Ahora tengo que explicar, que otra web, con otra vulnerabilidad, hace lo siguiente:
include(c_$_GET['xxx'].php);
O sea,.. si miran bien, le agrega un "C_", antes al nombre del archivo..
Si yo pudiese poner una coma, y en el GET, le envio: xxxxx.php,miweb/elarchivo
abriría:
include:(C_xxxxx.php,miweb/enarchivo.php);
Cuando se habla de vulnerabilidades, no hay que dar OTRAS SOLUCIONES.. (en caso de hablar de ataques)..
No lo digo para que se enojen chicos.. sino que, siempre pasa lo mismo.. y es muy aburrido tener que detallar todo..
Si dijeran:
"NO, no se puede incluir con una COMA a 2 archivos, pero podrias hacer: xxxxx"
Esa sería una respuesta GENIAL ;)
Pero no un:
Citarmejor llamas a un archivo y el arcvhivo que llamas haces 2 includes con los archivos que quieres llamar.
Con todo el respeto, y no se enojen :)
"NO, no se puede incluir con una COMA a 2 archivos, pero podrias hacer: mejor llamas a un archivo y el arcvhivo que llamas haces 2 includes con los archivos que quieres llamar"
Asi mejor?
Pero, querido.. no es en mi web.. Y como les explique, el usuario le agrega una letra "C" antes al archivo..
Igualmente, estoy totalmente enojado con HTML :P..
Como puede ser que no exista algo en el tag, que force la descarga :/
Hagamos una para YA :xD
El problema es que no entiendes lo que es html. En serio, y noe s por ofender, pero es que no tiene nada que ver asi, es un lenguaje grafico, investiga y veras
pero.. <a href="" FORZER></a>
:)
Y bien, eso es un link, por que no entras al link directamente? No, revisate esos conceptos basicos ;)
Poque si entro al link...... abrira la web .php
Y si le das al link href? Tachaan lo mismo :P
Primero, para forzar una descarga, es imposible por HTML, se hace por las cabeceras HTTP
Segundo, ES IMPOSIBLE DESCARGAR LITERALMENTE UN ARCHIVO PHP POR EL PROTOCOLO HTTP DESDE UN SERVIDOR QUE INTERPRESTA PAGINAS PHP
Aver si entendes, trata de hacer un rfi o busca algo que sea ftp (:huh:) o lo que sea, pero si un servidor esta puesto que lea e interprete archivos PHP a HTML, nunca dara el PHP mismo al cliente.
Es como si quisieras ver el codigo binario de un archivo ejecutable simplemente haciendole doble click (:huh: ejemplo pedorro pero es para que entiendas)
Si leeiste el link de la wiki que te di , especifica como prevenir el ataque entonces si te ponen la letra c antes del archivo y la extensión posiblemente el llamado sea
DIRECTORIO/C%VARIABLE%.php con eso previenen un ataque y entonces no entiendo la vulnerabilidad.
Respues a tu pregunta global No se puede hacer lo que quieres.
Creo que deberiaqs seguir estudiando HTML para entender los conceptos basicos y luego estudiar sobre los sitios dinamicos sobre como funciona un server y esperemos que el ofendido no seas tu :P
Skeletron, no cuesta mucho probar las cosas en localhost.
Prueba lo de incluir 2 archivos y ejecutalo en tú servidor, y metele un byte nulo para escapar de la extensión... De la c no se me ocurre como escapar :s
ponele una diagonal xD
si dices que hace
include('c_.'$_GET['xxx'].'.php);
a ver si funciona, no estoy muy seguro =\
a modo que quede asi
include('c_/../index.php%00.'.php');
pero seguro te da error el hacer el unclide =\
Da error, porque buscará la carpeta C_
:/
Y si intentas algo parecido a esto:
www.ejemplo.com/index.php?id=ejmplo');include('tu/shell.php');?>/*
Se me ha ocurrido así de bote pronto, después de llevar todo el día estudiando para unos exámenes y estoy un poco :rolleyes: :rolleyes:, así que seguramente sea una burrada.
Ya comentais la jugada y mi burrada, :laugh: :laugh:
Saludos
Eso sería inyectar codigo PHP.. y eso no existe :/
wtf...
me pasarias la web x mp ?
quiero ver que podria pasar ?¿
El php se ejecuta en el servidor, sólo se pueden inyectar cosas que se ejecutan en el cliente
Son 2 las webs... la del include, es una web de CINE.. que digamos HOY Te aSeguro que van a pasar alguna buena peli... ;)
Y la otra.. la que puedo inyectar cualquier codigo, es una que le tengo bronca.. porque será en pocos dias, una ENEMIGA :) (competencia)
y atacar a la competencia es la solucion a tus problemas :-\
según tengo entendido no se ayuda a la gente a hacer esas cosas.
Yo no pedí ayuda a atacar... no no..
Simplemente pregunté si desde mi web puedo forzar la descarga de un archivo :)
ahh Skeletron que desmadre tienes xD
Lo que encontraste se llama XSS y se ejecuta solamente por el lado del cliente, esto quiere decir que cuando tu le solicitas ver un archivo php al servidor este te responderá con texto plano, o sea texto y nada mas que texto, el explorador toma ese texto y lo transforma en una tabla, en una imagen, en una letra y así, si modificas ese código html no pasará nada porque es tu explorador el que interpreta esas cosas y el servidor no tiene nada que ver, el solo te da el texto y ahi verá lo que hace el explorador con el.
Si quieres forzar una descarga puedes darle en el menú archivo y luego en "guardar como" y podrás guardar el archivo html que te va a generar ese php porque es lo único que lograrás obtener de un servidor.
Si tiene LFI es otro asunto pero el de descargar archivos como lo quieres hacer es imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible, imposible.
Tampoco puedes modificar el código fuente del sitio web a menos que desde un script te permita escribir sobre el, en caso contrario imaginate que si todos los sitios webs que tubieran xss se les pudiera bajar un archivo fuente de php, todo lo que está en internet sería vulnerable y no es así.
Con un xss o lo ejecutas en el explorador o te buscas otro bug pero sacar cosas del servidor no puedes no puedes no puedes no puedes no puedes no puedes no puedes no puedes no puedes.
Tema solucionado!!!!
TNks!
Cita de: Red Mx en 9 Diciembre 2009, 16:18 PM
mejor llamas a un archivo y el arcvhivo que llamas haces 2 includes con los archivos que quieres llamar.
Pero como esto se esta tornando de html a php nos vamos a php ;-) ;-) y de ahi seguro de mandan a hacking nivel web :xD.
la prefesia se cumplio :rolleyes: :rolleyes: :rolleyes:
creo que si desde que le conteste le digo no se puede y ya, no hacemos mas gran el hilo. :P